接口课程设计——交通灯

上传人:第*** 文档编号:33960967 上传时间:2018-02-19 格式:DOC 页数:11 大小:274.50KB
返回 下载 相关 举报
接口课程设计——交通灯_第1页
第1页 / 共11页
接口课程设计——交通灯_第2页
第2页 / 共11页
接口课程设计——交通灯_第3页
第3页 / 共11页
接口课程设计——交通灯_第4页
第4页 / 共11页
接口课程设计——交通灯_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《接口课程设计——交通灯》由会员分享,可在线阅读,更多相关《接口课程设计——交通灯(11页珍藏版)》请在金锄头文库上搜索。

1、微机接口技术课程设计一、步骤:负责系统流程图及硬件连接图设计;完成(状态 1)设计:南北绿灯通车,东西红灯;完成(状态 2)设计:南北绿灯闪烁 3 次转黄灯亮,东西仍然红灯,延时 3 秒;完成(状态 3)设计:东西绿灯通车,南北红灯;完成(状态 4)设计:东西绿灯闪烁 3 次转黄灯亮,延时 3 秒南北仍然红灯。负责后期测试及结果分析。二、设计方案以及论证整个设计以 AT89C51 单片机为核心,LED 数码管显示,晶振电路,复位电路组成。硬件模块入图 2-1。图 21 硬件模块三、硬件原理图(包括芯片的选型介绍)(1)硬件原理图功 能 介 绍 :LED 数 码 管 则 用 来 对 各 种 状

2、态 进 行 倒 计 时 的 显 示 。 设 计 中 采 用74LS164 静 态 驱 动 LED 数 码 管 , 利 用 单 片 机 的 RXD 作 为 数 据 的 输 出 端给 164 送 数 。 利 用 164 的 移 位 进 行 多 位 的 显 示 。 利 用 延 时 程 序 控 制 每 秒时 间 , 从 而 控 制 RXD 送 数 的 时 间 间 隔 。(2)AT89C511AT89C51 单片机简介AT89C51 是美国 ATMEL 公司推出的系列单片机,将多种功能的 8 位 CPU 与FPEROM(快闪可编程/擦除只读存储器)结合在一个芯片上,是一种低功耗、高性能的 CMOS 控制

3、器,为很多嵌入式控制应用提供了非常灵活而又价格适宜的方案,其性能价格比远高于同类芯片。它与 MCS-51 指令系统兼容,片内 FPEROM允许对程序存储器在线重复编程,也可用常规的 EPROM 编程器编程,可循环写入/擦除 1000 次。89C51 内含 4KB 的 FPEROM,一般的 EEPROM 的字节擦除时间和写入时间基本上均为 10ms,对于任一个实时控制系统来说,这样长的时间是不可能在线修改程序的。图 2 2 89C51 内 部 结 构 图与 EEPROM 相比较,FPEROM 大大缩短了存储内容擦除和写入的时间,为在线改写程序提供了极大的方便,而且价格也比带 EPROM87C 系

4、列单片机便宜,这更显示出了 89C 系列的优越性。它还有 128*8Bit 的片内 RAM;32 根 I/O 线;2个 16 位定时/计数器;5 个中断源;一个全双工的异步串行口;间歇和掉电工作模式;三级程序存储器加密;全静态工作,晶振工作范围:0Hz24MHz。2管 脚 功 能AT89C51 单片机为 40 引脚芯片如图 23 所示。I/O口线: P0、P1、P2、P3共四个八位P0口是三态双向口, 通称数据总线口, 因为只有该口能直接用于对外部存储器的读 写操作。P0口也用以输出外部存储器的低8位地址。由于是分时输出, 故应在外部加锁存器将此地址数据锁存, 地址锁存信号用ALE。P1口是专

5、门供用户使用的I/O口, 是准双向口。P2口是从系统扩展时作高8位地址线用。不扩展外部存储器时, P口也可P2口也是准双向口。P3口是双功能口, 该口的每一位均可独立地定义为第一I/O 功能或第二I/O功能。作为第一功能使用时操作同P1口。P3口的第二功能如表21。图 2-3 89C51 引脚图 控 制 口 线 : PSEN (片 外 取 控 制 )、 AL E( 地 址 锁 存 控 制 )、 EA (片 外 储 器 选 择 )、 RE2SET (复 位 控 制 ) ; 电 源 及 时 钟 : CCC、 VSS; XTAL 1, XTAL 2表 2-1 引脚功能表(3)74LS16474LS1

6、64 引脚定义如图 2-5 所示,其真值表如表 2-2 所示,其功能是将外部输入的串行数据转化为 8 位的并行数据输出具有锁寸功能。A、B 端为串行数据输入端,QA QH 为数据输出端,CLK 为外部时钟输入端,CLR 为清零端。 图 2-5 74LS164 引脚图表 2-2 74LS164 真值表输入 输出CLEAR CLOCK A B QA QB QHL X X X L L LH L X X QA0 QB0 QH0H H H H QAn QGnH L X L QAn QGnH X L L QAn QGn(3)LED 数码管显示电路在单片机应用系统中,数码管显示常用两种方法:静态显示和动态扫

