单片机原理实验课程设计毕业设计Word文件下载.docx
《单片机原理实验课程设计毕业设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《单片机原理实验课程设计毕业设计Word文件下载.docx(94页珍藏版)》请在冰豆网上搜索。
绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。
左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。
红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。
黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。
1.2系统方案设计
利用控制芯片、键盘显示模块、时钟电路、存储器和点阵等分别实现:
(1)通过8*8点阵简单实现直行、转弯的交通指挥设计
(2)显示年、月、日、星期、时、分、秒
(3)能够通过键盘输入日期和时间的初值
(4)通过功能键实现数据储存、查询、上传(串行通讯)功能
(5)通过功能键实现外中断和定时中断功能
系统初始化后,点阵上显示“电③”“WHYNOT?
”。
通过功能键能实现日期和时间的初值设定。
通过功能键进入交通灯状态,在点阵上显示“★交通灯★”、“左前右”,并且自动储存。
系统框图如图1-1所示
电源模块
图1-1系统框图
1.3系统方案论证与实现
(1)方案论证:
●倒计时显示模块
方案1:
用液晶屏显示交通灯的各方倒计时功能,LCD液晶显示器的构造是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间有许多垂直和水平的细小电线,透过通电与否来控制杆状水晶分子改变方向,将光线折射出来产生画面。
显示清晰,实现功能全。
但是开发板P0口同时作用在点阵和液晶上,不能同时用,故该方案舍弃。
方案二:
使用8为数码管作为交通灯倒计时,通过芯片CH451,可实现当前交通倒计时功能显示,缺点是数码管显示数字,显示不灵活多变,需严格控制交通界面的时间来实现此倒计时功能。
综上,LCD液晶屏与点阵IO口冲突,会导致此设计出现故障。
故选用方案二数码管作为倒计时模块。
●交通状态显示模块
方案一:
利用8*8点阵显示实时交通界面,可利用几个方格代替几个方向,并且通过点阵的颜色控制,可实现“红”“黄”“绿”三种颜色,与现实交通灯十分接近,也一目了然。
故此方案可行性相当之高。
使用LCD液晶屏作为交通状态显示,LCD液晶屏显示内容丰富,多样。
但是它不能实现多种颜色的切换,单调,而且也不明显。
现实生活中的交通灯采用点阵,故此方案实用价值不高。
综上,故选用方案一点阵显示当前交通状态,更形象,更切实际。
(2)系统方案实现:
系统主要由硬件和软件两大部分构成,其中硬件主要由单片机芯片上LED8*8点阵、LCD部分、键盘及LED部分、信息按钮部分构成。
软件部分是由keil编写的一个汇编程序,然后利用单片机芯片上的串口将程序下载到单片机芯片板中进行各部分功能的实现,具有良好的人机界面,便于使用。
由于显示年、月、日、星期、时、分、秒,能够通过键盘输入日期和时间的初值,通过功能键实现数据储存、查询、上传(串行通讯)功能,通过功能键实现外中断和定时中断功能,通过功能键实现交通灯左转、右转、直行等功能。
2系统主要器件选型及依据
2.1数码管驱动及键盘控制芯片CH451
CH451是一个多功能外围芯片,通过可以级联的4线串行接口与单片机、DSP、微处理器等交换数据。
CH451包含三个功能:
数码管显示驱动、键盘扫描控制、μP监控,三个功能之间相互独立,单片机可以通过操作命令分别启用、关闭、设定CH451的任何一个功能。
CH451的串行接口是由硬件实现的,单片机可以频繁地通过串行接口进行高速操作,而绝不会降低CH451的工作效率。
图2-1为CH451外围电路图。
表2-1为按键键值表。
图2-1CH451外围电路图
表2-1按键键值表
(1)显示驱动
●内置大电流驱动级,段电流不小于25mA,字电流不小于150mA。
●动态显示扫描控制,直接驱动8位数码管或者64位发光管LED。
●可选数码管的段与数据位相对应的不译码方式或者BCD译码方式。
●数码管的字数据左移、右移、左循环、右循环。
●各数码管数字独立闪烁控制。
●通过占空比设定提供16级亮度控制。
●支持段电流上限调整,可以省去所有限流电阻。
●扫描极限控制,支持1到8个数码管,只为有效数码管分配扫描时间。
(2)键盘控制
●内置64键键盘控制器,基于8×
8矩阵键盘扫描。
●内置按键状态输入的下拉电阻,内置去抖动电路。
●键盘中断,低电平有效输出。
●提供按键释放标志位,可供查询按键按下与释放。
(3)外部接口
●高速的4线串行接口,支持多片级联,时钟速度从0到10MHz。
●串行接口中的DIN和DCLK信号线可以与其它接口电路共用,节约引脚。
●完全内置时钟振荡电路,通常不需要外接晶体或者阻容振荡。
●内置上电复位和看门狗Watch-Dog,提供高电平有效和低电平有效复位输出。
2.2DS1302芯片简介
DS1302包括时钟/日历寄存器和31字节(8位)的数据暂存寄存器,数据通信仅通过一条串行输入输出口。
实时时钟/日历提供包括秒、分、时、日期、月份和年份信息。
闰年可自行调整,可选择12小时制和24小时制,可以设置AM、PM。
实时时钟具有能计算2100年之前的秒、分、时、日期、月份、年、星期的能力,还有闰年调整能力。
(1)控制指令
图2-2为控制指令(8位)
图2-2控制指令(8位)
每个字节的传输是有控制字节指定的,控制字节的最高位Bit7必须是‘1’,如果是‘0’,写入将被禁止。
bit6为‘0’则指定对时钟/日历寄存器控制读写操作,为‘1’则为RAM区数据的控制读写操作,bir1~bit5指定相关寄存器待进行输入输出操作,最低位bit0指定是输入还是输出,为‘0’则为输入,相反则输入有效,输入输出根据脉冲的上升沿和下降沿串行进行。
(2)写保护位
控制字节的bit7是写保护位,低7位(bit0~bit6),被置‘0’,在任何写操作前,bit7都应该置‘0’。
(3)时钟/日历
时钟/日历包含在7个寄存器中,图2-3为时钟/日历。
数据在时钟/日历寄存器是二进制编码的十进制格式(BCD码)。
图2-3时钟/日历
(4)数据输入
经过8个时钟周期的控制字节的输入,一个字节的输入将在下8个时钟周期的上升沿完成,数据传输从字节最低位开始。
(5)数据输出
经过8个时钟周期的控制读指令的输入,控制指令串行输入后,一个字节的数据将在下个8个时钟周期的下降沿被输出,注意第一位输出是在最后一位控制指令所在脉冲的下降沿被输出,要求RST保持位高电平。
同理8个时钟周期的控制读指令如果指定的是突发模式,将会在脉冲的上升沿读入数据,下降沿读出数据,突发模式一次可进行多字节数据的一次性读写,只要控制好脉冲就行了。
2.3LED8*8点阵
LED显示屏,又叫电子显示屏或者飘字屏幕。
是由LED点阵组成,通过红色或绿色灯珠的亮、灭来显示文字、图片等内容可以随时更换。
通常由显示模块、控制系统及电源系统组成。
显示模块由LED灯组成的点阵构成,负责发光显示;
控制系统通过控制相应区域的亮灭,可以让屏幕显示文字、图片等内容;
电源系统负责将输入电压电流转为显示屏需要的电压电流。
单片机通过两片74HC573的片选控制红、绿灯的交替显示。
图2-4为点阵内部结构图。
图2-4点阵内部结构图
2.474HC573芯片简介
74HC573是一种带三态门的8D锁存器,其管脚示意图为图2-5:
其中:
0D-7D为8个输入端。
0Q-7Q为8个输出端。
LE为数据打入端:
当C为“1”时,锁存器输出状态同输入状态;
当C由“1”变“0”时,数据打入锁存器OC为输出允许端:
当OC=0时,三态门打开;
当OC=1时,三态门关闭,输出高阻。
图2-574HC573管教图
2.574HC138芯片简介
74HC138是一款高速CMOS器件,74HC138引脚兼容低功耗肖特基TTL(LSTTL)系列。
74HC138译码器可接受3位二进制加权地址输入(A0,A1和A3),并当使能时,提供8个互斥的低有效输出(Y0至Y7)。
74HC138特有3个使能输入端:
两个低有效(E1和E2)和一个高有效(E3)。
除非E1和E2置低且E3置高,否则74HC138将保持所有输出为高。
利用这种复合使能特性,仅需4片74HC138芯片和1个反相器,即可轻松实现并行扩展,组合成为一个1-32(5线到32线)译码器。
任选一个低有效使能输入端作为数据输入,而把其余的使能输入端作为选通端,则74HC138亦可充当一个8输出多路分配器,未使用的使能输入端必须保持绑定在各自合适的高有效或低有效状态。
74HC138与74HC238逻辑功能一致,只不过74HC138为反相输出。
图2-6为138管脚图
图2-6138管脚图
2.6AT24C02A芯片简介
AT24C02A是带有I²
C总线接口的E2PROM存储器,具有掉电记忆的功能,并且可以象普通RAM一样用程序改写。
它的容量是256个字节(00h-0ffh),有A2、A1、A0三位地址,可见I²
C总线上可以连接8片AT24C02A,它的寻址字节是1010A2A1A0R/W。
DIP封装的AT24C02A芯片管脚图和功能描述如图2-10所示,其中A2、A1、A0是芯片地址线,单片使用时接地,SCL是串行移位时钟端,SDA是串行数据或地址端,CPU通过SDA访问芯片,WP是写保护端,接高电平时芯片只能读。
如图2-7为AT24C02A芯片管脚及其描述如图2-8为AT24C02A芯片读写时序图。
图2-7AT24C02A芯片管脚及其描述
图2-8为AT24C02A芯片读写时序图
3硬件设计
3.1系统硬件设计总框图
系统原理图设计如图3-1所示,AT89C51单片机硬件系统实现如下功能:
(1)控制时钟芯片DS1302读取日期和时间,设置初值;
(2)控制CH451,通过液晶屏显示时间和日期;
(3)控制LED8*8点阵通过界面切换实现交通指挥;
(4)控制24C02存储器实现实时数据存储和查询。
图3-1系统原理图
3.2LED8*8点阵交通灯界面设计基础
LED8*8点阵电路如图