200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 8*8led矩阵的滚动广告幕的c语言程序 基于89C51单片机的8#215;8点阵LED字符显示器的设计...

8*8led矩阵的滚动广告幕的c语言程序 基于89C51单片机的8#215;8点阵LED字符显示器的设计...

时间:2023-09-20 15:23:09

相关推荐

8*8led矩阵的滚动广告幕的c语言程序 基于89C51单片机的8#215;8点阵LED字符显示器的设计...

8×8点阵LED字符显示器的设计能显示“电子技校欢迎你”七个文字。

显示方式可由K1、K2、K3、K4选择,K1为逐字显示,K2为向上滚动显示,K3为向左滚动显示,K4为向右滚动显示。

本设计很适合初学者学习用。(本程序经验证逐字,向上,向右,向左均可运行,向下运行可视性较差)

一、系统硬件的设计

1、共阳数码显示管点阵:

MLG-132088。该数码点阵是共阳的,其连接方式如图1,要使点阵上Aa二极管点亮,则A为高电平,a为低电平。

其余依此类推。因第一排至第八排发光二极管的阳极是连接在一起的,因此,该点阵为共阳点阵。当然也可以理解成共阴连接方式。

2、显示方式。本设计采用逐行扫描方式,扫描字送P2口,数据送P0口。硬件电路图如图2所示。P2口接A~H,P0口接a~h。当P2口的扫描字为80H,P0口的数据为7FH时,此时第一号Aa发光二极管点亮。参看dispIay程序段,定能明白逐行扫描的妙处。

3、硬件电路介绍。采用89C51或89S51单片机来实现,相对用89S51好一些,因它有ISP功能,不须使用编程器,而只要用相关的软件,和自制的连接线,即可下载程序到单片机中,详细情况可参见《无线电》杂志、2期。P0口作数据输出口,P1键盘输入,P2作扫描字输出口。晶振采用1 2M,并设置简单的复位电路。

二、软件设计

1、总体设计思想。

软件设计的思想是:主程序进行键盘扫描,判断采用何种方式进行显示。初始状态为逐字显示。判断后进入相应的方式显示子程序。进入子程序后,设置相应的程序人13,反复调用显示子程序,并在显示过程中反复调用键盘扫描子程序进行延时,并通过判断是否退出相应的方式显示子程序,进入主程序。设计过程中,能很好地提高按键响应速度。

2、字符编码

8 X 8点阵可以看成是从上至下8个字节。每个字节8位,见图3。让图中显示为黑色的灯亮,因为该点阵为共阳点阵,因此若该灯亮,则该位为“0”;该灯不亮,则该位为“1”。所以电子技校欢迎你的编码为,从上至下:

“电”0EFH,83H,0ABH,83H,0ABh,83H,0EEH,0EOH;

“子”:083H,0f7H,0EFH,01H,0eFH,0aFH,0CFH,0EFH;

“技”:0BBH,0AOH,1BH,0AOH,95H,0BBH,35H,0AEH

“校”:0BbH,0AOH,15H,0AEH,15H,0BBH,085H,0AEH

“欢”:0FBH,0F7H,10H,5AH,0BBH,5BH,0F5H,0EEH

“迎”:77H,0A8H,0AAH,0AAH0A2H,0ABH,0BBH,40H,

“你”:0DBH,087H,20H,0BBH,081H,0AAH,0BBH。083H

3、主程序

主程序先清除运行标志,并设置运行标志(标志为逐字显示),然后调用初始化程序,为后面程序要用到的数据调入,并清零一些用到的数据单元。主程序流程图如图4所示。

主程序如下:

ORG 0000HLJMP STARTORG 0003HRETIORG 000BHRETIORG 0013HRETIORG 001BHHE TIORG 0023HRETI/主程序与中断向量入口/START:MOV 20H,#00H/主程序/SETB 00HSTART1:LCALL CLEARMENJB 00H,FUNO/20H单元00H位为“1”转相应的功能程序,为逐字显示/JB 01H,FUN1/20H单元01H位为“1”转相应的功能程序,为向上移显示/JB 02H,FUN2/20H单元02H位为“1”转相应的功能程序。为向左移显示/JB 03H,FUN3/20H单元03H位为“1”转相应的功能程序,为向右移显示/JB 04H,FUN4/20H单元04H位为“1”转相应的功能程序,为向下移显示/AJMP STAR1CLEARMEN:MOV A,#0FFH/初始化程序/MOV P1.AMOV P2.AMOV P3.AMOV P0。AMOV DPTR.#TABCLR AMOV 21H.AMOV 22H.AMOV 23H.AMOV 24H.AMOV 25H.AMOV 26H.AMOV 27H.AMOV 28h.20hMOV R3.AMOV R1.#40HMOV R2,#38H(56)CLLOOP:MOVC A,@A+DPTR/把存在ROM中的数据(即TABBLE标号处:电子技校欢迎你,共56个字节)调入RAM40H~78H中,初始化后,40H放入0EFH;41H放入83H;依此类推。/MOV@R1.AMOV A。R3INC AMOV R3.AINC R1DJNZ R2,CLLOOPRET还有逐字,向上,向下,向左,向右子程序。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。