单片机++实训

上传人:正** 文档编号:41475349 上传时间:2018-05-29 格式:DOC 页数:24 大小:664KB
返回 下载 相关 举报
单片机++实训_第1页
第1页 / 共24页
单片机++实训_第2页
第2页 / 共24页
单片机++实训_第3页
第3页 / 共24页
单片机++实训_第4页
第4页 / 共24页
单片机++实训_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《单片机++实训》由会员分享,可在线阅读,更多相关《单片机++实训(24页珍藏版)》请在金锄头文库上搜索。

1、目录引言2一、设计任务与要求3二、方案设计与论证3三、硬件电路设计5(1)单片机概述5(2)AT89C51 芯片介绍6(3)系统构成9(4)工作流程图10(5)交通灯控制硬件路图(PROTEL 原理图、PCB 图)12四、软件设计13(1)延时的设定13(2) 程序设计说明15五、仿真过程与仿真结果15六、安装与调试16七、结论与心得17八、参考文- 2 -献18九、致谢 18十、附录19附录 1 程序19附录 2 元件清单24交通灯设计引言今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故

2、有明显效果。1968 年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。中国车辆数量不断增加,交通控制在未来的交通管理中起着越来越重要的作用。智能交通灯的管理比重修一条马路无论在经济、交通运行速率上都有很好的效益、更加节约资源。使交管人员有更多的精力投入到管理整个

3、城市交通控制,带来更大的经济和社会效益,为创造美好的城市交通形象发挥更多的作用。一、设计任务与要求一、设计任务与要求- 3 -(1)车辆通行繁忙的十字交叉路口,设计一交通灯控制器,设东西方向通行时间为 40 秒,当剩余 3 秒时黄灯亮,南北方向通行时间为 25 秒,当剩余 3秒时黄灯亮。(2)东西、南北方向各用三个(绿、黄、红)LED 表示,并用数码管显示东西、南北方向的剩余时间。二、方案设计与论证二、方案设计与论证方案一:整个交通灯系统的设计按照实验要求,设置东西方向通行时间为 40 秒,当剩余 3 秒时黄灯亮,南北方向通行时间为 25 秒,当剩余 3 秒时黄灯亮。整个系统由四个状态组成,东

4、西南北方向通行时间一致。数码管的的 5ms 延时由软件延时实现。这样设计的缺点是不符合实际的交通灯运作,而且用软件延时也会出现较大误差,造成定时时间的不准确,浪费 CPU 资源。方案二:按照设计任务的扩展可以得到下面的设计方案 :东西、南北两干道交于一个十字路口,各干道有一组红、绿,黄和左转绿四个指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。东西方向红灯的设计时间为 40秒,绿灯为 40 秒,左转绿灯 25 秒,在同一方向的指示灯状态变换的倒数 3 秒时黄灯与当前状态的灯一起亮。南北方向红灯的设计时间为 65 秒,绿灯为 25秒,左转绿灯 15 秒,在同一方向的指示灯变换的倒

5、数 3 秒时黄灯与当前状态的灯一起亮。把具体情况分为以下 8 个状态东西方向南北方向状态各方向的显示时间十六进制红灯P1.7绿灯P1.6黄灯P1.5左转灯P1.4红灯P1.3绿灯P1.2黄灯P1.1左转灯P1.0状态一000东西 40s-4s南北 65s-29s0xB710110111状态二东西 3s-0s0x9710010111- 4 -001南北 28s-25s状态三 010东西 25s-4s南北 25s-4s0xE711100111状态四011东西 3s-0s南北 3s-0s0xC511000101状态五100东西 40s-19s南北 25s-4s0x7B01111011状态六101东西

6、 18s-15s南北 3s-0s0x7901111001状态七110东西 15s-4s南北 15s-4s0x7E01111110状态八111东西 3s-0s南北 3s-0s0x5C01011100注:0:表示有效 灯亮 1:表示无效 灯不亮表(1) 显示状态表整个交通灯系统由八个状态组成,可以用程序设计实现,在数码管的控制上可以通过不断刷新数码管的方法,利用人眼对刷新速度小于 20ms 的显示不敏感的特点,让人可以看到四个数码管同事显示的现象。用 P0 口输出要显示的数据,外接一个译码器 74HC595,这样可以减少显示部分占用的用 P0 口资源(用译码器只占用 3 个端口,不用译码器则要占用

7、 8 个端口)选择数码管输出(P1口也可以用外接译码器的方式节省端口) 。在显示上可以用软件延时,但是缺点是显示数字时可能会闪烁,延时时间比较不准确,用 CPU 消耗时钟周期指令计时(浪费资源) 。方案三:与方案二的设计思想大体相同,只是在 5ms 的延时上改用定时器延时,这样可以避免 CPU 资源的浪费而且还能精确定时,把误差减小到最小。在 P0 口和 P1 口的输出上只采用直接连接数码管的方式,因为这次的设计较简单,用到的资源较少,用直接连接的方式可以简化电路方案比较:- 5 -比较以上三个方案,方案一设计状态简单只有四个,但不符合实际生活中的设计要求;方案二,设计较节省端口资源,充分考虑

8、到了单片机端口资源的充分利用,但电路稍微复杂;方案三设计上考虑到了显示时间的准确性,电路设计简单,用的集成块少,设计成本小,但这样的电路扩展难,不适合复杂系统的设计。综合分析以上三种方案,由于交通灯系统用到的芯片资源较少对定时的要求较高,所以采用第三种方案来设计。三、硬件电路设计三、硬件电路设计(1 1)单片机概述)单片机概述单片机是由运算器、控制器、存储器、输入设备以及输出设备共五个基本部分组成的。单片机是把包括运算器、控制器、少量的存储器、最基本的输入输出口电路、串行口电路、中断和定时电路等都集成在一个尺寸有限的芯片上。通常,单片机由单个集成电路芯片构成,内部包含有计算机的基本功能部件:中

9、央处理器、存储器和 I/O 接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。(2 2)AT89C51AT89C51 芯片介绍芯片介绍1主要特性与 MCS-51 兼容 4K 字节可编程闪烁存储器 寿命:1000 写/擦循环数据保留时间:10 年全静态工作:0Hz-24Hz三级程序存储器锁定128*8 位内部 RAM32 可编程 I/O 线两个 16 位定时器/计数器5 个中断源 - 6 -可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 2管脚说明:VCC:供电电压。GND:接地。P0 口:P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收

10、 8TTL 门电流。当 P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高。P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4TTL 门电流。P1 口管脚写入 1 后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时,P1 口作为第八位地址接收。 P2 口:P2 口为一个内部上拉电阻的 8 位双

11、向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个TTL 门电流。当 P3 口

12、写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。P3 口也可作为 AT89C51 的一些特殊功能口,如下表所示:P3 口管脚 备选功能P3.0 RXD(串行输入口)- 7 -P3.1 TXD(串行输出口)P3.2 /INT0(外部中断 0)P3.3 /INT1(外部中断 1)P3.4 T0(记时器 0 外部输入)P3.5 T1(记时器 1 外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时

13、,要保持 RST 脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时, ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。/PSEN:外部程序

14、存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为RESET;当/EA 端保持高电平时,此间内部程序存储器。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3振荡器特性:- 8 -XTAL1 和 XTAL2 分别为反向放大器的输入和

15、输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4芯片擦除:整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持 ALE 管脚处于低电平 10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51 设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU 停止工作。但 RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存 RAM 的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件

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

当前位置:首页 > 办公文档 > 其它办公文档

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