一、实验目的
1、了解时间常数的计算方法。
2、了解80C51中断的工作机理、过程,掌握中断服务程序的编制。 3、掌握80C51单片机内部定时/计数器的工作方式选择,初始化程序的设置以及中断服务子程序的设计。
二、实验内容
编写模拟交通灯运行控制程序。要求红绿灯亮灯延时时间为30秒,黄灯亮灯延时时间为10秒。利用二位八段LED显示器进行时间显示。时间显示采用倒计时的方式。时间归零时信号进行切换。
三、实验要求
掌握单片机内部通用资源如中断、定时计数器、串行口及并行端口的应用。 时间的延时必须采用定时器定时中断方式进行,定时器0或定时器1可任选
一个〔默认为0〕。编程时请充分考虑定期器的时间扩展问题。
利用二位八段LED显示器进行时间显示,显示码采用串行口模式0进行输
出。显示方式及相应的程序编写请参考实验一。显示部分的详细接线原理及对应的显示码参考图15。
掌握中断系统的基本概念及使用方法。如:中断被响应所需的必要条件;一
个完整的中断响应过程;中断优先级的概念 信号灯的控制由并行口P0口输出进行快关控制。
四、实验线路图
图为交通灯控制接线示意图,除红绿黄六路交通灯外,还需要用到两个八段LED显示器,用于显示交通灯时间显示,显示码采用串行口模式0进行输出。
图为八段显示器接线原理图,具体说明了串行口工作模式0的硬件线路。由于开发板一有6个八段显示器,在实验过程中除正常计时的两个八段LED外,将其余四个灭掉。
学习文档 仅供参考
图3.1 交通灯控制接线示意图
图3.2 八段显示器接线原理图
五、程序及注释
ORG 0000H AJMP MAIN
ORG 000BH ;定时器计数器T0中断矢量
学习文档 仅供参考
AJMP T0INT
ORG 0030H MAIN:
MOV TMOD,#01H ;设定时器/计数器T0为方式1,T1为方式0 MOV SCON,#00H
MOV SP,#60H ;设堆栈指针SP为60H SETB TR0 ;启动定时器/计数器T0 SETB PT0 ;T0中断为高优先级
SETB ET0 ;允许定时器/计数器T0中断 SETB EA ;开中断
MOV TL0,#0B0H ;设T0时间常数为100ms MOV TH0,#3CH
;ORG 0100H RED:
;设置灯的初始状态
MOV R0,#30 ;红绿灯亮30秒 MOV R1,#10 ;黄灯亮10秒 LOOP1:MOV A,R0 LCALL SHOW
WAIT1:JNB 20H.0,WAIT1 ;显示管每隔1秒倒计数
DJNZ R1,WAIT1 MOV R1,#10
DEC R0 ;倒计时从30到1 CJNE R0,#00H,LOOP1
YELLOW: ;设置灯的初始状态
MOV R0,#10 ;黄灯亮10秒 MOV R1,#10
LOOP2:MOV A,R0
学习文档 仅供参考
LCALL SHOW
WAIT2:JNB 20H.0,WAIT2
DJNZ R1,WAIT2 MOV R1,#10 DEC R0
CJNE R0,#00H,LOOP2
GREEN:
MOV R0,#30 MOV R1,#10
LOOP3:MOV A,R0 LCALL SHOW
WAIT3:JNB 20H.0,WAIT3
DJNZ R1,WAIT3 MOV R1,#10 DEC R0
CJNE R0,#00H,LOOP3
LJMP MAIN
SHOW:
MOV 21H,R0 MOV 22H,R1 MOV B,#10 DIV AB
MOV DPTR,#TAB MOVC A,@A+DPTR MOV 4BH,A MOV A,B
MOVC A,@A+DPTR MOV 4AH,A
MOV 4CH,#0FFH ;前四个显示管灭 MOV 4DH,#0FFH MOV 4EH,#0FFH MOV 4FH,#0FFH MOV R1,#4AH
学习文档 仅供参考
MOV R0,#06H
TRAN:MOV A,@R1 CLR TI
MOV SBUF,A
HERE:JNB TI,HERE INC R1
DJNZ R0,TRAN ;循环六次,是的六个显示管有相应的状态 MOV R0,21H MOV R1,22H RET
TAB:
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
T0INT:
MOV TH0,#3CH MOV TL0,#0B0H
SETB TR0 RETI
六、实验心得和体会
本次实验综合性较高,囊括了半本书的知识范围。在最初写程序时,我不时参考课本266页的程序,但也遇到了很大的困难,最终是和同学讨论着完成的。一个实验有不同的的程序,用不同的思路写出来的程序不同。
学习文档 仅供参考
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- efsc.cn 版权所有 赣ICP备2024042792号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务