11.1 项目分析11.1.1 点阵简介led点阵屏通过led发光二极管组成,以灯珠亮灭来显示文字、图片、动画、视频等,是各部分组件都模块化的显示器件,通常由显示模块、控制系统和电源系统组成。 led点阵屏制作简单,安装方便,被广泛应用于各种公共场合,如汽车报站器、广告屏以及公告牌等。
led点阵的显示原理很简单,以8×8点阵为例,8×8点阵具有64个像素点,可以显示数字和一些比较简单的汉字,但是显示汉字最好是用16×16以上的点阵,点阵的连接关系与矩阵键盘相似,将每一行的led正极接在一起并引出接线端子,将每一列的led负极接在一起并引出,这样8×8的点阵就会有16个端口被引出, 将行端口和列端口分别接在单片机的两个端口上,就可以控制点阵了。 点阵的显示主要是利用扫描实现的,可以扫描行也可以扫描列,以行扫描为例,假设单片机在八行中任选一“行”产生高电平,其余的”行“设为低电平,那么此时对于“列“只需要在任意一列产生低电平就可以点亮这一行的任意一个或多个发光二极管,然后当“行”不停地扫描,超过人眼的反应范围时,就会显示出对应的画面。 当一个点阵以三个发光二极管(r,g,b)组成一个像素,且发光二极管的体积足够小那就形成了彩色点阵,这种点阵可以利用像素点的r,g,b三种颜色混合成任意的颜色,只要像素点足够多,那么就可以显示彩色图像。
11.1.2 8×8单色点阵结构图
**11.2 **项目过程11.2.1 项目需求利用51单片机控制8*8点阵实现0~9的显示。
11.2.2 原理图
11.2.3 源代码
/********************************************************************************************************* 头 文 件 引 用*********************************************************************************************************/#include //导入51单片机头文件#include /********************************************************************************************************* 数 据 类 型 定 义*********************************************************************************************************/#define u8 unsigned char //定义无符号字符型数据(0~255)#define u16 unsigned int //定义无符号整型数据(0~65535)u8 code tab_l[] = { 0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f } ; //扫描码u8 code tab_h[] = { 0x00, 0x00, 0x3c, 0x42, 0x42, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x7e, 0x40, 0x00, 0x00, 0x00, 0x00, 0x64, 0x52, 0x52, 0x4a, 0x44, 0x00, 0x00, 0x00, 0x44, 0x92, 0x92, 0x6c, 0x00, 0x00, 0x00, 0x18, 0x14, 0x12, 0x7e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x86, 0x8a, 0x8a, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x94, 0x92, 0x62, 0x00, 0x00, 0x00, 0x02, 0x02, 0xf2, 0x0a, 0x06, 0x00, 0x00, 0x00, 0x6c, 0x92, 0x92, 0x92, 0x6c, 0x00, 0x00, 0x00, 0x4c, 0x92, 0x92, 0x7c, 0x00, 0x00,} ; //数字码u8 picture_num ;u8 tim0_count ;/********************************************************name :delay_msfunction :毫秒级别延时函数paramater : ms:延时的ms数return :none********************************************************/void delay_ms( u16 ms ){ u8 i ; while( ms-- ) for( i=0; i<110; i++ ) ;}/********************************************************name :picturefunction :点阵扫描算法paramater :nonereturn :none********************************************************/void picture( u8 num ){ u8 i ; for( i=0 ; i<8 ; i++ ) { p3 = tab_l[ i ] ; //每一次扫描都会加入图片的 1/8 p2 = tab_h[ num*8+i ]; //取数字码 delay_ms( 1 ) ; }}/********************************************************name :tim0_irqhandlerfunction :定时器中断paramater :nonereturn :none********************************************************/void tim0_irqhandler() interrupt 1{ th0 = ( 65535-50000 )/256 ; tl0 = ( 65535-50000 )%256 ; tim0_count ++ ; if( tim0_count==20 ) { picture_num ++ ; if( picture_num==10 ) picture_num = 0 ; //图像切换上限 tim0_count = 0 ; }}/********************************************************************************************************* 主 函 数*********************************************************************************************************/void main(){ ie = 0x82 ; //开启中断与定时器中断 tmod = 0x01 ; //设定为16位定时器模式 th0 = ( 65535-50000 )/256 ; //写入定时器初值 tl0 = ( 65535-50000 )%256 ; tr0 = 1 ; //开启定时器 tim0_count = 0 ; picture_num = 0 ; while( 1 ) { picture( picture_num ) ; }}11.2.4 仿真截图
日本昭和电工宣布已完成开发下一代HAMR(热辅助磁记录)存储碟片 3.5寸机械硬盘最高可做到80TB
“00后”正在用AI抛弃同龄人
CR3215H待机电源芯片优异的负载调整率、完整的智能保护功能
一加5怎么样?一加5评测:一加5较一加3T配置、外观、拍照、续航全面升级,买不买?
LED透明屏与LED贴膜屏有何不同?
基于51单片机的LED点阵屏显示
中国电信5G共建共享项目集采:由指定5家省公司共同承担
5G重构网络体系,开启万物互联互通时代
王牌对王牌!魅族PRO6Plus与华为Mate9拍照对比 谁是真王牌?
如何避免PCB电路中的传输线效应问题
西门子携手Arm,重新诠释复杂电子系统设计能力,引领移动出行未来
1W FM发射器电路图详解
新品iPhone的消息渐渐被放了出来
虚拟现实技术将成为加强军队质量建设的有效途径
进一步提升连接器过孔处的性能?
ATM网络接口,ATM网络接口类型有哪些?
TicWatchPro4G版评测 表现可以说超出了我的想象
cx20106a工作原理_cx20106a内部电路图及应用电路
自学程序员怎样找到一份好工作
STM32简介 STM32和ARM7的关系