欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    51单片机红绿灯课程设计.doc

    • 资源ID:77548631       资源大小:25KB        全文页数:11页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    51单片机红绿灯课程设计.doc

    1 电源提供方案 为使模块稳定工作,须有可靠电源。因此考虑了两种电源方案: 方案一:采用独立的稳压电源。此方案的优点是稳定可靠,且有各种成熟 电路可供选用;缺点是各模块都采用独立电源,会使系统复杂,且可能影响电路电平。 方案二:采用单片机控制模块提供电源。改方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。 综上所述,选择方案二。 2 显示界面方案 该系统要求完成倒计时功能。基于上述原因,我考虑了二种方案: 方案一:采用数码管显示。这种方案只显示有限的符号和数码字符,简单,方便。 方案二:采用点阵式LED 显示。这种方案虽然功能强大,并可方便的显示各种英文字符,汉字,图形等,但实现复杂,成本较高。 综上所述,选择方案一。3 输入方案: 设计要求系统能调节灯亮时间,并可处理紧急情况,我研究了两种方案: 方案一:采用8155扩展I/O 口及键盘,显示等。 该方案的优点是:使用灵活可编程,并且有RAM,及计数器。若用该方案,可提供较多I/O 口,但操作起来稍显复杂。 方案二: 直接在I/O口线上接上按键开关。 由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O 口就可实现,且本身的计数器及RAM已经够用。 综上所述,选择方案二。  3.1单片机交通控制系统的通行方案设计 设在十字路口,分为东西向和南北向,在任一时刻只有一个方向通行,另一方向禁行,持续一定时间,经过短暂的过渡时间,将通行禁行方向对换。其具体状态如下图所示。说明:黑色表示亮,白色表示灭。交通状态从状态1开始变换,直至状态6然后循环至状态1,周而复始,即如图2.1所示: 图1 交通状态 本系统采用MSC-51系列单片机AT89C51作为中心器件来设计交通灯控制器。 实现以下功能: Ø 初始东西绿灯亮,南北红灯亮,东西路口车通行,时隔24s,黄灯闪烁6次。之后,南北绿灯亮,东西红灯亮,方向开始通车,时隔24s,南北黄灯闪烁6次,然后又切换成东西方向通车,如此重复。 Ø 当发生交通意外(中断产生)时,全部亮红灯,进行交通事故的处理。当事故处理完毕(再次按中断键),重新按上述方式工作。 Ø 当南北路口的流量大时,可以增加南北路口亮绿灯的时间,当东西路口的流量大时,可以增加东西路口亮绿灯的时间,结束后调回正常状态。下面我们可以用图表表示灯状态和行止状态的关系如下东西南北四个路口均有红绿黄3灯和数码显示管2个,在任一个路口,遇红灯禁止通行,转绿灯允许通行,之后黄灯亮警告行止状态将变换。状态及红绿灯状态如表1所示。说明:0表示灭,1表示亮。3.3单片机智能交通灯控制系统的基本构成及原理 单片机设计智能交通灯控制系统,可用单片机直接控制交通信号灯的状态变化,实现倒计时、紧急情况处理与时间调整等功能。据此,本设计系统以单片机为控制核心,连接成最小系统,由按键设置模块产生输入,信号灯状态模块、LED倒计时模块接受输出。系统的总体框图如上所示。 单片机上电后,系统进入正常工作状态,执行交通灯状态显示控制,同时将时间数据倒计时输入到LED数码管上实时显示。在此过程中随时通过键盘调用急停按键和时间调节中断。 交通灯系统硬件设计此设计采用的是AT89C51单片机为内部控制芯片,外部接有按键中断电路以及复位电路以外,还有4个两位数码管,用以倒计时和4个路口的灯,共12个LED灯。        四川信息职业技术学院毕业设计说明书(论文)     第   页      5  第二章 交通灯系统硬件设计 此设计采用的是AT89C51单片机为内部控制芯片,外部接有按键中断电路以及复位电路以外,还有4个两位数码管,用以倒计时和4个路口的灯,共12个LED灯。 2.1 系统框架图 电路板一块,AT89S51单片机一片,八段LED数码管四个。发光二极管12个(4个绿的,4个红,4个黄的),8个电阻,2个电容,1个晶振,1个电解电容,1个按键开关。(系统结构框图:图2.1)2.3.1 MSC-51芯片简介 MCS-51单片机内部结构 8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。 8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明: ·中央处理器: 中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。 ·数据存储器(RAM) 8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。2.3.2 LED显示数码管 八段LED显示器由八个发光二极管组成。其中7个长条形的发光管排列成“日”字形,另一个圆点形的放光管在显示器的右下角作为显示小数点用,它能显示各种数字及部分英文字母。LED显示器有两种不同的形式:一种是8个发光二极管的阳极都连在一起的,称为共阳极LED显示器如图2-2所示;另一种是8个发光二极管的阴极都连在一起的,称为共阴极LED显示器3.3 晶体振荡器 石英晶体振荡器的特点是振荡频率准确、电路结构简单、频率易调整,作用是为系统提供基本的时钟信号。我们在晶体某一方向加一电场,从而在与此垂直的方向产生机械振动,有了机械振动,就会在相应的垂直面上产生电场,从而使机械振动和电场互为因果,这种循环过程一直持续到晶体的机械强度限制时,才达到最后稳定,这种压电谐振的频率即为晶体振荡器的固有频率。附录原程序代码  #include<reg51.h> #define uint unsigned int/宏定义 #define uchar unsigned char/宏定义 uchar aa,cc,NBshi,NBge,DXshi,DXge,NBtemp,DXtemp;/定义变量 sbit NBR=P30;/南北红灯 sbit NBY=P31;/南北黄灯 sbit NBG=P34;/南北绿灯 sbit DXY=P35;/东西黄灯 sbit DXG=P36;/东西绿灯 sbit DXR=P37;/东西红灯  uchar code table=   0x3f,0x06,0x5b,0x4f,   0x66,0x6d,0x7d,0x07,   0x7f,0x6f; /数字的代码从0-9/数字的代码从0-9 void init();/初始化子程序的申明 void displayNB(uchar NBshi,uchar NBge);/显示子程序的申明 void delay(uint z);/延时子程序的申明 void fenjieNB();/南北数码管显示数字的分解函数 void fenjieDX();/东西数码管显示数字的分解函数  void main() void init();/初始化子程序的申明 void displayNB(uchar NBshi,uchar NBge);/显示子程序的申明 void delay(uint z);/延时子程序的申明 void fenjieNB();/南北数码管显示数字的分解函数 void fenjieDX();/东西数码管显示数字的分解函数void main() init();/初始化子程序  while(1)      if(cc=82)/循环一次结束         cc=0;/从新进行下一次循环 void delay(uint z)/带参数的延时函数void delay(uint z)/带参数的延时函数   uchar x,y;/定义两个变量  for(x=z;x>0;x-)/循环延时   for(y=110;y>0;y-);/循环延时   void init()/初始化子程序    EA=1;/开总中断  ET0=1;/允许定时器0中断  EX0=1;/允许外部中断0中断  TR0=1;/启动定时器0  TMOD=0x01;/设置定时器0工作方式1 TH0=(65536-50000)/256;/给定时器的高8为赋初值TL0=(65536-50000)%256;/给定时器的低8为赋初值 void fenjieNB()/南北数码管显示数字的分解函数   NBshi=NBtemp/10;/将要显示的时间的十位赋给变量  NBge=NBtemp%10;/将要显示的时间的个位赋给变量   NBtemp-; void fenjieDX()/东西数码管显示数字的分解函数  DXshi=DXtemp/10;  DXge=DXtemp%10;   DXtemp-; void displayNB(uchar NBshi,uchar NBge)/带参数的数码管显示函数/显示南北十位   P2=0xfe;   P0=tableNBshi;     delay(5);   /显示南北个位   P2=0xfd;P0=tableNBge;    delay(15);void displayDX(uchar DXshi,uchar DXge)     /东西十位   P2=0xfb;  P1=tableDXshi;     delay(5);   /东西个位   P2=0xf7;   P1=tableDXge;     delay(5);void timer0() interrupt 1/定时器0的中断函数 TH0=(65536-50000)/256;/重装计数初值  TL0=(65536-50000)%256;/重装计数初值  aa+;  if(aa=20)/判断定时1分钟是否到  aa=0;/计数次数清0    if(cc=0)/南北亮红灯40秒,东西亮黄灯5秒      DXY=0;/东西的黄灯亮     DXG=1;/东西的绿灯不亮DXR=1;/东西的红灯不亮NBY=1;/南北的黄灯不亮     NBG=1;/南北的绿灯不亮    NBR=0;/南北的红灯亮     DXtemp=5;/东西的黄灯亮5秒     NBtemp=40;/南北的红灯亮40秒   else if(cc=6)/南北继续亮红灯40秒,东西亮绿灯34秒     DXY=1;/东西的黄灯不亮      DXG=0;/东西的绿灯亮      DXR=1;/东西的红灯不亮      NBY=1;/南北的黄灯不亮      NBG=1;/南北的绿灯不亮NBR=0;/南北的红灯亮 DXtemp=34;/东西的绿灯亮34秒          else if(cc=41)/南北亮黄灯5秒,东西亮红灯40秒      DXY=1;/东西的黄灯不亮      DXG=1;/东西的绿灯不亮      DXR=0;/东西的红灯亮      NBY=0;/南北的黄灯亮      NBG=1;/南北的绿灯不亮NBR=1;/南北的红灯不亮      NBtemp=5;/南北的黄灯亮5秒  DXtemp=40;/东西的红灯亮40秒  else if(cc=47)/南北亮绿灯34秒,东西继续亮红灯40秒          DXY=1;/东西的黄灯不亮    DXG=1;/东西的绿灯不亮      DXR=0;/东西的红灯亮      NBY=1;/南北的黄灯不亮      NBG=0;/南北的绿灯亮     NBR=1;/南北的红灯不亮  NBtemp=34;/南北的绿灯亮34秒      DXtemp=34;/东西的红灯亮40秒  fenjieNB();/调用南北分解函数    fenjieDX();/调用东西分解函数 cc+;/判断亮灯的变量自加1displayNB(NBshi,NBge);/调用NB红灯40秒的显示程序  displayDX(DXshi,DXge);/调用DX黄灯5秒的显示程序 void JJZD() interrupt 0 /紧急中断程序,南北东西都亮红灯 DXY=1;/东西的黄灯不亮   DXG=1;/东西的绿灯不亮DXR=0;/东西的红灯亮  NBY=1;/南北的黄灯不亮  NBG=1;/南北的绿灯不亮  NBR=0;/南北的红灯亮  displayNB(0,0);/南北数码管都显示0    displayDX(0,0);/东西数码管都显示0   cc=0;/重最开始显示第 11 页

    注意事项

    本文(51单片机红绿灯课程设计.doc)为本站会员(美****子)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开