《单片机课程设计交通灯(完整版)》由会员分享,可在线阅读,更多相关《单片机课程设计交通灯(完整版)(25页珍藏版)》请在金锄头文库上搜索。
1、1. 引言 22.总体设计方案 32.1.总体要求32.2.设计目的33.硬件设计说明 43.1. AT89C51 简介: 43.2. LED数码管显示模块73.2.1. 七段数码显示器: 73.2.2. LED 数码管: 73. 3.复位电路83. 4.晶振电路93.5.74LS164驱动数码管电路93.5.1. 器件功能作用 93.5.2. 概述 93.5.3. 特性 103.5.4. 功能图 103.5.5. 引脚信息 113.5.6. 功能表(真值表) 133.6. 硬件原理框图: 144. 软件设计思想及流程 144.1.设计思想 144.2.设计序流程图: 164.3.效果图 17
2、5.主程序 186.参考资料 237.附录 231.引言交通在人们的日常生活中占有重要的地位,随着人们社会活动的 日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得 以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故 有明显效果。近年来随着科技的飞速发展,单片机的应用正在不断深 入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的 单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机 方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。本系统采用单片机 AT89C51 为中心器件来设计交通灯控制器,系 统实用性强、操作简单、扩展性强。本设计就是采用单
3、片机模拟十字 路口交通灯的各种状态显示以及倒计时时间。本设计系统由单片机I/O 口扩展系统、交通灯状态显示系统、LED 数码显示系统、复位电路等几大部分组成。系统除基本的交通灯功能 外,还具有倒计时等功能,能够较好的模拟实现了十字路口可能出现 的状况。2. 总体设计方案2.1.总体要求设计一个交通信号灯实时控制系统,要求具有以下功能:(1)在一个十字路口的两条主干道上,分别装上一套红、黄、绿 3种 信号灯。(2)在通常情况下,一条主干道为绿灯,另一条主干道为红灯。(3)采用定时器中断方式控制南北向、东西向交通灯,指示时间为 25s,当时间为5s时绿灯亮,为3s时黄灯点亮,25s时间到, 交通灯
4、换向。亮灯规律:东西绿灯亮25s,南北红灯亮25s东西绿灯闪5s,南北红灯亮5s东西黄灯亮2s,南北红灯亮2s东西红灯亮25s,南北绿灯亮25s东西红灯亮5s,南北绿灯闪5s东西红灯亮2s,南北黄灯亮2s2.2.设计目的(1)加强对单片机和汇编语言的认识,充分掌握和理解设计各部分 的工作原理、设计过程、选择芯片器件、模块化编程等多项知 识。(2)用单片机模拟实现具体应用,使个人设计能够真正使用。(3) 把理论知识与实践相结合,充分发挥个人能力,并在实践中锻炼。(4) 提高利用已学知识分析和解决问题的能力。(5) 提高实践动手能力。3硬件设计说明3.1. AT89C51 简介:f I o r:
5、Pi 1Fl. ?匚 Pl 3 : F ! J- CPH i F e匚 i_ I 7 IR2T C pa o 匚 (TXDj F3. 1 |bNTfl) F3 2 匚 iHTlTi 3 I:(itd)FJ.J-匚 iTlj X l耐)P. 口PJ F 匚XTAL C KTLl flNC L11Ji3*3-7汕Ji丁b1 Q31* i兰屯1 22?1 J21427I A2Er丁 423個Z721VCCF-D.Q lAOO .1 |AD I ) J P-3 J 1AC214AOJ P4.4 4ADI ip-3-a00.7f ArVPPAtE/PROa:pz.n 卜 J怦2*F2 J 1A1 3h
6、咛1何i pP2 点P2 1 “叫 J P-2 ft 4AbAT89C51AT89C51 (如 图2-10所示)是 一种带4K字节闪 烁可编程可擦除 只读存储器 (FPEROMFalshProgrammable and ErasableI Read Only Memory)的低电 压,高性能CM0S8 位微处理器,俗称 单片机。该器件采 用ATMEL高密度 非易失存储器制 造技术制造,与工 业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合 在单个芯片中,ATMEL的AT89S51是一种高效微控制器,为很多嵌入 式控制系统提供了一种灵活性咼且价廉的方案。AT89
7、C51单片VCC:供电电压。GND:接地。 P0 口: P0 口为一个 8位漏级开路双向I/O 口,每脚可吸收8TTL门电流。当P1 口的管脚 第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储 器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口 作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外 部必须被拉高。P1 口: P1 口是一个内部提供上拉电阻的8位双向I/O 口,P1 口 缓冲器能接收输出4TTL门电流。P1 口管脚写入1 后,被内部上拉为 高,可用作输入, P1 口被外部下拉为低电平时,将输出电流,这是 由于内部上拉的缘故。在FLASH编程
8、和校验时,P1 口作为第八位地 址接收。P2 口: P2 口为一个内部上拉电阻的8位双向I/O 口,P2 口缓冲 器可接收,输出4个TTL门电流,当P2 口被写T”时,其管脚被内 部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被 外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外 部程序存储器或16位地址外部数据存储器进行存取时,P2 口输出地 址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八 位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。 P2 口在FLASH编程和校验时接收高八位地址信号和控制信号。P3 口: P3 口管脚是8个带内
9、部上拉电阻的双向I/O 口,可接收 输出4个TTL门电流。当P3 口写入T”后,它们被内部上拉为高电 平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出 电流(ILL )这是由于上拉的缘故。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器 周期的高电平时当8051通电,时钟电路开始工作,在RESET引脚上 出现 24个时钟周期以上的高电平,系统即初始复位。初始化后,程 序计数器PC指向0000H, P0-P3输出口全部为高电平,堆栈指钟写入 07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后, 系统即从0000H地址开始执行程序。然而,初始复位不改变RA
10、M (包 括工作寄存器R0-R7)的状态,特殊功能寄存 器初始态特殊功能寄存 器初始态ACC00HB00HPSW00HSP07HDPH00HTH000HDPL00HTL000HIPXXX00000BTH100HIE0XX00000BTL100HTMOD00HTCON00HSCONxxxxxxxxBSBUF00HP0-P31111111BPCON0xxxxxxxB8051的初始态(4-2-2)ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用 于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程 脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率 为振荡器频率
11、的 1/6。因此它可用作对外部输出的脉冲或用于定时目 的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE 只有在执行MOVX, MOVC指令是ALE才起作用。另外,该引脚被 略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指 期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时, 这两次有效的/PSEN信号将不出现。EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器 (0000H-FFFFH),不管是否有内部程序存储器。注意加密
12、方式1时, /EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存 储器。在FLASH编程期间,此引脚也用于施加12V编程电源( VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。 该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采 用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部 时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任 何要求,但必须保证脉冲的高低电平要求的宽度。芯片擦除:整个 PEROM 阵列和三个锁定位的电擦除可通过
13、正确 的控制信号组合,并保持ALE管脚处于低电平10ms来完成。在芯 片擦操作中,代码阵列全被写“1且在任何非空存储字节被重复编程 以前,该操作必须被执行。此外,AT89S51设有稳态逻辑,可以在低到零频率的条件下静态 逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工 作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电 模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能, 直到下一个硬件复位为止。3.2.LED数码管显示模块3.2.1七段数码显示器:a厂1|_|111?1 11匚1厂|1|1I-1匚IIE!心)发光线段分段图 迪)发光线段组成的数字图形七段发光线
14、段分别用a、b、c、d、e、f、g七个小写字母表示。殳L3&cds.fg0HHHHHHL1LHHLLLL.2HHLHHLH3HHHHLLH4L.HHL.LHHHLHHLHHSHLHHHHH1HHHLLLL8HHHHHHH9HHHHLHH3.2.2LED数码管:半导体数码管又称LED数码管,是一种广泛使用的显示器件。LED有两种:共阳极型和共阴极型。(时共阳扱曬共阴极型LED优点:亮度高、字形清晰,工作电压低(1.53V)、体积小、可靠性高、寿命长,响应速度极快。共阳极段码序列号:DB0C0H,0F9H,0A4H,0B0H,99H共阴极段码序列号:3.3.复位电路复位方式有多种,DBDBDBDB92H,82H,0F8H,80H,90H,88H83H,0C6H,0A1H,86H,84H,0FFH,8CH3FH,06H,5BH,4FH,66H,6DH,7DH,07H7FH,6FH ,77H,7CH,39H,5eHU1H,71H,76hXTAL119本设计接线图如图复位电路!框图XTAL2C3RSTF F F F F F F F10uFR910k