实训任务:
做单一灯的左移右移,八个发光二极管L1-L8分别接在单片机的P1.0→P1.2→P1.3┅→P1.7→P1.6→┅→P1.0亮,重复循环3次。然后左移2次,右移2次,闪烁2次(延时的时间0.2秒)。
一、实训目的和要求:
(1)熟练掌握KeilC51集成开发环境的使用方法
(2)熟悉KeilC51集成开发环境调试功能的使用和DP51PRO.NET单片机仿真器、编程器、实验仪三合一综合开发平台的使用。
(3)利用单片机的P1口作IO口,学会利用P1口作为输入和输出口。
(4)了解掌握单片机芯片的烧写方法与步骤。
(5)学会用单片机汇编语言编写程序,熟悉掌握常用指令的功能运用。
(6)掌握利用Protel99SE绘制电路原理图及PCB图。
(7)了解PCB板的制作腐蚀过程。
二、实训器材:
PC机(一台)
PCB板(一块)
520Ω电阻(八只)
10K电阻(一只)
LED发光二极管(八只)
25V10μF电容(一只)
单片机IC座(一块)
AT89C51单片机芯片(一块)
热转印机(一台)
DP51PRO.NET单片机仿真器、编程器、实验仪三合一综合开发平台(一台)
三、实训步骤:
(1)根据原理图(下图所示),用导线把单片机综合开发平台A2区的J61接口与D1区的J52接口相连。
(2)将流水灯程序编写完整并使用TKStudyICE调试运行。
(3)使用导线把A2区J61接口的P1口7个口分别与J52接口的八个LED相连。
(4)打开电源,将编写好的程序运用TKStudyICE进行全速运行,看能否实现任务要求。
(5)观察运行结果,若能实现功能,则将正确编译过的HEX文件通过EasyPRO51编程器写入MCU片内存储器,然后将烧写的芯片A2区的圆孔IC座进行最终实验结果的演示。
(6)制板。首先利用Protel99SE画好原理图,根据原理图绘制PCB图,然后将绘制好的PCB布线图打印出来,经热转印机转印,将整个布线图印至PCB板上,最后将印有布线图的PCB板投入装有三氯化铁溶液的容器内进行腐蚀,待PCB板上布线图外的铜全部后,将其取出,清洗干净。
(7)焊接。将所给元器件根据原理图一一焊至PCB板相应位置。
(8)调试。先把AT89C51芯片插入IC座,再将+5V电源加到制作好的功能板电源接口上,观察功能演示的整个过程(看能否实现任务功能)。
(流水灯控制器原理图)
四、流水灯控制器程序的主程序:
ORG0000H
SJMPSTART
ORG0030H
START:MOVA,#0FFH
MOVR0,#1CH
MOVR1,#12H
MOVR2,#12H
CLRC
LOOP1:ACALLDELAY
DJNZR0,LOOP2
SJMPLOOP4
LOOP2:MOVP1,A
RLCA
JNCLOOP3
SJMPLOOP1
LOOP3:ACALLDELAY
MOVP1,A
RRCA
JNCLOOP1
SJMPLOOP3
LOOP4:ACALLDELAY
DJNZR1,LOOP5
SJMPLOOP6
LOOP5:MOVP1,A
RRCA
JNCLOOP4
SJMPLOOP4
LOOP6:ACALLDELAY
DJNZR2,LOOP7
SJMPZY
LOOP7:MOVP1,A
RLCA
JNCLOOP6
SJMPLOOP6
ZY:ACALLDELAY
MOVA,#00H
MOVP1,A
ACALLDELAY
MOVA,#0FFH
MOVP1,A
ACALLDELAY
MOVA,#00H
MOVP1,A
ACALLDELAY
MOVA,#0FFH
MOVP1,A
SJMPSTART
DELAY:MOVR3,#20
DLY1:MOVR4,#20
DLY2:MOVR5,#248
DJNZR5,$
DJNZR4,DLY2
DJNZR3,DLY1
RET
;
END
(PCB布线图)
五、实训体会与自我评价:
本设计成品是以单片机AT89C51芯片为核心部件,实现了单一灯的左移右移重复循环3次。然后左移2次,右移2次,闪烁2次(延时0.2秒)的功能。此次设计在软件、编写程序方面花费时间太多我们上网找资料,上图书馆,尽可能多的了解流水灯控制的相关知识。通过这一周的综合实训(单片机课程设计),熟练掌握了KeilC51集成开发环境的使用方法,了解并掌握到单片机芯片的烧写方法与步骤,进一步加深了对单片机常用指令的理解与运用。能够较熟练的运用Protel99SE绘制电路原理图及PCB图,对PCB板的一般制作过程有了一定的了解。在实训过程中,使我得到了一次用专业知识、专业技能分析和解决问题、全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。
同时在老师的悉心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,单片机领域对我今后进一步学习计算机方面的知识有极大的帮助。使我们认识到课程的重要性,同时也感受到理论与实践之间的差距,使我们对单片机系统的应用有了更加深刻的认识。
http://blog.163.com/fangwei139@126/blog/static/164564449201151111041519/