基于单片机的点阵电子显示屏的设计.docx
27山东华宇职业技术学院邢台学院 专业 电气自动化 班级 电气自动化一班 学号 2008* 姓名 * 指导教师 * 毕业设计(论文)任务书 毕业设计(论文)题目: 基于单片机的电子显示屏的设计 专业: 电气自动化 姓名: * 毕业设计(论文)的内容要求: 本次论文的设计是通过查询资料,应用单片机,LED数码管来设计一个包括数字时钟,温度显示,闹铃以及止闹功能的显示屏。 指导教师(签名): 系主任: 年 月 日毕业设计开题报告 2、在老师指导下独立进行调查研究、搜集资料、分析综合、推理论证和系统表述; 3、训练和提高逻辑思维能力、语言表达能力、写作能力以及设计、绘图等技能; 4、注重培养创新意识、专业技能,以及分析问题解决问题的能力。二、课题设计(论文)提纲1. 学习单片机的基础知识,查找相关资料。2. 根据相关资料认真学习基础知识。3. 了解电子显示屏的特点设计论文方案,并进行比较,设计硬软件的设计、编写程序一、课题设计(论文)目的及意义目的: 通过本次的设计,能够让我们更好的掌握单片机的知识,从而更好地掌握点阵式电子显示屏的设计方法.4. 意义: 1、在本次设计中能综合运用学过的基本理论、基本知识、基本技能,并在毕业论文写作过程中拓宽、深化、升华;并进行调试和测量。5. 编写毕业论文四、课题设计(论文)参考文献; 3单片机应用技术 周平 伍云辉 编 电子科技大学出版社48051单片机实践与应用 吴金戌 沈金阳 郭庭吉 编 清华大学出版社5电子设计竞赛赛题解析 黄正谨等编 东南大学出版社 毕业设计(论文)指导教师意见书摘 要LED大屏幕显示系统,以AT89S52单片机为核心,由键盘显示、录放音模块、光电开关、温度采集、定时闹铃、LED大屏幕显示等功能模块组成。基于题目基本要求,本系统对时间显示和大屏幕显示进行了重点设计。此外,扩展单片机外围接口、温度采集、非接触式止闹、滚动屏幕显示、语音报时等功能。前 言单片机自20世纪70年代问世以来,以极其高的性能价格比受到人们的重视和关本文所要论述的通过单片机来控制LED点阵显示。 LED电子显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。它是集微电子技术、光电子技术、计算机技术、信息处理技术于一体的显示系统,是目前国际上极为先进的显示媒体。由于它具有发光效率高、使用寿命长、组态灵活、色彩丰富、工作性能稳定以及对室内室外环境适应能力强等优点而日渐成为显示媒体中的佼佼者。在我国改革开放之后,特别是进入90年代国民经济高速增长,对公众场合发布信息的需求日益强烈,LED显示屏的出现正好适应了这一市场形势,因而在LED显示屏的设计制造技术与应用水平上都得到了迅速的提高,生产也得到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。LED显示屏经历了从单色、双色图文显示屏,到图像显示屏的发展过程。 随着信息产业的高速发展,LED显示屏作为信息传播的一种重要手段成为现代信息化社会的一个闪亮标志。近年LED显示屏已广泛应用于室内、外需要进行服务内容和服务宗旨宣传的公众场所如银行、营业部、车站、机场、港口、体育场馆等信息的发布,政府机关政策、政令,各类市场行情信息的发部和宣传等。目前,对于那些需要显示的信息量不是很大,分辨率不是很高,又需要制造成本相对比较低的场合,使用大、小屏幕LED点阵显示器是比较经济适用的,它可以用单片机控制实现显示字符、数字、汉字和简单图形,可以根据需要使用不同字号、字型。屏;1.2.2 LED显示屏亮度连续可调。1.2.3 实现信息的左右滚屏显示,预存信息的定时循环显示;1.2.4 实现实时时间的显示,显示屏数字显示: 时分秒(例如 183859);1.2.5增大到10组(每组汉字8个或16个数字和字符)预存信息,信息具有掉电保护;1.2.6实现和PC机通讯,通过PC机串口直接对显示信息进行更新(须做PC机客户程序);1.3 创新部分1.3.1 室温的测量1.3.2 定时闹铃1.3.3 整点报时英文字母组成的句子,通过按键切换显示内容;1.1.5 能显示4组特定汉字组成的句子,通过按键切换显示内容。1.2发挥部分1.2.1自制一台简易16行*64列点阵显示的LED电子显示.3.4 非接触止闹 第二章 方案论证2.1 显示部分 显示部分是本次设计最核心的部分,对于LED8*8点阵显示有以下两种方案:数字时钟是本设计的重要的部分。根据需要,可利用两种方案实现。方案一:本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将时字节清零。该方案具有硬件电路简单的特点,但当单片机不上电,程序将不执行。且由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。方案二:本方案采用Dallas公司的专用时钟芯片DS1302。该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。基于时钟芯片的上述优点,本设计采用方案二完成数字时钟的功能。2.3 温度采集部分品追求多样化,多功能化,所以我们决定给系统加上温度测量显示模块,方便人们的生活,使该设计具有人性化。方案一:采用热敏电阻,可满足 40 摄氏度至 90 摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测小于 1 摄氏度的信号是不适用的。 方案二:采用温度传感器DS18B20。DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为0.5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。基于DS18b20的以上优点,我们决定选取DS18b20来测量温度。2.4 芯片的选择方案一:采取并口输入,占用大量I/O口资源方案二:选取串口输入,使用较少。所以我们选用串口输入。串口输入我们TL 和CMOS 器件中移位寄存器595 的逻辑功能外, 其最大的特点是驱动功率大, 可直接用作LED的驱动。综合以上比较,我们选取TPIC6B595来驱动LED点阵。2.5 闹铃方式的选择录放音设备闹铃。 一般钟表都具有闹钟功能,到设定时间,便自动启动闹钟,发出音乐提醒人们,再由人按下止闹按钮停止闹钟工作。 一般每天只能设置一次闹钟、并要由人按下按钮止闹,使用不是很方便。智能处理器应用可改变这种状况,一天可按自己需要设置闹钟的开关、多次闹钟设置并可用非接触方式止闹。方案一:采取远程红外遥控止闹,遥控器发出特定红外信号时,单片机接受到信号,向发音设备发出停止信号止闹。红外遥控止闹控制距离远,但是价格昂贵,增加了制造成本。方案二:采取光电传感器,当用一物体遮挡光电传感光电传感器向单片机接口送出一个低电平,单片机立即向发音设备发出停止信号止闹。光电传感器价格便宜,线路简单,易于控制。基于以上比较我们决定采用光电传感器止闹。2 AT89S52串行口采用的是TTL电平,因此必须的有电平转换电路,可以选择1488, 方案二:采用单电源电平转换芯片MAX232A可以使电路变得简单,可靠。基于以上分析,我们选用方案二,选用芯片MAX232A2.8 电源模块 方案一:采用干电池作为LED点阵系统的电源,由于点阵系统耗电量较大,使用干电池需经常换电池,不符合节约型社会的要求。点阵系统要悬挂在墙上,电池总量大,使用会有较大安全隐患。 方案二:采用200W/5V直流稳压电源作为系统电源,不仅功率上可以满足系统需要,不需要更换电源,并且比较轻便,使用更加安全可靠 基于以上分析,我们决定采用方案二第三章 总体方案3.1 工作原理利用单片机AT89S52单片机作为本系统的中控模块。单片机可把由DS18B20、DS1302读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。点阵LED电子显示屏显示器为主要的显示模块,把单片机传来的数据显示出来,并且可以实现滚动显示。利用光电传感器来实现非接触止闹功能。在显示电路中,主要靠按键来实现各种显示要求的选择与切换。3.2 总体设计设计总体框图如图1第 4.1 AT89S52单片机最小系统最小系统包括晶体振荡电路、复位开关和电源部分。图2为AT89S52单片机的最小系统。图2 最小系统电路图4.2 温度测量模块温度测量传感器采用DALLAS公司DS18B20的单总线数字化温度传感器,测温范围为-55125,可编程为9位12位A/D转换精度,测温分辨率达到0.0625,采用寄生电源工作方式, CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路。接口电路如图3所示。图3 DS18B20测量电路4.3 时钟模块时钟模块采用DS1302芯片,DS1302 是DALLAS 公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31 字节静态RAM 通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自图4 时钟电路4.4 键盘模块键盘、状态显示模块:为了使软件编程简单,本设计利用可编程芯片8255。接法如表1所示。PA口接按键,PC口则用于控制状态显示所用LED点阵。每个按键都通过一个10K的上拉电阻接电源+Vcc,按键的另一端接地。当有键按下时,与该键相连的PA口的相应位变为低电平,单片机检测到该变化后即转到相应的键处理程序,同时在程序中点亮LED点阵。模块电路如图5图5 键盘电路4.5 LED显示模块点阵数据串行输入, 器件为 移位寄存器TPIC6B595595, 门控和扫描信号常以16 点阵为一行进行并行处理。在点阵显示中以4×8个L ED 点阵构成一个L ED 显示单元, 采用行共阳列共阴的编排方式。其驱动分为行列两部分, 分别来自于行、列移位寄存器, 行数据是扫描数据, 16 行中每次只有一行被驱动, 采用逐行扫描方式, 列数据则为汉字的点阵码。对于字符和图形显示也可以用点阵处理, 其显示原理和方法相同.电路如图6 图6 LED显示电路4.6电源选择 200W/5V的直流稳压电源更加安全电路图如图7 图7 电源电路4.7 PC机通讯 MAX232是标准的串口通信接口,对于一般的双向通讯,只需要使用串行输入口RXD(第3脚)、串行输出TXD(第2脚)和地线(第7脚)。MAX232 图8 串口通讯4.8整体电路系统整体电路如下:图9 整体电路第五章 系统软件设计5.1主程序5.2显示子程序流程开始查找显示汉字数据放入RAM中将数据串行传入TPIC6B595行扫描32行是否扫完返回图11 显示子程序流程5.3 显示时间子程序流程开始DS1302初始化从DS1302中读数据,并放入RAM调用显示子程序显示时间图12 时间子程序流程图5.4 与PC串口通讯程序开始串口通讯初始化等待PC机发联络信号是否接受到信号将接受到的数据放到指定区域数据发送是否完毕返回图13 串口通讯程序5.5 LED亮度调节开始键盘扫描“亮度”键是否按下LED显示当前亮度等级键盘扫描“+”键按下“”键按下内部RAM中2AH单元所存数据加1内部RAM中2AH单元所存数据减1返回NY图 14 LED亮度调节5.6温度测量流程图开始DS18B20初始化从DS18B20中读出数据,放入RAM在LED点阵中显示温度返回 图15 温度测量程序流程图第六章 测量及其结果分析6.1 基本部分测试与分析6.11 测试仪器:秒表 、温度表、万用电表、WAVE仿真器6.12基本要求部分的测试与分析:(1)系统上电后,全屏点亮,没有暗点。接着显示时间。按“#”键后时扫描键盘,当有110键按下时,分别显示十段设定的数字、英文或汉字。(2)显示时间时通过与秒表对比,测试的系统时间准确。6. 2 发挥部分测试与分析(1) 当按下#后在按下进入亮度调节,按下“+”键时,亮度增加。按下“”键时,亮度变弱。(2) 可以实现文字左右移动(3) 按下“设置时间”键,观察到“钟表” 二极管点亮,此时可对时间进行设置。按下“时间设置“进入时调试,按“+”键时间加。在按下“切换”键时,进入分调整模式,按下“+”键,分增加。按下“选择”键时,分调整模式改为秒调整模式,按下“+”键秒增加。经测试该步可以很好的实现。调整时间完毕后,再按一下“闹钟设置”进入闹铃设置状态,按下“+”键设定“时”增加,在按下“选择”键进入分的设置,按下“+”键设定“分”增加。在按下“选择”键进入秒设置模式,按“+”键秒增加。(4)系统可以显示10组,每组8个汉字,完成要求6.3 创新部分测试与分析(1)温度测量: 键盘切换现场环境温度显示:按“功能”键选择“温度”,将温度传感器和温度计放入不同的测试环境中进行测试,结果如表1所示。 表1 与标准温度计测量值比较表温度计示值(摄氏度)10.325.249.770.185.5温度输出(摄氏度)1025507086由测试知,数字钟的输出与温度计值基本上相等,误差不大于0.5度。(2) 当到设定时间时,开始访一段音乐,完成定时闹铃功能。(3)当用手遮挡光电传感器后,停止放音。手拿开后,不再放音,直到到设定时间。完成非接触止闹功能设计总结 从拿到试题,我们就开始准备关于本次课题的材料,每天畅游在图书馆中,从基本方案的制定,在到硬件电路的选择,到制作电路制作,最后进行程序调试。在此期间我们遇到很多困难,几乎没有说过一次好觉,尽管很艰苦,但是我们各自分工,相互协作,一次又一次品尝到了解决问题的喜悦,最终完成了要求的全部功能,并加入了一些创新的部分。在此,我要衷心的感谢张胜云老师和我的同学们,如果没有他们,我将不会这么快就做出这次的毕业设计。此外,在设计中我发现了自己知识的不足,从这次设计中我学到了很多东西,最重要的是我学会了一种精神永不放弃。在以后的时间里面我们会用这种精神去学习,更上一层楼。谢 辞 当我以学子的身份踏入大学校门的那天起,便已注定我将在这里度过人生中最美丽的青春年华。提笔写下“谢辞”,我才惊觉自己即将真正离开,人生亦从此展开新的画卷。尽管不舍,却更珍惜,因为我的生命中有那么多可爱的人值得感激。他们使我的大学生活充满了色彩,无论收获、遗憾,对我来说都是一笔宝贵的财富。三年的大学生活不知不觉中就要结束了,在这段难忘的生活中,有我许多美好的回忆。在这份大学的最后一页里,首先感谢学院给我们提供这个能自我展示的平台,感谢我们的指导老师,高健老师.你们从一开始的论文方向的选定,到最后的整篇文论的完成,都非常耐心的对我进行指导。给我提供了大量数据资料和建议,告诉我应该注意的细节问题。谢谢我们班主任老师,从大一到大二是你的悉心教导、孜孜不倦我们才能顺利的完成学业。我要感谢在我二年的学习中无私传授我知识的各位老师,是你们将自己宝贵的财富无私地奉献给了我们,让我们能在学业上有所成绩;是你们让我倍感教师职业的伟大,交给我们知识,又不忘教育我们如何做人!在此,我还要感谢寝室的兄弟们在我完成论文的过程中给予我的帮助和鼓励,也是他们陪我度过这三年的生活。最后,再次对关心、帮助我的老师和同学表示衷心地感谢!祝你们永远幸福快乐!参考资料1基于单片机结构的智能系统设计与实现 沈红卫 编 电子工业出版社2单片机原理与接口技术 黄惠媛 编 海洋出版社3单片机应用技术 周平 伍云辉 编 电子科技大学出版社48051单片机实践与应用 吴金戌 沈金阳 郭庭吉 编 清华大学出版社5电子设计竞赛赛题解析 黄正谨等编 东南大学出版社 附 录例:整屏四个字一起显示的程序SER EQU P1.0 ; TPIC6B595 第3脚OE EQU P1.1;TPIC6B595 第8脚RCK EQU P1.2;TPIC6B595 第12脚MR EQU P1.3;TPIC6B595 第9脚SRCLK EQU P1.4;TPIC6B595 第13脚ORG 0000HLJMP MAINORG 0100H;*主程序*MAIN: MOV SP,#70HSETB OE MOV 2BH,#00HMOV 27H,#00HSTART: ;初始化寄存器RAM单元MOV R0, #30HMOV R1,#64H ;30H6FH单元清零MOV A, #00HST: MOV R0,A INC R0 DJNZ R1,ST;2Dh-寻址偏址 ;整屏四个字一起显示LOOP:MOV DPTR,#TAB;赋查表初值MOV R3,#56PLAY: MOV 2DH,#00H MOV 2FH,#10HGG: LCALL LINE16;扫描显示一次MOV 2DH,#00HDJNZ 2FH,GGMOV A,DPLCLR CADD A, #16MOV DPL ,AMOV A, DPHADDC A ,#00HMOV DPH, ADJNZ R3,PLAYSJMP STARTLINE16: MOV 2BH,#16;扫16行,2BH放后还剩几行FF: LCALL LINE1;扫描显示一行子程序DJNZ 2BH,FF;扫描行直到16行扫完再转RETLINE1:LCALL MSTR;将显示的内容移入内存单元 LCALL SEND;发送串口子程序 LCALL XH;选通行子程序 RETMSTR: ;显示内容移入内存单元 MOV R0,#30H MOV R4,#9 MOV A,2DH;BB: MOVC A,A+DPTR MOV R0,A INC R0 MOV A,2DH ADD A,#16;加16移到下一行 MOV 2DH,A DJNZ R4,BB MOV A,2DH SUBB A,#143 MOV 2DH,A RET;$发送数据到串口子程序$SEND:MOV R0,#30H MOV R5,#8 ;一行有8个字节,如每次显示字数不同要作相应改动 SETB OE SETB MR MOV SER,C SETB SRCLK ;触发串行CP端 DJNZ R2,DD1;每个字节移8次够了向下执行 RET;选通行子程序XH: CLR RCK ;将输出CP变成低电平为上升沿做准备 NOP SETB RCK CLR P1.6 ;CLR P1.7 MOV A,27H SWAP A MOV 27H,ACLR MR SETB MR RETDE25MS: MOV R5,#09H DEL2: MOV R6,#0FH DEL3: MOV R7,#01H DJNZ R7,$ DJNZ R6,DEL3 四、学生毕业设计(论文)成绩评定