- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]单片机第六章
第6章 MCS-51的定时/计数器 任务六 简易交通信号灯 6.1 定时/计数器结构与功能 6.2 定时/计数器相关寄存器 6.3 定时/计数器工作方式 6.4 定时/计数器的编程 6.5 定时/计数器应用 任务六 简易交通信号灯 任务目的 利用单片机的定时器,完成简易交通信号灯的程序设计,学会使用定时器的查询法编程_ 任务描述 用单片机的P0口控制6只LED,模拟东西向,南北向6只交通信号灯,当剩余时间为5S时绿灯闪亮,为3S时黄灯亮、25S时间到交通灯换向 1.电路原理图 学习板电路原理图见图6-1所示。 2.参考程序 FX BIT 00H ORG 0000H LJMP MAIN ORG 000BH ; 定时器T0中断入口地址 任务六 简易交通信号灯 LJMP SFT0 ORG 0030 H MAIN : MOV TMOD , #01H ; 设置定时器为工作方式1 MOV TL0 , #0B0H ; 设定时器初值, 定时时间50ms MOV TH0 , #3CH MOV R6 , #0 ; 赋时序初值 MOV R7 , #10 ; 定时器运行次数, 10次, 定时0.5s SETB TR0 ; 启动定时器 SETB EA ; 开中断 SETB ET0 CLR FX SJMP $ SFT0 : MOV TL0 , #0B0H ; 真正的中断服务程序 .重新设置初值,定时50ms 任务六 简易交通信号灯 MOV TH0 , #3CH DJNZ R7 , RETN ; 延时够 0.5s吗? MOV R7 , #10 JB FX , E1 ; 判断通行的方向 MOV DPTR , #TAB ; 南北通行 N1: MOV A , R6 MOVC A , @A+DPTR ; 查表, 取南北通行显示代码 MOV P0 , A ; 输出显示代码 INC R6 ; 下一个0.5s输出 CJNE R6 , #50 , RETN ; 25s显示完毕了吗 SETB FX ; 设置东西通行标志位 MOV R6 , #0 ; 赋时序初值 任务六 简易交通信号灯 RETI ; 中断返回 TAB:DB 7EH 7EH 7EH 7EH 7EH ; 南北向通行显示代码表 DB 7EH 7EH 7EH 7EH 7EH DB 7EH 7EH 7EH 7EH 7EH DB 7EH 7EH 7EH 7EH 7EH DB 7EH 7EH 7EH 7EH 7EH DB 7EH 7EH 7EH 7EH 7EH DB 7EH 7EH 7EH 7EH 7EH DB 7EH 7EH 7EH 7EH 7EH DB 7EH 7EH 7EH 7EH 7EH DB 7EH 7EH 7EH 7EH 7EH ; 绿灯闪烁 DB 7EH 7EH 7EH 7EH 7EH 任务六 简易交通信号灯 TAB1: DB 0DBH 0DBH 0DBH 0DBH 0DBH ; 东西向通行显示代码表 DB 0DBH 0DBH 0DBH 0DBH 0DBH DB 0DBH 0DBH 0DBH 0DBH 0DBH DB 0DBH 0DBH 0DBH 0DBH 0DBH DB 0DBH 0DBH 0DBH 0DBH 0DBH DB 0DBH 0DBH 0DBH 0DBH 0DBH DB 0DBH 0DBH 0DBH 0DBH 0DBH DB 0DBH 0DBH 0DBH 0DBH 0DBH ; 绿灯闪烁 END ; 汇编程序结束 3.程序仿真及烧录 把这段程序在WAV6000中编辑、汇编,用软件仿真运行、调试无误,把得到bin格式或者hex格式的日标文件,通过烧录器或者下载线,保存到单片机的程序存储器中。 任务六 简易交通信号灯 把单片机插人实验板插座里,上电运行,观察运行结果。 4.程序分析 简易交通信号灯,也是按照一定的时序点亮、熄灭信号灯,因此也可以看成是一种彩灯控制器,表6-1中列出厂交通信号灯的时序,把它编制成一个表格,按照时序查表,输出,就可以实现交通信号灯的设计。 在测量控制系统中,常常要求有实时时钟来实现定时测控或延时动作,也会要求有计数器实现对外部事件计数,例如测电机转速、频率、脉冲个数等。在单片机应用系统中,实现定时/计数,主要有软件延时和可编程定时/计数器2种方法。表6-2 (1)软件定时,让机器执行一个程序段,这个程序段本身没有具体的执行日的,通过正确的挑选指令和安排循环次数实现软件延时,由于执行每条指令都需要时间,执行这一段程序所需要的时间就是延时时间,这种软件定时占用CPU的执行时间,降低厂CPU的工作效率。例如前面帝节中多次用到的DE
您可能关注的文档
最近下载
- 《选择健康的生活方式》(教案及反思)-2024-2025学年人教版(2024)初中生物八年级上册.docx VIP
- 《危险驾驶罪》课件.ppt VIP
- 《综合实践项目 健康生活宣传展演》(教案及反思)-2024-2025学年人教版(2024)初中生物八年级上册.docx VIP
- 哮喘合并冠心病、高血压病例分析课件.pptx VIP
- 哮喘合并冠心病高血压病例分析课件.pptx VIP
- 《我的幸运一天》-课件.ppt VIP
- 一元一次不等式组含参问题.pdf VIP
- 综合实践项目+健康生活宣传展演+课件-2025-2026学年人教版生物八年级上册.pptx VIP
- 我的幸运一天儿童绘本故事PPT课件.pptx VIP
- 2025年社区养老驿站服务创新与市场推广策略.docx
文档评论(0)