单片机原理及应用课程设计流水广告灯控制程序设计
- 格式:doc
- 大小:47.50 KB
- 文档页数:8
单片机原理及应用课程设计—流水广告灯控制程序设计生产实习课题化教学教案首页
课日一第11 周11月10 日组织教学:
1、上课、师生问候
2、检查学生出勤情况,并记录
3、检查教室卫生
4、强调安全文明生产
复习导入:
1.AT89S51单片机的基本组成结构。
2.AT89S51单片机的外围基本单元电路。
3.广告灯控制系统实验功能展示
入门指导:
广告灯控制程序设计
一、任务目标驱动
运用AT89S51单片机及相应硬件电路做单一广告灯的控制,使用汇编语言编写程序,使其实现相关任务要求。
硬件电路如图所示,开始时P1.0→P1.1→P1.2→P1.3→┅→P1.7→P1.6→┅→P1.0间隔1s依次点亮,之后重复循环,模拟一流水广告灯。
电路原理图:
二、任务分析
本课题主要的任务是通过单片机并行I/0口中的P1口来控制对应发光二极管的点亮与熄灭。
八个发光二极管L1-L8分别接在单片机的P1.0-P1.7接口上当其输出“0”(低电平)时,对应的发光二极管点亮。
(提问:由此判断八个发光二极管组成共阳接法还是共阴接法)
根据任务要求,八只发光二极管间隔1s点亮,以此循环往复,可做出具体数据控制表如下:
(间隔1s点亮)
根据此控制表,并结合已学过的汇编基本指令,可以将流水广告灯控制程序拆分为以下五个部分:
三、相关理论知识
本课题所涉及的相关理论知识:
1、电路设计知识
单片机外围电路分为以下几个单元电路:电源、时钟电路、清零复位电路、输入、输出电路。
40脚接+5V电源,20脚接地,18、19脚外接12MHz晶振
及两个30pF瓷片电容,9脚接上电复位电路。
P1口分别通过通过8个电阻接8只发光二极管,发光二极管采取共阳连接形式。
(提问:单片机外围电路由哪几部分构成)
2、程序设计知识
1)ORG 0000H:规定程序存放的起始地址。
(复习提问ORG指令的功能)
2)MOV A,#data :数据传送指令,给累加器A赋值。
(复习提问基本寻址方式)
3) MOV P1,A:将累加器A的内容送至P1口输出。
(复习P1口与累加器间的传送方式)
4)RL A:累加器A内容循环左移指令。
(复习提问RL指令与RLC指令的区别)
5)SJMP rel:跳转指令。
6)DJNZ Rn ,rel :减1比较指令,不为0转移,为0顺序执行。
3、延时1s子程序
DELAY: MOV R5,#4 ;
D1: MOV R6,#250
D2: MOV R7,#250
D3:NOP
NOP
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
四、任务实施
根据以上任务分析可知,首先用MOV A,#0FEH指令将一个十六进制数FEH送给累加器A,然后用MOV P1,A指令将A中的送至P1口,以驱动P1口所接8只发光二极管中对应的点亮,同时给工作寄存器R2赋值8。
然后调用1s延时程序,亮灯1s后将A的数据左移一位,用RL A实现,并送P1口输出。
并用R2进行计数。
最后执行SJMP跳转指令,程序无条件循环。
按以上分析过程编写流程图及汇编源程序:
流程图:
汇编源程序:
ORG 0000H
START: MOV R2,#8
MOV A,#0FEH ;赋亮灯数据初值
LOOP: MOV P1,A ;将亮灯数据送至P1口
LCALL DELAY ;调用延时子程序
RL A ;A中内容循环左移
DJNZ R2,LOOP ;判断是否移动8次
SJMP START
DELAY: MOV R5,#20 ;延时子程序
D1: MOV R6,#20
D2: MOV R7,#248
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
END
五、PROTEUS仿真测试
根据流水灯的电路原理图,运用PROTEUS仿真软件进行仿真测试。
操作步骤如下:
1.绘制电原理图。
2.运用WAVE仿真软件编写程序并生成“流水广告灯.HEX”文件。
3.将“流水广告灯.HEX”文件送入仿真AT89C51单片机中。
4.通过PROTEUS仿真演示,观察编程的正确性,并随时修改、完善。
PROTEUS仿真演示如下图所示:
六.硬件连接与实物观察
PROTEUS仿真完成后,将单片机硬件系统板进行正确的导线连接,将生成的正确“流水广告灯.HEX”文件烧入至单片机中,进行现象观察。
系统板上硬件连线:
把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应着L8。
巡回指导:1.流水广告灯控制硬件接线。
2.流水广告灯控制程序设计。
3.流水广告灯控制程序分析、修改。
4.实验箱的基本操作,程序的基本调试。
结束指导:在本课日的教学过程中,采取任务驱动的一体化教学方法,对用单片机进行流水广告灯控制的程序编写进行了讲授。
通过学习,学生基本
掌握了用单片机进行程序设计和编写的基本方法,初步取得了较好的
效果。