7、描显示。所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的 I/O 接口用于笔划段字形代码。这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中 CPU 的开销小,可以提供单独锁存的 I/O 接口电路很多。所以本设计采用串并转换电路 74LS164 的静态显示电路。其电路图如图 3-4 所示。 图 3-4 数码管显示静态驱动电路四、程序流程图(包括各个子系统和子过程的程序流程)设置定时,显示初始化南北绿灯亮,东西红灯亮,延时南北黄灯闪烁,东西红灯亮,延时南北红灯亮,东西绿灯亮,延时南北红灯亮,东西黄灯闪烁,延时

8、开 始主程序框图五、程序清单,要有适当的注释SECOND1 EQU 30H ;东西路口计时寄存器SECOND2 EQU 31H ;南北路口计时寄存器DBUF EQU 40H ;显示码缓冲区 1TEMP EQU 44H ;显示码缓冲区 2LED_G1 BIT P2.1 ;东西路口绿灯LED_Y1 BIT P2.2 ;东西路口黄灯LED_R1 BIT P2.3 ;东西路口红灯LED_G2 BIT P2.4 ;南北路口绿灯LED_Y2 BIT P2.5 ;南北路口黄灯LED_R2 BIT P2.6 ;南北路口红灯ORG 0000HLJMP STARTORG 0100HSTART: MOV TMOD,

9、#01H ;置 T0 为工作方式 1MOV TH0,#3CH ;置 T0 定时初值 50msMOV TL0,#0B0HCLR TF0SETB TR0 ;启动 T0CLR AMOV P1,A ;关闭不相关的 LEDLOOP: MOV R2,#20 ;置 1S 计数初值,50ms*20=1sMOV R3,#20 ;红灯亮 20SMOV SECOND1,#25 ;东西路口计时显示初值 25sMOV SECOND2,#25 ;南北路口计时显示初值 25sLCALL DISPLAY LCALL STATE1 ;调用状态 1WAIT1: JNB TF0,WAIT1 ;查询 50ms 到否CLR TF0 M

10、OV TH0,#3CH ;回复 T0 定时初值 50msMOV TL0,#0B0HDJNZ R2,WAIT1 ;判断 1S 到否 未到继续状态 1MOV R2,#20 ;置 50MS 计数初值DEC SECOND1 ;东西路口显示时间减 1sDEC SECOND2 ;南北路口显示时间减 1sLCALL DISPLAYDJNZ R3,WAIT1 ;状态 1 维持 20sMOV R2,#5 ;置 50MS 计时初值 5*4=20MOV R3,#3 ;路灯闪 3sMOV R4,#4 ;闪烁间隔 200msMOV SECOND1,#5 ;东西路口计时显示初值 5sMOV SECOND2,#5 ;南北路

11、口计时显示初值 5sLCALL DISPLAY ;WAIT2: LCALL STATE2 ;调用状态 2JNB TF0,WAIT2 ;查询 50ms 到否CLR TF0 ;MOV TH0,#3CH ;恢复 T0 定时初值 50msMOV TL0,#0B0HDJNZ R4,WAIT2 ;判断 200MS 到否 未到继续状态 2CPL LED_G1 ;东西绿灯闪MOV R4,#4 ;闪烁间隔 200MSDJNZ R2,WAIT2 ;判 1S 到否 未到继续状态 2MOV R2,#5 ;置 50MS 计数初值DEC SECOND1 ;东西路口显示时间减 1SDEC SECOND2 ;南北路口显示时间

12、减 1SLCALL DISPLAY DJNZ R3,WAIT2 ;状态 2 维持 3SMOV R2,#20 ;置 50MS 计数初值MOV R3,#2 ;黄灯闪 2SMOV SECOND1,#2 ;东西路口计时显示初值 2SMOV SECOND2,#2 ;南北路口计时显示初值 2S LCALL DISPLAYWAIT3: LCALL STATE3 ;调用状态 3JNB TF0,WAIT3 ;查询 100MS 到否CLR TF0MOV TH0,#3CH ;恢复 T0 定时初值 100MSMOV TL0,#0B0H DJNZ R2,WAIT3 ;判断 1S 到否 未到继续状态 3MOV R2,#2

13、0 ;置 100MS 计数初值DEC SECOND1 ;东西路口显示时间减 1SDEC SECOND2 ;南北路口显示时间减 1SLCALL DISPLAY DJNZ R3,WAIT3 ;状态 3 维持 2SMOV R2,#20 ;置 50MS 计数初值MOV R3,#20 ;红灯闪 20SMOV SECOND1,#25 ;东西路口计时显示初值 25SMOV SECOND2,#25 ;南北路口计时显示初值 25SLCALL DISPLAYWAIT4: LCALL STATE4 ;调用状态 4JNB TF0,WAIT4 ;查询 100ms 到否CLR TF0 MOV TH0,#3CH ;恢复 T

14、0 定时初值 100msMOV TL0,#0B0HDJNZ R2,WAIT4 ;判断 1S 是否 未到继续状态 4MOV R2,#20 ;置 100MS 计数初值DEC SECOND1 ;东西路口显示时间减 1SDEC SECOND2 ;南北路口显示时间减 1SLCALL DISPLAY DJNZ R3,WAIT4 ;状态 4 维持 20SMOV R2,#5 ;置 50MS 计数初值 MOV R4,#4 ;红灯闪 20SMOV R3,#3 ;绿灯闪 3SMOV SECOND1,#5 ;东西路口计时显示初值 5SMOV SECOND2,#5 ;南北路口计时显示初值 5SLCALL DISPLAYWAIT5: LCALL STATE5 ;调用状态 5JNB TF0,WAIT5 ;查询

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号