交通信号灯控制系统集成电路设计和集成系统.docVIP

交通信号灯控制系统集成电路设计和集成系统.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机课程设计报告 题目 交通信号灯控制系统 班级 集成电路设计与集成系统102班 学号 1008040219 姓名 杜彤彤 指导老师 马兴录 完成时间 2013-4-23 目录 第一部分:需求分析 第二部分:设计方案 第三部分:详细设计 第一部分 需 求 分 析 题目要求: 以单片机为核心,设计一个 (1)性价比高,开发周期短,易于产品化, (2)集成度高,可靠性好,抗干扰性强, (3)功能完善,接口多样, (4)低功耗、低电压 一般电源供电电压在5~3V范围内单片机都能正常工作,供电的下限可达1~2V。 (5)总线多样,易于扩展 单片机外部的典型三总线结构,方便系统构扩展,构成各种规模的应用系统。外部总线增加了I2C及SPI等串行总线方式, 可根据需要进行并行或者串行扩展。 二. AT89C51单片机简介AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。主要特性:·与MCS-51 兼容 ·4K字节可编程闪烁存储器 ·寿命:1000写/擦循环 ·数据保留时间:10年·全静态工作:0Hz-24MHz·三级程序存储器锁定·128×8位内部RAM·32可编程I/O线·两个16位定时器/计数器·5个中断源·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路 Proteus 7.5 SP3仿真软件按下列要求绘制仿真实例 用4个共阳极LED数码管的分别表示东、西、南、北四个方向路口,以数码管的上、中、下3个横段分别代表红、黄、绿3盏灯 用控制模拟交通灯的 2. 程序流程图 程序源代码 #includereg51.h #includeintrins.h #define uchar unsigned char #define uint unsigned int uchar code seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; uchar buffer[]={0,0,0,0}; uchar shijian[]={0,0,0,0,0}; sbit red_a=P0^0; sbit yellow_a=P0^1; sbit green_a=P0^2; sbit red_b=P0^3; sbit yellow_b=P0^4; sbit green_b=P0^5; uchar operation_type=1; uchar dongxi_count=10; uchar nanbei_count=15; uchar num=0,n=0,dc,nc,flag=0; void delay(uint x) { uchar i; while(x--) { for(i=0;i120;i++); } } void display(uchar dongxi_count,uchar nanbei_count) { uchar i; P1=0x80; buffer[0]=dongxi_count/10; buffer[1]=dongxi_count%10; buffer[2]=nanbei_count/10; buffer[3]=nanbei_count%10; for(i=0;i4;i++) { P2=0xff; P2=seg[buffer[i]]; P1=_crol_(P1,1); delay(1); } } void init() { SCON=0x50; TMOD=0x21; TH0=0x3c; TL0=0xb0; TH1=0xFD; TL1=0xFD; PCON=0X0F; EA=1; ES=1; ET0=1; TR1=1; TR0=1; } void series() interrupt 4 { RI=0; shijian[n]=SBUF; n++; if(n==4) { dc=(shijian[0]-0x30)*10+

文档评论(0)

smdh + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档