LED点阵显示北京交通大学电气单片机课设Word格式文档下载.docx
《LED点阵显示北京交通大学电气单片机课设Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《LED点阵显示北京交通大学电气单片机课设Word格式文档下载.docx(13页珍藏版)》请在冰豆网上搜索。
![LED点阵显示北京交通大学电气单片机课设Word格式文档下载.docx](https://file1.bdocx.com/fileroot1/2023-1/9/b206c70d-80ef-43ff-8df6-bfb0b4072dc4/b206c70d-80ef-43ff-8df6-bfb0b4072dc41.gif)
课程设计考勤情况(15%):
课程设计调试情况(30%):
课程设计总结报告与答辩情况(25%):
最终评定成绩(以优、良、中、及格、不及格评定)
指导教师签字:
年月日
微机原理与接口技术课程设计任务书
学生姓名:
一、课程设计题目:
LED点阵显示
二、课程设计要求
1.根据具体设计课题的技术指标和给定条件,独立进行方案论证和电路设计,要求概念清楚、方案合理、方法正确、步骤完整;
2.查阅有关参考资料和手册,并能正确选择有关元器件和参数,对设计方案进行仿真;
3.完成预习报告,报告中要有设计方案,设计电路图,还要有仿真结果;
4.进实验室进行电路调试,边调试边修正方案;
5.撰写课程设计报告——最终的电路图、调试过程中遇到的问题和解决问题的方法。
三、进度安排
1.时间安排
序号
内容
学时安排(天)
1
方案论证和系统设计
2
完成电路仿真,写预习报告
3
电路调试
4
写设计总结报告与答辩
合计
5
设计调试地点:
电气楼410
2.执行要求
微机原理与接口技术课程成绩优秀的可以自拟题目,其余的同学都是指定题目。
,每组不得超过2人,要求学生在教师的指导下,独力完成所设计的详细电路(包括计算和器件选型)。
严禁抄袭,严禁两篇设计报告雷同
摘要:
报告首先说明了实验要求,分析硬件电路、元件,画出流程图,由程序仿真验证其正确性,按具体电路调试出想要的结果。
关键字:
LED点阵显示,汇编程序,调试
第一章、系统方案设计……………………………………………1
第二章、仿真……………………………………………3
第三章、电路调试……………………………………………5
第四章、体会与建议……………………………………………8
第六章、参考文献……………………………………………9
第七章、附录……………………………………………9
第一章系统方案设计
一、实验目的应用51控制器加驱动,控制点阵显示模块显示数字与文字,显示内容分稳定
二、实验原理根据提供I/O地址、功能,由不同I/O口分别提供字形代码送行,列扫描信号送列扫描行,凡字形代码位“1”、列扫描信号“0”该点点亮,否则熄灭,通过逐列扫描,循环点亮字形或曲线。
三、相关电路元件及连线点阵显示模块列输入线接至内部LED阴极端,行输入线接至内部LED阳极端,若阳极输入为高电平,阴极输入为低电平,则该LED灯点亮。
四、流程图及程序
我们编程实现在8*8LED点阵上实现滚动循环显示“电气佳辰”字样,若任意按下三个按键则不显示汉字显示字母“L”,在继续判断按下的是三个键中的哪一个,若是中间按键则字母顺时针翻转九十度,若是右边按键,则字母右移,若是左边按键,则字母左移一位,若持续一段时间没按按键,则恢复滚动显示汉字。
具体流程如下:
第二章仿真
PROTEUS中仿真图如下:
第三章调试
最终程序如下:
ORG0000H
LJMPDQ
ORG000BH
LJMPLOOP
ORG0100H
DQ:
MOVSP,#69H
MOVR2,#00H
MOVR3,#00H
RUN:
MOVA,R3
MOVR0,A
MOVR1,#7FH
DIS:
MOVA,R0
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP2,A
MOVP0,R1
LCALLDELAY1
MOVA,P3
CJNEA,#0FFH,KEY
INCR0
MOVA,R1
RRA
MOVR1,A
CJNER1,#7FH,MAO
LJMPRUN
MAO:
INCR2
CJNER2,#100,DIS
MOVR2,#00H
INCR3
CJNER3,#45,RUN
LJMPDQ
MAIN:
MOVIE,#82H
MOVTMOD,#01H
MOVTH0,#3CH
MOVTL0,#0B0H
SETBTR0
MOVR4,#80
MOV42H,#00H
MOV40H,#01H
MOV41H,#08H
RR:
MOVR1,#7FH
MOVR0,41H
MOVA,R0
MOVR2,A
XL:
MOVA,40H
CJNEA,#01H,K1
MOVDPTR,#TAB1
AJMPDISS
K1:
CJNEA,#02H,K2
MOVDPTR,#TAB2
AJMPDISS
K2:
CJNEA,#03H,K3
MOVDPTR,#TAB3
K3:
MOVDPTR,#TAB4
DISS:
MOVA,R2
MOVCA,@A+DPTR
MOVP1,A
MOVP0,R1
MOVA,42H
CJNEA,#00H,LPOO
MOVA,P3
JNBACC.0,K1
JNBACC.1,K2
JNBACC.2,K3
CJNER2,#16,XL
AJMPRR
KEY:
LCALLDELAY2
CJNEA,#0FFH,LPO
LJMPDIS
LPO:
LJMPMAIN
LPOO:
LJMPBJTU
KY1:
JBCACC.0,H1
KEY1:
JNBACC.0,KEY1
MOVA,41H
DECA
MOV41H,A
H1:
AJMPRR
KY2:
JBCACC.1,FH2
PD2:
JNBACC.1,PD2
INCA
MOV40H,A
CJNEA,#05H,FH2
FH2:
KY3:
JBCACC.2,FH3
PD3:
JNBACC.2,PD3
FH3:
LOOP:
DJNZR4,ELS
MOV42H,#01H
ELS:
RETI
DELAY1:
MOVR6,#4
D1:
MOVR7,#0FFH
D2:
DJNZR7,D2
DJNZR6,D1
RET
DELAY2:
MOVR6,#20
D3:
D4:
DJNZR7,D4
DJNZR6,D3
TAB1:
DB08H,3EH,2AH,3EH,2AH,3EH,28H,38H,00H,00H
DB08H,078H,3CH,7AH,20H,10H,48H,78H,00H,00H
DB28H,74H,26H,0FCH,24H,7CH,2CH,0FCH,00H,00H
DB7CH,04H,3CH,04H,3EH,1AH,2AH,5AH,00H,00H
DB00H,00H,00H,00H,00H,00H,00H,00H
TAB2:
DB00H,00H,00H,10H,1CH,00H,00H,00H
TAB3:
DB00H,00H,08H,08H,18H,00H,00H,00H
TAB4:
DB00H,00H,00H,1CH,04H,00H,00H,00H
TAB5:
DB00H,00H,18H,10H,10H,00H,00H,00H
仿真成功后再实际电路中调试时遇到一些仿真时没有遇到的问题,比如滚动显示速度过快,LED灯闪烁不定,甚至一个字形不能完全显示或显示有重叠,经过延时和扫描次数的调整之后,显示正常,按键也能正常工作。
第四章心得体会与建议
通过这次微机原理与接口技术的课程设计,我在巩固了上学期所学的相关知识的同时,又学到了一些新东西。
这次课设和以前做过的其他课程课设很不一样,以前做课设都是给定题目之后我们自己设计电路实现要求的功能,相反的,这次是给定了一个具体的电路,先把电路的各部分连接、构造、作用都弄懂之后编程。
刚拿到我们的电路板时,除了对LED点阵比较陌生之外,其他的元件都比较熟悉,在查阅了一些资料之后,了解了LED点阵的工作原理,绘制电路图,搞清楚每个元件的作用和相互关系。
我们根据课设要求,复习了上学期的单片机知识,重新熟悉了汇编语句,借鉴有关LED数码显示管的显示的程序编好了LED点阵显示的程序。
编完程序之后,我们在PROTEUS软件上进行仿真,虽然第一次运行时并没有出结果,但我们经过几轮调试之后,仿真成功,接着就去实验室进行实物的调试了。
在实验室调试时,我们遇到了很多问题。
比如LED点阵滚动显示字形时,显示不稳定,亮着的LED灯闪烁不定,刚开始一直没能解决,所以周五的时候验收并没有通过。
于是,我就趁周末两天仔细研究了程序,找出显示不稳定的根本原因是因为每当扫描完一个字(即8行)时,程序就立马开始显示下个字,造成LED灯闪烁。
于是,我添加了相关语句,让一个字多显示几次之后再开始显示下个字,这样运行出的效果就很理想了。
总的来说,这次单片机的课设让我学到了很多。
更加明白了“纸上得来终觉浅,绝知此事要躬行”这句古话,程序要自己一句一句写出来到时候出问题了才知道该如何调试,遇到问题的时候要才知道静下心来仔细找原因,才能修改正确,才能收获到经验。
参考文献
[1]胡汉才,单片机原理及其接口技术,清华大学出版社,2004
附录1:
元器件清单
元件
型号(规格)
数量
芯片
AT89C51
74HC245
LED点阵
8*8WTD3088
电阻
330Ω
8
5.1KΩ
电容
15pF
10μF
晶振
6MHZ
按键