电子电工课程设计LED.docx
《电子电工课程设计LED.docx》由会员分享,可在线阅读,更多相关《电子电工课程设计LED.docx(21页珍藏版)》请在冰豆网上搜索。
电子电工课程设计LED
电子电工课程设计
题目:
LED汉字点阵显示系统设计
成员:
信息科学与工程学院电子信息系
2010年7月5日
1.设计任务…………………………...3
2.方案论证与比较…………………3
2.1显示部分……………………………….3
2.2数字时钟……………………………….3
2.3温度采集部分………………………….4
2.4芯片选择……………………………….4
2.5闹铃方式的选择……………………….4
2.6止闹方式的选择……………………….4
2.7串口通讯芯片的选择………………….4
2.8电源模块……………………………..…4
3.总体方案……………………….5
3.1工作原理……………………………….5
3.2总体设计……………………………….5
4.系统硬件设计………………6
4.1AT89S52单片机最小系统…………..6
4.2温度测量模块………………………..6
4.3时钟模块……………………………..7
4.4键盘模块……………………………..8
4.5LED点阵显示模块………………….8
4.6电源的选择…………………….…….9
4.7PC机通讯…………………………...10
4.8整体电路…………………………….10
5.系统软件设计………………….11
5.1主程序流程………………………….11
5.2扫描子程序………………………….12
5.3时间程序…………………………….12
5.4PC机串口通讯程序………………...14
5.5亮度调节程序…………………….…15
5.6温度程序…………………………….16
6.设计总结…………………...17
7.参考资料……………….….18
附录……………………………….…18
1任务设计
1.自制一台简易16行*64列点阵显示的LED电子显示屏;
2.LED显示屏亮度连续可调。
3.实现信息的左右滚屏显示,预存信息的定时循环显示;
4.实现实时时间的显示,显示屏数字显示:
时∶分∶秒(例如18∶38∶59);
5.增大到10组(每组汉字8个或16个数字和字符)预存信息,信息具有掉电保护;
6.实现和PC机通讯,通过PC机串口直接对显示信息进行更新(须做PC机客户程序);
7.室温的测量
8.定时闹铃
9.整点报时
10.非接触止闹
2、方案论证
2.1显示部分:
动态显示,对一幅画面进行分割,对组成画面的各部分分别显示,是动态显示方式。
动态显示方式方式,可以避免静态显示的问题。
但设计上如果处理不当,易造成亮度低,闪烁问题。
因此合理的设计既应保证驱动电路易实现,又要保证图像稳定,无闪烁。
动态显示采用多路复用技术的动态扫描显示方式,复用的程度不是无限增加的,因为利用动态扫描显示使我们看到一幅稳定画面的实质是利用了人眼的暂留效应和发光二极管发光时间的长短,发光的亮度等因素.我们通过实验发现,当扫描刷新频率(发光二极管的停闪频率)为50Hz,发光二极管导通时间≥1ms时,显示亮度较好,无闪烁感.。
2.2.数字时钟
本方案采用Dallas公司的专用时钟芯片DS1302。
该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。
为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。
当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。
而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。
2.3温度采集部分
采用温度传感器DS18B20。
DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为0.5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。
2.4芯片的选择
选取串口输入,使用较少。
所以我们选用串口输入。
串口输入我们可以选用芯片有74HC595、74LS164、TPIC6B595。
但是74HC595和74LS164两种芯片必须加驱动才能驱动LED,而TI公司的DMOS器件TPIC6B595,除具有TTL和CMOS器件中移位寄存器595的逻辑功能外,其最大的特点是驱动功率大,可直接用作LED的驱动。
2.5闹铃方式的选择
采用录音放音芯片1420闹铃,先对录放音设备录入一段音乐,当到设定时间时,单片机控制录放音设备放音。
采用录放音电路铃声可以自己预先设定一段自己喜欢的音乐,符合电器设备人性化的要求。
且1420芯片可以分段录音,还具有语音报时功能。
2.6止闹方式的选择
采取光电传感器,当用一物体遮挡光电传感光电传感器向单片机接口送出一个低电平,单片机立即向发音设备发出停止信号止闹。
光电传感器价格便宜,线路简单,易于控制。
2.7串口通讯芯片的选择
AT89S52串行口采用的是TTL电平,因此必须的有电平转换电路,可以选择1488,1489,MAX232A.
采用单电源电平转换芯片MAX232A可以使电路变得简单,可靠。
2.8电源模块
采用200W/5V直流稳压电源作为系统电源,不仅功率上可以满足系统需要,不需要更换电源,并且比较轻便,使用更加安全可靠
3、总体方案
3.1工作原理:
利用单片机AT89S52单片机作为本系统的中控模块。
单片机可把由DS18B20、DS1302读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。
点阵LED电子显示屏显示器为主要的显示模块,把单片机传来的数据显示出来,并且可以实现滚动显示。
利用光电传感器来实现非接触止闹功能。
在显示电路中,主要靠按键来实现各种显示要求的选择与切换。
3.2总体设计
设计总体框图如图1
4、系统硬件设计(单元电路设计及分析)
4.1AT89S52单片机最小系统:
最小系统包括晶体振荡电路、复位开关和电源部分。
图2为AT89S52单片机的最小系统。
4.2温度测量模块:
温度测量传感器采用DALLAS公司DS18B20的单总线数字化温度传感器,测温范围为-55℃~125℃,可编程为9位~12位A/D转换精度,测温分辨率达到0.0625℃,采用寄生电源工作方式,CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路。
接口电路如图3所示。
图3DS18B20测量电路
4.3时钟模块
时钟模块采用DS1302芯片,DS1302是DALLAS公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31字节静态RAM通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM指示决定采用24或12小时格式DS1302与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线1RES复位2I/O数据线3SCLK串行时钟时钟/RAM的读/写数据以一个字节或多达31个字节的字符组方式通信DS1302工作时功耗很低保持数据和时钟信息时功率小于1mW,其接线电路如图4
图4时钟电路
4.4键盘模块
键盘、状态显示模块:
为了使软件编程简单,本设计利用可编程芯片8255。
接法如表1所示。
PA口接按键,PC口则用于控制状态显示所用LED点阵。
每个按键都通过一个10K的上拉电阻接电源+Vcc,按键的另一端接地。
当有键按下时,与该键相连的PA口的相应位变为低电平,单片机检测到该变化后即转到相应的键处理程序,同时在程序中点亮LED点阵。
模块电路如图5
图5键盘电路
4.5LED显示模块
点阵数据串行输入,器件为移位寄存器TPIC6B595595,门控和扫描信号常以16点阵为一行进行并行处理。
在点阵显示中以4×8个LED点阵构成一个LED显示单元,采用行共阳列共阴的编排方式。
其驱动分为行列两部分,分别来自于行、列移位寄存器,行数据是扫描数据,16行中每次只有一行被驱动,采用逐行扫描方式,列数据则为汉字的点阵码。
。
对于字符和图形显示也可以用点阵处理,其显示原理和方法相同.电路如图6
图6LED显示电路
4.6电源选择:
200W/5V的直流稳压电源更加安全电路图如图7
图7电源电路
4.7PC机通讯
MAX232是标准的串口通信接口,对于一般的双向通讯,只需要使用串行输入口RXD(第3脚)、串行输出TXD(第2脚)和地线(第7脚)。
图8串口通讯
4.8整体电路
系统整体电路如下:
图9整体电路
5、系统软件设计
5.1主程序如图10
5.2显示子程序流程如图11
开始
查找显示汉字数据放入RAM中
将数据串行传入TPIC6B595
行扫描
32行是否扫完
返回
图11显示子程序流程
5.3显示时间子程序流程如图12
开始
DS1302初始化
从DS1302中读数据,并放入RAM
调用显示子程序
显示时间
图12时间子程序流程图
5.4与PC串口通讯程序
开始
串口通讯初始化
等待PC机发联络信号
是否接受到信号
将接受到的数据放到指定区域
数据发送是否完毕
返回
图13串口通讯程序
5.5LED亮度调节
开始
键盘扫描
“亮度”键是否按下
LED显示当前亮度等级
键盘扫描
“+”键按下
“—”键按下
内部RAM中2AH单元所存数据加1
内部RAM中2AH单元所存数据减1
返回
N
Y
图14LED亮度调节
5.6温度测量流程图如图15
开始
DS18B20初始化
从DS18B20中读出数据,放入RAM
在LED点阵中显示温度
返回
图15温度测量程序流程图
6、设计总结
我们一致选择控制类题目A(LED点阵),从基本方案的制定,在到硬件电路的选择,到制作电路制作。
在此期间我们遇到很多困难,几乎没有说过一次好觉,尽管很艰苦,但是我们各自分工,相互协作,一次又一次品尝到了解决问题的喜悦,最终完成了要求的全部功能,并加入了一些创新的部分。
在竞赛中我们发现了自己知识的不足,通过四天三夜的奋斗,也可以说四天三夜的学习,我们学到了很多东西,最重要的是我们学会了一种精神————永不放弃。
在以后的时间里面我们会用这种精神去学习,更上一层楼。
7、参考资料
[1]《基于单片机结构的智能系统设计与实现》沈红卫编电子工业出版社
[2]《单片机原理与接口技术》黄惠媛编海洋出版社
[3]《单片微型计算机原理及应用》张毅坤陈善久编西安电子科技大学出版社
[4]《8051单片机实践与应用》吴金戌沈金阳郭庭吉编清华大学出版社
附录:
例:
整屏四个字一起显示的程序
SEREQUP1.0;TPIC6B595第3脚
OEEQUP1.1;TPIC6B595第8脚
RCKEQUP1.2;TPIC6B595第12脚
MREQUP1.3;TPIC6B595第9脚
SRCLKEQUP1.4;TPIC6B595第13脚
ORG0000H
LJMPMAIN
ORG0100H
;**************************主程序**********************************
MAIN:
MOVSP,#70H
SETBOE
MOV2BH,#00H
MOV27H,#00H
START:
;初始化寄存器RAM单元
MOVR0,#30H
MOVR1,#64H;30H~6FH单元清零
MOVA,#00H
ST:
MOV@R0,A
INCR0
DJNZR1,ST
;2Dh------寻址偏址;整屏四个字一起显示
LOOP:
MOVDPTR,#TAB;赋查表初值
MOVR3,#56
PLAY:
MOV2DH,#00H
MOV2FH,#10H
GG:
LCALLLINE16;扫描显示一次
MOV2DH,#00H
DJNZ2FH,GG
MOVA,DPL
CLRC
ADDA,#16
MOVDPL,A
MOVA,DPH
ADDCA,#00H
MOVDPH,A
DJNZR3,PLAY
SJMPSTART
LINE16:
MOV2BH,#16;扫16行,2BH放后还剩几行
FF:
LCALLLINE1;扫描显示一行子程序
DJNZ2BH,FF;扫描行直到16行扫完再转
RET
LINE1:
LCALLMSTR;将显示的内容移入内存单元
LCALLSEND;发送串口子程序
LCALLXH;选通行子程序
RET
MSTR:
;显示内容移入内存单元
MOVR0,#30H
MOVR4,#9
MOVA,2DH;
BB:
MOVCA,@A+DPTR
MOV@R0,A
INCR0
MOVA,2DH
ADDA,#16;加16移到下一行
MOV2DH,A
DJNZR4,BB
MOVA,2DH
SUBBA,#143
MOV2DH,A
RET
;$$$$$$$$$$$$$$$$$$$$$$$$$$$发送数据到串口子程序$$$$$$$$$$$$$$$$$$$$$$$$$
SEND:
MOVR0,#30H
MOVR5,#8;一行有8个字节,如每次显示字数不同要作相应改动
SETBOE
SETBMR
CLRSRCLK
CLRRCK
SETBP1.6
SETBP1.7
LQ:
CLRC
MOVR2,#8
MOVA,@R0
;CPLA;TPIC6B595应该不用这一步
LCALLDD1;调用显示一个字节的子程序
INCR0;指向下一个显示单元
DJNZR5,LQ
RET
DD1:
CLRSRCLK;清串行CP端
RLCA;
MOVSER,C
SETBSRCLK;触发串行CP端
DJNZR2,DD1;每个字节移8次够了向下执行
RET
;选通行子程序
XH:
CLRRCK;将输出CP变成低电平为上升沿做准备
NOP
SETBRCK
CLRP1.6
;CLRP1.7
MOVA,27H
MOVP0,A
CLROE
LCALLDE25MS
INCA
SETBOE
SETBP1.6
MOVA,27H
ANLA,#0F0H
SWAPA
ADDA,#01H
SWAPA
MOV27H,A
CLRMR
SETBMR
RET
DE25MS:
MOVR5,#09H
DEL2:
MOVR6,#0FH
DEL3:
MOVR7,#01H
DJNZR7,$
DJNZR6,DEL3
DJNZR5,DEL2
RET
TAB:
字库
END