基于51单片机控制交通灯课程设计报告.doc下载

weixin_39821260 2023-03-19 16:00:20
基于51单片机控制交通灯课程设计报告 本设计课程使用STC89c52型号的芯片及相关元器件自己组装单片机最小系统,并编 写程序用于控制交通信号灯。 STC89c52的芯片元器件的说明: STC89c52内置8位中央处理单元、256字节内部数据存储器RAM、8k片内程序存储器(ROM )32个双向输入/输出(I/O)口、3个16位定时/计数器和5个两级中断结构,一个全双工串 行通信口,片内时钟振荡电路。此外,STC89c52还可工作于低功耗模式,可通过两种软 件选择空闲和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其 功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能,STC89c5 2在众多嵌入式控制应用系统中得到广泛应用。 2.STC89c52的功能是: "· 标准MCS-51内核和指令 "· 片内8kROM(可扩充64kB外部存储器 " "系统 ") " "· 32个双向I/O口 "· 256x8bit内部RAM(可扩充64kB外部 " " "存储器) " "· 3个16位可编程定时/计 "· 时钟频率3.5-12/24/33MHz " "数器 " " "· 向上或向下定时计数器 "· 改进型快速编程脉冲算法 " "· 6个中断源 "· 5.0V工作电压 " "· 全双工串行通信口 "· 布尔处理器 " "—帧错误侦测 "· 4层优先级中断结构 " "—自动地址识别 "· 兼容TTL和CMOS逻辑电平 " "· 空闲和掉电节省模式 "· PDIP(40)和PLCC(44)封装形式 " 3. 管脚说明 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编程和校验时,P1口作为第八位地址接 收。  P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TT L门电流,当P2口被写"1"时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输 入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外 部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出 地址"1"时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出 其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P 3口写入"1"后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低 电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口作为AT89C51的一些特殊功能 口,管脚 备选功能    P3.0 RXD(串行输入口)  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(外部数据存储器读选通)   RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节 。 在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出 正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目 的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE 的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起用。另外,该引脚被略微拉高。如果微处理器 在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期 两/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA / VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H- FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当 /EA端保持高 , 相关下载链接:https://download.csdn.net/download/qq_43934844/87506396?utm_source=bbsseo
...全文
22 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
模拟交通灯控制系统的设计 一、功能要求 利用红、绿、黄三种不同颜色的LED显示不同的通行情况,利用2个数码管进行1秒倒计时 显示,最大定时时间为90秒;要求LED点亮时间和倒计时时间准确;完成单片机最小系统 及其扩展设计,焊接电路板,组成功能完整的样机。模拟实际交通灯控制系统功能,完 成控制软件的编写与调试。 二、方案论证 采用标准AT89C51单片机作为控制器;东、西、南、北各方向通行倒计时显示采用2位 LED数码管,LED显示采用直接驱动方式;模拟交通信号灯采用直径为ψ5mm的圆形发光二 极管;紧急车辆通行采用实时中断完成;通过蜂鸣器实现盲人提示功能。按以上系统构 架设计,单片机端口资源刚好满足要求,该系统设计方便,电路简单。 三、系统硬件电路的设计 整套电路系统由控制系统模块、通行灯控制显示模块、时间显示模块、特种车辆通行 控制模块和盲人提示电路模块等组成。 主控制系统 主控制器采用AT89C51单片机的P1.0~P1.5脚用于控制东西及南北方向的通行灯,P1. 6脚用于控制盲人提示电路;P0口及P2 口用于4组2位LED计时器的控制;特种车辆通过时使用外部中断0口(P3.2). 通行灯输出控制 模拟交通信号灯采用直径为ψ5mm的圆形发光二级管,东西南北方向各3个,颜色分别为红 、黄、绿。为使电流小于10mA应串联一个阻值为330Ω的限流电阻。 时间显示模块 道口通行剩余时间采用高亮红色7段LED发光数码管显示,采用共阴数码管,为了提高 亮度给数码管的位选串联一个NPN型三极管,给段选并联一个驱动芯片74LS245。 紧急车辆通行控制模块 运用外部中断0口,当有特种车辆通过时,按下开关,各个方向的红灯就会同时亮起 ,并且在延时10秒后自动恢复以前的状态。 盲人提示电路模块 道口控制系统设计中也考虑到了方便盲人过人行道的声音提示电路,采用蜂鸣器作为 声音提示装置,当绿灯倒计时10s时开始发声,当黄灯亮时,即行人结束通行,蜂鸣器停 止发声,东西方向和南北方向的提示音音频不同(东西方向1s钟蜂鸣器发声两次,南北 方向1s钟发声一次)。 四、系统主要程序的设计 道口交通控制系统控制程序主要分为以下几个模块:初始化程序、主程序、子程序( 包括信号灯提示、数码管倒计时显示、盲人提示功能和紧急车辆通行功能等)。 初始化程序 初始化程序主要包括声明IO口的连接对象、声明7段LED数码管驱动信号数组、声明基本 变量、定义无返回函数(延时函数)。 主程序 主程序主要负责总体程序管理功能,实现信号灯显示与数码管倒计时显示,以及蜂鸣 器提示和特种车通行提示。 主程序流程图如下 子程序流程图如下 状态1 状态2 状态3 状态4 状态5 五、调试及性能分析 1、硬件部分首先应用Proteus软件对电路原理图进行检查,检查无误后进行焊接,焊接 结束后利用万用表检查线路是否为通路。 2、软件部分首先应用keil u4软件对程序进行编译和调试,调试成功后,利用Proteus软件进行在线仿真,经过对程 序多次地修改后,仿真效果达到了预期的要求。 3、将最终调试好的程序烧录到单片机内,观察效果。 本系统以STC89C51单片机为核心,采用高亮度两位7段数码管并应用74LS245对数码管进 行驱动,可以很直观地显示红绿灯的开放及关闭时间;功能完善,不仅有普通交通灯的 指示功能,还增加了特种车辆通行和盲人提示功能。其控制功能与效果与真实道口管理 红绿灯完全一致。 六、小组成员总结 心得体会 问婉茹 为期两周的课程设计已接近尾声,此次课程设计我们的任务是交通灯,刚开始的时 候,几乎没有一点头绪,不知从何下手,可是真正完成了之后,觉得其实也并不是特别 困难,只要找到线头,顺着它一步步往下走,就可以顺利到达终点。通过这一学期对单 片机的学习,已经对单片机有了基本的了解,但那要说真正理解,我觉得差的还不是一 点点,毫无疑问,这次的课程设计就给了我们一个深入学习单片机,提高动手能力与团 结合作的大好机会。 这次课程设计中,我负责的主要是硬件,包括各种元件的检查,电路的焊接。提到 焊接就感到惭愧,由于以前在这方面经验比较少,加之为了元件排版美观,导致电路板 背面得导线焊得一塌糊涂,正如杨老师所说,一碗面条。以后在焊接方面还是有待提高 ,多动手。虽然没有负责软件,但比起以前,还是对程序以及此次用到的几个软件有了 一点了解。总之,这次课程设计还是让我收获挺多的不管是软件,硬件还是团结协作方 面。当然,任何事情都不是一次就能成功的,必须经过多次的尝试并改善才能得到最好 的。在这次设计中,我们也不可避免的遇到了同样的问题,在完成程序并通过软件仿真 之后,经过多次的尝试,我们还是遇到了问题,八个数码管中始终有五个很暗,刚开始 以为是电流过小,不能驱动这么多数码管,老师建议我们加个74
基于51单片机控制交通灯课程设计报告 本设计课程使用STC89c52型号的芯片及相关元器件自己组装单片机最小系统,并编 写程序用于控制交通信号灯。 STC89c52的芯片元器件的说明: STC89c52内置8位中央处理单元、256字节内部数据存储器RAM、8k片内程序存储器(ROM )32个双向输入/输出(I/O)口、3个16位定时/计数器和5个两级中断结构,一个全双工串 行通信口,片内时钟振荡电路。此外,STC89c52还可工作于低功耗模式,可通过两种软 件选择空闲和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其 功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能,STC89c5 2在众多嵌入式控制应用系统中得到广泛应用。 2.STC89c52的功能是: "· 标准MCS-51内核和指令 "· 片内8kROM(可扩充64kB外部存储器 " "系统 ") " "· 32个双向I/O口 "· 256x8bit内部RAM(可扩充64kB外部 " " "存储器) " "· 3个16位可编程定时/计 "· 时钟频率3.5-12/24/33MHz " "数器 " " "· 向上或向下定时计数器 "· 改进型快速编程脉冲算法 " "· 6个中断源 "· 5.0V工作电压 " "· 全双工串行通信口 "· 布尔处理器 " "—帧错误侦测 "· 4层优先级中断结构 " "—自动地址识别 "· 兼容TTL和CMOS逻辑电平 " "· 空闲和掉电节省模式 "· PDIP(40)和PLCC(44)封装形式 " 3. 管脚说明 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编程和校验时,P1口作为第八位地址接 收。  P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TT L门电流,当P2口被写"1"时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输 入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外 部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出 地址"1"时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出 其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P 3口写入"1"后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低 电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口作为AT89C51的一些特殊功能 口,管脚 备选功能    P3.0 RXD(串行输入口)  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(外部数据存储器读选通)   RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节 。 在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出 正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目 的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE 的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起用。另外,该引脚被略微拉高。如果微处理器 在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期 两/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA / VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H- FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当 /EA端保持高

13,656

社区成员

发帖
与我相关
我的任务
社区描述
CSDN 下载资源悬赏专区
其他 技术论坛(原bbs)
社区管理员
  • 下载资源悬赏专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