




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1总体介绍11芯片简介AT89C5X芯片简介,AT89C51是AT89C5X系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。AT89C51单片机包含中央处理器、程序存储器ROM、数据存储器RAM、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明中央处理器CPU是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。AT89C51内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。AT89C51共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。AT89C51有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。AT89C51共有4组8位I/O口P0、P1、P2或P3,用于对外部数据的传输。AT89C51内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。AT89C51具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。AT89C51内置最高频率达12MHZ的时钟电路,用于产生整个单片机运行的脉冲时序,但AT89C51单片机需外置振荡电容。12技术指标用AT89C51单片机设计一个智能交通灯控制系统,使其能模仿城市十字路口交通灯的功能,并对满足特殊的控制要求。每条道路上各配有一组红、黄、绿交通信号灯,其中红灯亮,表示该道路禁止通行;黄灯亮表示该道路上未过停车线的车辆禁止通行,已过停车线的车辆继续通行;绿灯表示该道路允许通行。该电路自动控制十字路口两组红、黄、绿交通灯的状态转换,实现十字路口自动化。交通等示意图如图11所示图11交通灯示意图13设计指标该控制系统能控制东西南北四个路口的红黄绿灯正常工作。东西和南北方向分时准行和禁行。两垂直方向的准行时间均为60S或120S,可以进行控制转换。准行方向亮绿灯与禁行方向亮绿灯55S后,四个产品同时加亮一黄灯进行闪烁,以警告车辆及行人,准行方向与禁行方向即将改变。四个道口用数码管显示路人行或禁行的剩余时间在交通情况特殊情况下可以通过K1、K2、K3按键对交通灯进行控制。当有紧急情况发生时按下K1键四个路口同时加亮黄灯进行闪灯且倒计时显示关闭。黄灯闪烁完毕后四路口全变红灯禁行,处理紧急情况。有某方向上车辆过多,可以使用K2、K3键控制东西或南北方向通行,另一方向禁行。按下控制键后先在四个路口加5S的黄灯闪烁2系统硬件电路的设计21AT89C5X单片机内部结构及引脚在AT89C5X系列单片机中,有2个系列子51系列和52子系列。每个系列有若干种型号。51系列有AT89C51、8751和8031。我们以AT89C5X系列单片机的典型型号AT89C51为例来介绍其结构和功能。AT89C5X的内部结构框图21如下图21AT89C51单片机内部结构分析上图,并按其功能部件划分可以看出,AT89C5X系列单片机是由8大部分组成的,分别为一个8位中央处理器CPU(又成为微处理器)、128个字节的片内数据存储器RAM、4KB的片内程序存储器ROM或EPROM、18个特殊功能寄存器SFR、4个8位并行输入输出I/O接口、1个串行I/O接口,完成单片机与其他微机之间的串行通信、2个定时器/计数器T0、T1、一个具有5个中断源,2个可编程优先级的中断系统。它可以接收外部中断申请、定时器/计数器中断申请和串行口终端申请。AT89C5X系统的引脚说明AT89C5X系列单片机中的8031、AT89C51及8751均采用40PIN封装的双列直接DIP结构,图二是它们的引脚配置,40个引脚中,正电源和底线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。8951的复位方式可以自动复位,也可以是手动复位。除此之外,RESET是复用引脚,VCC掉电其间,此引脚可以接备用电源,以保证单片机内部RAM的数据不丢失。在编程时,EA/VPP脚还需加上21V的编程电压。AT89C51的引脚图如图22所示图22AT89C51引脚图振荡器特性XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。芯片擦除整个EPROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10MS来完成。在芯片擦除操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。22单片机的特点与应用单片机的特点控制功能强、抗干扰性强,可靠性高,工作温度范围宽、开发周期短,性价比高,易于产品化。单片机的应用领域智能化仪表、实时工业控制、机电一体化产品、智能接口、办公自动化、商业营销、家用电器。23主控制系统一个完整的交通灯控制系统相当于一个简单的单片机系统。该系统有交通灯设置电路、单片机、显示电路、复位电路和震荡电路等构成。单片机是集成的IC芯片,只需根据实际设计要求选型。其他部分都需要根据应用要求和性能指标自行设计。硬件电路图如图23所示图23智能交通灯系统的硬件电路单片机的P0口用于控制8255。8255的PA口和PB口用于控制南北及东西的通行灯。PC口及P30到P32口用于4组2位LED计时器的控制,特种车通过时使用外中断0口(P33),手动自动转换采用PC口按键。选择8255的工作方式0,在这种情况下三个端口都可以由程序设置为输入和输出。231系统时钟、复位电路设计单片机的VCC引脚接5V的电源,VSS引脚接地。复位电路为独立的复位电路。RC上电复位电路接施密特电路输入端,施密特电路输出接AT89C51和外围复位电路,这样可是系统可靠的复位。给RST端持续高电平,超过两个时钟周期,则AT89C51单片机复位。其复位电路如图24所示图24系统的复位电路时钟电路由两个30PF的微调电容和一个晶振组成。AT89C51内部有一个用于构成振荡器的高增益反相放大器,它的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器。232系统计时显示模块的设计计时显示模块显示PB、P1、P2的输出数据,用于显示通行或禁行时间,且可以实现60秒和120秒的交替显示。控制开关由PC0、PC1控制。用软件编程,采用中断、查询的方法检测按键按下的位置,全采用外部寻址方式。数码显示硬件采用高亮7段LED发光数码管显示,驱动电流由单片机与8255共同提供。PA口输出控制交通灯的红绿灯的交替亮灭。用软件编程对外部I/O口送数据,从而实现交通灯的控制。233紧急状况模块的设计当特种车辆到来时能自动关闭所有绿灯,所有交通灯显示黄色闪烁状态,让特种车通过。设计中采用外部中断的方式作为特种车通行的状况,使用外部中断0来影响特种车的通行要求。当有特种车辆通过时,按下K1键,低电平经与门连接到外部中断引脚P32,是系统进入中断过程,在中断服务程序中,使交通灯显示黄色闪烁的状态。某方向上车辆过多,可以使用K2、K3键控制东西或南北方向通行,另一方向禁行。按下控制键后先在四个路口加5S的黄灯闪烁。K2、K3键也通过与门连接到外部中断引脚P32,采用键盘查询的方式检测哪个按键按下。当K2键按下时,东西方向直亮绿灯,南北方向直亮红灯。K3键按下时,南北方向直亮绿灯,东西方向直亮红灯。用以模拟某个方向车辆过多的状态。3软件设计流程及描述31软件设计先了解实际交通灯的变化规律,假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北绿灯;然后转状态1,南北绿灯灭黄灯闪,延时5秒,东西仍然红灯。再转状态2,东西绿灯通车,南北红灯。过一段时间转状态3,东西绿灯灭黄灯闪,延时5秒,南北仍然红灯,最后回到状态1,不断循环。通过外部寻找的方式,将数据送至PA口,PA口接交通灯,通过对PA口的赋值,实现对交通灯的控制。数码显示的个位和十位的数据通过P2口和P1口传送,百位数据传送用PB口。软件调试软件调试是通过对程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。32主程序的设计思路程序的设计流程图反映了系统的设计思路,此交通灯控制器的程序流程图如图31所示初始化程序开始图31主程序流程图33程序设计思路331每秒钟的设定延时方法可以有两种一种是利用MCS51内部定时器才生溢出中断来确定1秒的时间,另一种是采用软延时的方法。我们采用在主程序中设定一个初值为10的软件计数器和使1定时1000毫秒这样每当1到1000毫秒时CPU就响应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,CPU先使软件计数器减1,然后判断它是否为零。为零表示1秒已到可以返回到输出时间显示程序。其程序流程图如图32所示东西道口红灯亮,南北道口绿灯亮,55秒倒计时显示东西南北5秒倒计时显示,黄灯闪烁东西道口绿灯亮,南北道口红灯亮55秒倒计时显示东西南北5秒倒计时显示,黄灯闪烁332软件延时MCS51的工作频率为212MHZ,我们选用的8051单片机的工作频率为6MHZ。机器周期与主频有关,机器周期是主频的12倍,所以一个机器周期的时间为12(1/6M)2US。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间。DEL为一个双重循坏循环次数为1262252次,所以延时时间01S,由于单片机的运行速度很快其他的指令执行时间可以忽略不计。该程序的流程图如图YYYYY延时R0减1R7是否为1(60H)是否为0开始给TH1,TL1重新赋初值B减1后是否为0R0是否为0R0是否为0给R0赋初值为10R1减1R1是否为0给R1赋值为9,R7减1R7的值从B口读出中断返回NNNNN图32定时中断流程图33所示。图33延时程序的程序流程图333外部中断控制当有紧急情况发生时按下K1键,进而产生外部中断,改变程序入口控制值,则四个路口同时加亮黄灯进行闪灯(闪灯时间为5S)且倒计时显示关闭。黄灯闪烁完毕后四路口全变红灯禁行,处理紧急情况有某方向上车辆过多,可以使用K2、K3键产生外部中断控制东西或南北方向通行,另一方向禁行。按下控制键后先在四个路口加5S的黄灯闪烁。该程序的流程图如图34所示。NN开始给R6赋初值为2给R5赋初值为126R5减1后是否为0YR6减1后是否为0Y子程序返回NNNYNNY中断开始将C口的值读入并给AA是否为7FH给R2,B,60H,61H分别赋值为01H,01H,00H,00HA是否为BFHA是否为DFH给R2,B,60H,61H分别赋值为03H,01H,00H,01H给R2,B,60H,61H分别赋值为02H,01H,00H,01HA是否为FEH给R2,B,60H,61H分别赋值为00H,00H,01H,01HA是否为FDH给R2,B,60H,61H分别赋值为00H,01H,00H,01HYYYR3赋值为0,中断返回334时间及信号灯的显示8051虽然有4个8位I/O端口,但真正能提供借用的只有P1口,因为P2和P0口通常用于传送外部传送地址和数据,P3口也有它的第二功能。因此,8051通常需要扩展。由于我们用外部输入设定红绿灯倒计时初值、数码管的输出显示、红绿黄信号灯的显示都要用到一个I/O端口,显然8051的端口是不够,需要扩展。扩展的方法有两种(1)借用外部RAM地址来扩展I/O端口;(2)采用I/O接口新片来扩充。我们用8255并行接口信片来扩展I/O端口。当定时器定时为1秒时程序跳转到时间显示及信号灯显示子程序,它将依次图34外部中断流程图显示信号灯时间,同时一直显示信号灯的颜色,这时在返回定时子程序定时一秒,在显示黄灯的下一个时间,这样依次把所有的灯色的时间显示完后在重新给时间计数器赋初值,重新进入循环。由于发光二极管为共阴极接法,输出端口为高电平,对应的二极管发光,所以可以用置位方法点亮红,绿,黄发光二极管。LED灯的显示原理通过同名管脚上所加电平的高低来控制发光二极管是否点量而显示不同的字形如SP,G,F,E,D,C,B,A管角上加上7FH所以SP上为0伏,不亮其余为TTL高电平,全亮则显示为8。4硬件调试与软件仿真系统的硬件电路的设计,当启动系统时,东西红灯,南北绿灯。系统显示状态如图41所示图41东西红灯南北绿灯时系统的显示结果此种状态下,数码管从55倒计时显示到1,然后黄灯闪烁5秒钟图途中蓝点表示低电平,红点表示高电平。东西绿灯结束后,黄灯闪烁,已警示车辆及行人,通行方向与禁行方向即将改变。其系统显示状态如图42所示图42黄灯闪烁时系统的显示结果此时,南北绿灯即将变红,东西红灯即将变绿,以警告车辆及行人,通行与禁行方向即将改变。黄灯闪烁时间5秒钟。黄灯闪烁结束后,禁行与通行方向改变,变为南北红灯,东西绿灯。系统显示状态如图43所示图43东西绿灯南北红灯时系统的显示结果此种状态下,南北方向红灯禁行,东西方向绿灯通行。持续时间55秒钟。数码管显示数字从55递减到1。数码管递减到1后,黄灯开始闪烁,其显示结果如图44所示图44黄灯闪烁时系统的显示结果当今有紧急状况,如特殊车辆通过时,用外部中断的方式模拟,按下K1键,其系统显示结果如图45所示图45按下K1键时系统的显示结果此种状态下,仅适用于紧急状况。表示只有特殊车辆(如救护车)能够通行,其他车辆全禁行。当紧急状态解除后,在摁下K1键,又回到系统原来的状态。当某个方向车辆或行人过多时,让一方向通行,另一方向禁行,可通过K2,K3键控制,当东西方向车辆多时,其系统显示结果如图46所示图46按下K2键时系统的显示结果此时表示东西方向车辆多,通过按下K2键使东西方向通行,南北方向禁行,当路口情况恢复正常后,按下K2键回到原来的状态。当南北车辆较多时,其系统显示结果如图47所示图47按下K2键时系
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025届广东省深圳市龙岗区中考试题猜想数学试卷含解析
- 2025年工业机器人编程与操作习题及解析
- 2025年应急局安全员资格认证题解
- 2025年建安安全员考试重点突破题及答案
- 2025年安全员C证法规题及答案
- 2025年空调维修工程师执业技能考核试题及答案解析
- 2025年金融风险管理师职业资格考试试卷及答案解析
- 2025年建筑学试题及答案解析
- 2025年婚姻家庭咨询师职业素质评定试题及答案解析
- 2025年国际贸易专家认证考核试题及答案解析
- 第一响应人应急培训
- 治未病进修总结
- 初中数学七年级上册思维导图
- 中学八年级信息技术Excel-电子表格教案
- 《认识感官》课件
- 工程伦理课程课件
- 秋季传染病预防知识讲座课件
- 055.重症超声在重症相关操作中应用专家共识
- 人教版九年级上册化学第二单元 空气和氧气(单元复习课件)
- 2024小学语文教学及说课课件:二年级上册《田家四季歌》
- GB/T 44304-2024精细陶瓷室温断裂阻力试验方法压痕(IF)法
评论
0/150
提交评论