1)。中央处理器(CPU)。包括运算器和控制器,是单片机系统运作的核心。
2)。数据存储器(RAM)。随机存储器,存储数据,掉电失去数据,用户能操作的部分。
3)。程序存储器(内部ROM)。只读存储器,存储程序,掉电不失程序,只能读不能写,用户无法操作。
4)。I/O接口:并行是由P0到P3以及串行的拓展外部I/O口。
5)。时钟电路。80C52内部有。外接石英晶振和微调电容即能够成时钟电路。
6)。中断系统。5个中断源,有高低级之分。2个外部3个内部。论文网
2。2 MCU及外围电路设计
单片机分为上电复位和按键复位(复位也分高低电平复位)。本次交通灯控制系统采用按键复位(如图 2 1)。
单片机的时钟振荡电路。单片机自带内部时钟电路,只需接上石英晶振和两个微调电容即可。石英晶振12MHz,微调电容约30pF。(如图 2 2)
2。3 显示模块电路设计
该模块由共阴LED数码管组成,利用数码管的动态扫描原理,当控制数码管的IO口P1。0和P1。1为低电平时VCC给数码管供电,则数码管被点亮,利用数码管点亮的余辉及人眼视觉暂留的原理,看起来数码管就是同时被点亮的。(如图 2 3)
图 2 3
本系统使用的是共阴极2位7段数码管,其中P1口的P1。0到P1。3是数码管的选通位,控制数码管的显示。P0口则需接10K上拉电阻以及74HC245来提升数码管的供电电流,提高数码管的显示亮度。
2。4 系统方框图
图 2 4
2。5 工作原理
本交通灯控制系统一开始是由东西绿灯南北红灯,东西方20通行,其次南北方30秒通行(默认南北方位车流量大的一方)。其中P0口提供数码管倒计时,P1口为数码管的选通位控制,P2口为LED红绿灯显示。最后的P3口就是按键控制了,通过按键来调整需要的状态以及通断的时间。
3 软件程序设计
3。1 程序软件环境
本交通灯控制系统程序用KEIL编写。KEIL的软件包内包含许多内容,有C51编译器A51宏汇编器BL51连接定位器以及库管理器等等。
而且C语言具有以下优点:文献综述
1)生成代码的质量高,执行程序的效率高。方便程序的执行与操作。
2)可移植性好。能够完善的转移所需的内容。
3)语法限制不太严格,程序设计自由度大。自带检错,变量使用灵活。
4) 数据结构丰富。方便了不同程序的编程需要。
5) 具有结构化的控制语句。让程序看起来更简洁明了。
6) 运算符丰富。方便了程序的执行与运转。
7) 紧凑易懂的语言、灵活方便的应用以。C语言共37个关键字,9种控制语句,源程序短,语言简洁,运行方便精简了运行内容。
综上所述,本系统采用KEIL软件C语言编写程序是不错的选择。
3。2 程序设计流程
本系统主要完成单片机对交通灯的各种控制。程序开始定义东西南北方向时间,定义按键地址和东西南北灯的标志位,以及共阴极字型码。主程序设置定时器初始值,开启中断,扫描按键子程序调用显示。再者按键扫描子程序分别实现时间加,时间减,确认,切换,禁止,夜间等功能。定时中断子程序实现黄灯的5秒闪烁。外部中断0实现仅东西通行,外部中断1实现仅南北通行。开机logo程序传送点点点的开机显示。延时子程序控制大约1ms的延时时间。