单片机的应用论文600字怎样写
单片机的应用论文600字怎样写
一、毕业设计题目及要求 (2个) 1、基于单片机控制的电动机Y-△启动的设计 要求:1)控制器为单片机,电动机为三相异步电动机;2)启动时间为3秒;3)由按键设置电动机Y-△运行、停止。 2、基于单片机控制的可调直流稳压电源的设计 要求:1)控制器为单片机,电压输出范围为0-10V,电压精度为1V;2)通过数码管显示电压值;3)由按键设置电压值。 二、毕业设计用到的主要软件(及功能) 毕业设计用到的主要软件(及功能):Keil 51(源程序编译),Proteus(电路仿真),AutoCAD(绘图), Visio(绘流程图), Protel 99SE(原理图电路设计,PCB板制作) 三、单片机方面毕业设计要求 1、学会编写程序(用C语言或汇编语言),用Keil 51软件对源程序进行编译。 2、学会用Proteus电路仿真软件对所设计的硬件电路进行仿真。 3、在写毕业论文时,学会用Word、AutoCAD, Visio,Protel 99SE等软件对程序流程图、电路原理图等进行绘制。 相关答案 ↓位朋友,以51单片机为例。51现在很多都是用仿真器来进行在线调试的,而每个公司的仿真器都会有自带的编程软件,当然,跟keil是差不了多少的。 步骤大体如下: 新建,进行程序的编写 连上仿真器或烧写器,这一步有可能要对仿真器或烧写器进行设置,具体可看它们的使用说明 对程序进行编译,这一步会自动检测你的程序有没错,如果有错,是不能进入下一步的如果你用的是仿真器,这一步编译成功后就可以直接运行进行在线调试了。 如果用的是烧写器,那就进行烧写 各个软件和调试方法会有些不同,但大体就是这样,一些调试工具的说明书也有很详细的说明。 学参数测量技术涉及范围广,特别是微电压、微电流、高电压以及待测信号强弱相差极大的情况下,既要保证弱信号的测量精度又要兼顾强信号的测量范围,在技术上有一定的难度。传统的低成本仪表在测量电压、电阻时都采用手动选择档位的方法来转换量程。在使用中,当忘记转换档位时,会造成仪表测量精度下降或损坏。 现代电子测量对系统的精度要求越来越高且智能化程度也越来越高。全量程无档自动量程转换电压表和电阻表是在保证测量精度不下降的前提条件下省去手动转换量程的工作,得到了广泛应用。 本文介绍了一种基于AT89S52 单片机 的智能多用表。该表能在单片机的控制下完成直流电压、电阻和直流电流的测量。测量电流部分采用了简单的I/V转换电路完成测试;测量电压部分结合模拟开关CD4051和运算放大器OP07构成程控放大器,实现了自动量程转换;测量电阻部分也由模拟开关CD4051和运算放大器OP07相结合,在单片机控制下完成了自动量程转换。电流、电压和电阻的最终测量信号都在单片机的控制下由12位A/D转换器TLC2543进行采集,采集的信号经单片机数据处理后通过LCD(12864)显示出来,测量结果还可以由带有串行EEPROM的CPU存储器和监控器的X25045进行多个数据保存。 关键词:TLC2543 自动量程转换 程控增益放大器 电压 电阻 电流 目录 摘要1 Abstract 2 第一章 绪论 5 1 概述 5 2 智能仪器/仪表国内外发展概况 5 3 课题研究目的及意义 6 第二章 系统结构及功能介绍 8 1 系统功能和性能指标 8 1 仪表功能 8 2 性能指标 8 3 本机特色 8 4 系统使用说明 9 2 系统工作原理概述 9 第三章 方案设计与论证 11 1 量程选择的设计与论证 11
试题: A甲1025参赛试题: 点阵电子显示屏(A题)参赛学生:冯元伟 物理与微电子学院 关童 物理与微电子学院 田立志 材料学院包装工程 参赛学校:山东大学 指导老师:陈延俊 秦峰 王延伟 仪维2006年9月11日目 录第一部分 摘要 ……………………………………………………3第二部分 设计任务………………………………………………4 1基本要求…………………………………………………………4 2发挥部分………………………………………………………………4 3创新部分………………………………………………………………4 2.方案论证与比较………………………………………5 1 显示部分………………………………………………………………5 2 数字时钟………………………………………………………………5 3 温度采集部分…………………………………………………………6 4 芯片选择………………………………………………………………6 5 闹铃方式的选择………………………………………………………6 6 止闹方式的选择………………………………………………………6 7 串口通讯芯片的选择…………………………………………………6 总体方案………………………………………………7 1 工作原理………………………………………………………………7 2 总体设计………………………………………………………………7 4.系统硬件设计…………………………………………7 1 AT89S52单片机最小系统…………………………………………8 2 温度测量模块………………………………………………………8 3 时钟模块……………………………………………………………8 4 键盘模块……………………………………………………………9 5 LED点阵显示模块…………………………………………………10 6 电源的选择…………………………………………………………11 7 PC机通讯……………………………………………………………12 8 整体电路……………………………………………………………12 5.系统软件设计…………………………………………7 1 主程序流程…………………………………………………………13 2 扫描子程序…………………………………………………………14 3 时间程序……………………………………………………………15 4 PC机串口通讯程序…………………………………………………15 5 亮度调节程序………………………………………………………16 6 温度程序……………………………………………………………17 6.测试与结果分析……………………………………17 1 基本部分测试与分析………………………………………………17 2 发挥部分测试与分析………………………………………………18 3 创新部分测试与分析………………………………………………18 7.设计总结……………………………………………18 8.参考资料……………………………………………18附录……………………………………………………………18例程…………………………………………………………18摘要 LED大屏幕显示系统,以AT89S52单片机为核心,由键盘显示、录放音模块、光电开关、温度采集、定时闹铃、LED大屏幕显示等功能模块组成。基于题目基本要求,本系统对时间显示和大屏幕显示进行了重点设计。此外,扩展单片机外围接口、温度采集、非接触式止闹、滚动屏幕显示、语音报时等功能。本系统大部分功能由软件来实现,吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。本系统不仅成功的实现了要求的基本功能,发挥部分也得到完全的实现,而且有一定的创新功能。 关键字:单片机 LED大屏幕 滚屏显示 Abstract This large LED display screen system ,based on chip microcomputer AT89S52,is composed by the following functional modules : keyboard displaying ,sound photoelectricity untouched switch,temperature gathering ,timing bell, According to the basic requirements of the subject ,our system stresses on the realization of time displaying and large screen displaying ,Furthermore ,we also extend the primary function ,adding new functions ,such as the single chip peripheral ports ,temperature gathering ,untouched ring-stop, scroll screen display, sound timing and so Adopting the idea of hardware-to-software, most of those functions are realized by softwares, which makes the electrocircuit more concise and the system more stable ,The design achieved and even exceeded all the required basic technical indexes Key words: chip microcomputer large screen display system scroll screen display1任务设计1 基本要求:设计并制作LED电子显示屏和控制器。1 自制一台简易16行*32列点阵显示的LED电子显示屏; 2 自制显示屏控制器,扩展键盘和相应的接口实现多功能显示控制,显示屏显示数字和字母亮度适中,应无闪烁。 3 显示屏通过按键切换显示数字和字母;4 显示屏能显示4组特定数字或者英文字母组成的句子,通过按键切换显示内容;5 能显示4组特定汉字组成的句子,通过按键切换显示内容。2发挥部分:1自制一台简易16行*64列点阵显示的LED电子显示屏;2 LED显示屏亮度连续可调。3 实现信息的左右滚屏显示,预存信息的定时循环显示;4 实现实时时间的显示,显示屏数字显示: 时∶分∶秒(例如 18∶38∶59);5增大到10组(每组汉字8个或16个数字和字符)预存信息,信息具有掉电保护;6实现和PC机通讯,通过PC机串口直接对显示信息进行更新(须做PC机客户程序);3 创新部分 1 室温的测量 2 定时闹铃 3 整点报时 4 非接触止闹 2、方案论证1 显示部分: 显示部分是本次设计最核心的部分,对于LED8*8点阵显示有以下两种方案: 方案一:静态显示,将一帧图像中的每一个二极管的状态分别用0 和1 表示,若为0 ,则表示L ED 无电流,即暗状态;若为1 则表示二极管被点亮。若给每一个发光二极管一个驱动电路,一幅画面输入以后,所有L ED 的状态保持到下一幅画。对于静态显示方式方式,所需的译码驱动装置很多,引线多而复杂,成本高,且可靠性也较低。 方案二:动态显示,对一幅画面进行分割,对组成画面的各部分分别显示,是动态显示方式。动态显示方式方式,可以避免静态显示的问题。但设计上如果处理不当,易造成亮度低,闪烁问题。因此合理的设计既应保证驱动电路易实现,又要保证图像稳定,无闪烁。动态显示采用多路复用技术的动态扫描显示方式, 复用的程度不是无限增加的, 因为利用动态扫描显示使我们看到一幅稳定画面的实质是利用了人眼的暂留效应和发光二极管发光时间的长短, 发光的亮度等因素 我们通过实验发现, 当扫描刷新频率(发光二极管的停闪频率) 为50Hz, 发光二极管导通时间≥1m s 时, 显示亮度较好, 无闪烁感。 鉴于上述原因, 我们采用方案二 2.数字时钟 数字时钟是本设计的重要的部分。根据需要,可利用两种方案实现。 方案一:本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将时字节清零。该方案具有硬件电路简单的特点,但当单片机不上电,程序将不执行。且由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。 方案二:本方案采用Dallas公司的专用时钟芯片DS1302。该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。 基于时钟芯片的上述优点,本设计采用方案二完成数字时钟的功能。3 温度采集部分 能进行温度测量是本设计的创新部分,由于现在用品追求多样化,多功能化,所以我们决定给系统加上温度测量显示模块,方便人们的生活,使该设计具有人性化。 方案一:采用热敏电阻,可满足 40 摄氏度至 90 摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测小于 1 摄氏度的信号是不适用的。 方案二:采用温度传感器DS18B20。DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。 基于DS18b20的以上优点,我们决定选取DS18b20来测量温度。4 芯片的选择 方案一:采取并口输入,占用大量I/O口资源 方案二:选取串口输入,使用较少。所以我们选用串口输入。串口输入我们可以选用芯片有74HC595、74LS164、TPIC6B595。但是74HC595和74LS164两种芯片必须加驱动才能驱动LED,而TI 公司的DMOS 器件TPIC6B595 , 除具有TTL 和CMOS 器件中移位寄存器595 的逻辑功能外, 其最大的特点是驱动功率大, 可直接用作LED的驱动。 综合以上比较,我们选取TPIC6B595来驱动LED点阵。5 闹铃方式的选择 方案一:采用蜂鸣器闹铃,当到设定时间时,单片机向蜂鸣器送出高电平,蜂鸣器发生。采用蜂鸣器闹铃结构简单,控制方便,但是发出的闹铃声音单一。 方案二:采用录音放音芯片1420闹铃,先对录放音设备录入一段音乐,当到设定时间时,单片机控制录放音设备放音。采用录放音电路铃声可以自己预先设定一段自己喜欢的音乐,符合电器设备人性化的要求。且1420芯片可以分段录音,还具有语音报时功能。 基于录音放音芯片1420的以上优点,我们决定采用录放音设备闹铃。 6 止闹方式的选择 一般钟表都具有闹钟功能,到设定时间,便自动启动闹钟,发出音乐提醒人们,再由人按下止闹按钮停止闹钟工作。 一般每天只能设置一次闹钟、并要由人按下按钮止闹,使用不是很方便。 智能处理器应用可改变这种状况,一天可按自己需要设置闹钟的开关、多次闹钟设置并可用非接触方式止闹。 方案一:采取远程红外遥控止闹,遥控器发出特定红外信号时,单片机接受到信号,向发音设备发出停止信号止闹。红外遥控止闹控制距离远,但是价格昂贵,增加了制造成本。 方案二:采取光电传感器,当用一物体遮挡光电传感光电传感器向单片机接口送出一个低电平,单片机立即向发音设备发出停止信号止闹。光电传感器价格便宜,线路简单,易于控制。 基于以上比较我们决定采用光电传感器止闹。7 串口通讯芯片的选择 AT89S52串行口采用的是TTL电平,因此必须的有电平转换电路,可以选择1488,1489,MAX232A 方案一:采用1488或1489芯片实现电平转换,但在使用中发现这两种芯片可靠性不高,且需要正负12V电源,使用麻烦。 方案二:采用单电源电平转换芯片MAX232A可以使电路变得简单,可靠。 基于以上分析,我们选用方案二,选用芯片MAX232A8 电源模块 方案一:采用干电池作为LED点阵系统的电源,由于点阵系统耗电量较大,使用干电池需经常换电池,不符合节约型社会的要求。点阵系统要悬挂在墙上,电池总量大,使用会有较大安全隐患。 方案二:采用200W/5V直流稳压电源作为系统电源,不仅功率上可以满足系统需要,不需要更换电源,并且比较轻便,使用更加安全可靠 基于以上分析,我们决定采用方案二3、总体方案1 工作原理: 利用单片机AT89S52单片机作为本系统的中控模块。单片机可把由DS18B20、DS1302读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。点阵LED电子显示屏显示器为主要的显示模块,把单片机传来的数据显示出来,并且可以实现滚动显示。利用光电传感器来实现非接触止闹功能。在显示电路中,主要靠按键来实现各种显示要求的选择与切换。2 总体设计 设计总体框图如图14、系统硬件设计(单元电路设计及分析) 1 AT89S52单片机最小系统: 最小系统包括晶体振荡电路、复位开关和电源部分。图2为AT89S52单片机的最小系统。2 温度测量模块: 温度测量传感器采用DALLAS公司DS18B20的单总线数字化温度传感器,测温范围为-55℃~125℃,可编程为9位~12位A/D转换精度,测温分辨率达到0625℃,采用寄生电源工作方式, CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路。接口电路如图3所示。图3 DS18B20测量电路3 时钟模块 时钟模块采用DS1302芯片,DS1302 是DALLAS 公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31 字节静态RAM 通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM 指示决定采用24 或12 小时格式DS1302 与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线1 RES 复位2 I/O 数据线3 SCLK串行时钟时钟/RAM 的读/写数据以一个字节或多达31 个字节的字符组方式通信DS1302 工作时功耗很低保持数据和时钟信息时功率小于1mW,其接线电路如图4 图4 时钟电路4 键盘模块 键盘、状态显示模块:为了使软件编程简单,本设计利用可编程芯片8255。接法如表1所示。PA口接按键,PC口则用于控制状态显示所用LED点阵。每个按键都通过一个10K的上拉电阻接电源+Vcc,按键的另一端接地。当有键按下时,与该键相连的PA口的相应位变为低电平,单片机检测到该变化后即转到相应的键处理程序,同时在程序中点亮LED点阵。模块电路如图5 LED显示模块 点阵数据串行输入, 器件为 移位寄存器TPIC6B595595, 门控和扫描信号常以16 点阵为一行进行并行处理。在点阵显示中以4×8个L ED 点阵构成一个L ED 显示单元, 采用行共阳列共阴的编排方式。其驱动分为行列两部分, 分别来自于行、列移位寄存器, 行数据是扫描数据, 16 行中每次只有一行被驱动, 采用逐行扫描方式, 列数据则为汉字的点阵码。。对于字符和图形显示也可以用点阵处理, 其显示原理和方法相同电路如图6 图6 LED显示电路6电源选择: 200W/5V的直流稳压电源更加安全电路图如图7图7 电源电路7 PC机通讯 MAX232是标准的串口通信接口,对于一般的双向通讯,只需要使用串行输入口RXD(第3脚)、串行输出TXD(第2脚)和地线(第7脚)。MAX232逻辑电平的规定如表 表 2 逻辑电平表逻辑值 电平幅值 (v) 0 3+~+15 1 3-~-15 图8 串口通讯8整体电路系统整体电路如下: 图9 整体电路5、系统软件设计1主程序如图2显示子程序流程如图 3 显示时间子程序流程如图12图12 时间子程序流程图4 与PC串口通讯程序5 LED亮度调节图 14 LED亮度调节6温度测量流程图如图15 图15 温度测量程序流程图6、测量及其结果分析1 基本部分测试与分析11 测试仪器: 秒表 、温度表、万用电表、WAVE仿真器12基本要求部分的测试与分析: (1)系统上电后,全屏点亮,没有暗点。接着显示时间。按“#”键后时扫描键盘,当有1~10键按下时,分别显示十段设定的数字、英文或汉字。 (2)显示时间时通过与秒表对比,测试的系统时间准确。 2 发挥部分测试与分析:(1) 当按下#后在按下进入亮度调节,按下“+”键时,亮度增加。按下“—”键时,亮度变弱。(2) 可以实现文字左右移动 (3) 按下“设置时间”键,观察到“钟表” 二极管点亮,此时可对时间进行设置。按下“时间设置“进入时调试,按“+”键时间加。在按下“切换”键时,进入分调整模式,按下“+”键,分增加。按下“选择”键时,分调整模式改为秒调整模式,按下“+”键秒增加。经测试该步可以很好的实现。调整时间完毕后,再按一下“闹钟设置”进入闹铃设置状态,按下“+”键设定“时”增加,在按下“选择”键进入分的设置,按下“+”键设定“分”增加。在按下“选择”键进入秒设置模式,按“+”键秒增加。(4)系统可以显示10组,每组8个汉字,完成要求 3 创新部分测试与分析(1)温度测量: 键盘切换现场环境温度显示:按“功能”键选择“温度”,将温度传感器和温度计放入不同的测试环境中进行测试,结果如表1所示。 表1 与标准温度计测量值比较表 温度计示值(摄氏度) 3 2 7 1 5 温度输出(摄氏度) 10 25 50 70 86 由测试知,数字钟的输出与温度计值基本上相等,误差不大于5度。(2) 当到设定时间时,开始访一段音乐,完成定时闹铃功能。(3)当用手遮挡光电传感器后,停止放音。手拿开后,不再放音,直到到设定时间。完成非接触止闹功能7、设计总结 全心准备了整整一个酷暑,9月8日我们终于拿到了试题,我们一致选择控制类题目A(LED点阵),从基本方案的制定,在到硬件电路的选择,到制作电路制作,最后进行程序调试。在此期间我们遇到很多困难,几乎没有说过一次好觉,尽管很艰苦,但是我们各自分工,相互协作,一次又一次品尝到了解决问题的喜悦,最终完成了要求的全部功能,并加入了一些创新的部分。在竞赛中我们发现了自己知识的不足,通过四天三夜的奋斗,也可以说四天三夜的学习,我们学到了很多东西,最重要的是我们学会了一种精神————永不放弃。在以后的时间里面我们会用这种精神去学习,更上一层楼。8、参考资料 [1]《基于单片机结构的智能系统设计与实现》 沈红卫 编 电子工业出版社 [2]《单片机原理与接口技术》 黄惠媛 编 海洋出版社 [3]《单片机应用技术》 周平 伍云辉 编 电子科技大学出版社 [4]《8051单片机实践与应用》 吴金戌 沈金阳 郭庭吉 编 清华大学出版社 [5]《电子设计竞赛赛题解析》 黄正谨等编 东南大学出版社 附录:例:整屏四个字一起显示的程序SER EQU P0 ; TPIC6B595 第3脚OE EQU P1;TPIC6B595 第8脚RCK EQU P2;TPIC6B595 第12脚MR EQU P3;TPIC6B595 第9脚SRCLK EQU P4;TPIC6B595 第13脚ORG 0000HLJMP MAINORG 0100H;**************************主程序**********************************MAIN: MOV SP,#70HSETB OE MOV 2BH,#00HMOV 27H,#00HSTART: ;初始化寄存器RAM单元MOV R0, #30HMOV R1,#64H ;30H~6FH单元清零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 CLR SRCLK CLR RCK SETB P6 SETB P7LQ: CLR C MOV R2,#8 MOV A,@R0 ; CPL A ;TPIC6B595应该不用这一步 LCALL DD1;调用显示一个字节的子程序 INC R0;指向下一个显示单元 DJNZ R5,LQ RETDD1: CLR SRCLK;清串行CP端 RLC A; MOV SER,C SETB SRCLK ;触发串行CP端 DJNZ R2,DD1;每个字节移8次够了向下执行 RET;选通行子程序XH: CLR RCK ;将输出CP变成低电平为上升沿做准备 NOP SETB RCK CLR P6 ;CLR P7 MOV A,27H MOV P0,A CLR OE LCALL DE25MS INC A SETB OE SETB P6 MOV A,27H ANL A,#0F0H SWAP A ADD A,#01H SWAP A MOV 27H,A CLR MR SETB MR RETDE25MS: MOV R5,#09H DEL2: MOV R6,#0FH DEL3: MOV R7,#01H DJNZ R7,$ DJNZ R6,DEL3 DJNZ R5,DEL2 RETTAB:字库END
单片机的应用论文600字
51在中国似乎用的人最多,不过我不赞成用了,因为前段时间性能强点价格太贵,不过广州有家代理个牌子似乎性价比不错51主要我感觉是atmel和台湾华邦,还有个ST好象AVR虽然我没怎么用过,但是还是要赞一个的,atmel到底功力深厚啊性价比很高,好多以前用51的公司改用它了PIC在抗干扰上这么多年口碑一直不错,不过似乎有个软肋,就是它的C语言编译器貌似一直没有太好的MSP430,低功耗中应该它是老大了,价格稍微归了点,不过它带的AD很值得,现在它的2XX系列好象价格便宜了点凌阳,做语音很不错中国人主要用的好象就这些了51嘛keil,AVR是IAR这个软件公司帮它做了个C开发平台,当然也有开源的GCC,不过GCC自由性高了些,建议新手别用,430的C平台也是IAR做的,PIC有C平台但是前些年不好用51我现在比较不出来了,因为彻底抛弃它了
51系列单片机占绝大部分市场PIC在汽车电子和工业控制中比较常用仿PIC的台湾单片机在玩具行业比较普遍AVR是凭借ATMEL凭借51市场打下的市场渠道和本身的优势迅速推广的单片机飞思卡尔的HC目前在国内做的推广工作不少,但用的实在是不多TI的MSP430凭借超低功耗+16位的处理性能以及丰富的外设,在手持设备和仪表测量应用广泛。鬼子的单片机很强大,如东芝,日立等,但也许由于民族情节的原因,在国内使用的范围是越来越小了。51目前分了很多分支:1、传统的Intel8051单片机,如AT89S51等,2、对传统单片机完全兼容又可以扩展一些新的功能,比如2倍速,带EEPROM和AD等的SST和NXP等的单片机3、对51单片机有一个质的改善的C8051单片机,是目前受广大工程师推举的一款高性能51单片机4、目前有一款号称国产的单片机STC也凭借着性能优异,易于申请样品等特点也广为人传诵。5、台湾的华邦单片机也是电脑主板中最常见的51单片机对于单片机程序的开发,只要掌握了C一般所以的单片机都可以玩转了,因为所以的单片机目前都有支持它的C编译器了,比较常用的51一般用KEILC的人比较多,PIC用PICC编译比较多,TI的MSP430国内使用IAR的人居多,这三款软件一般是第三方提供的软件,一般单片机公司自己也会推出一些C编译软件,就连EMC义隆都有自己的C编译器。当然要把单片机玩好,就得等点汇编了。对于初学者一般推荐先学一本汇编,51的汇编指令是最多的,但也是理解上最简单,资料最全的,建议想从事单片机开发的新手,汇编至少要学到看得等,^_^,
试题: A甲1025参赛试题: 点阵电子显示屏(A题)参赛学生:冯元伟 物理与微电子学院 关童 物理与微电子学院 田立志 材料学院包装工程 参赛学校:山东大学 指导老师:陈延俊 秦峰 王延伟 仪维2006年9月11日目 录第一部分 摘要 ……………………………………………………3第二部分 设计任务………………………………………………4 1基本要求…………………………………………………………4 2发挥部分………………………………………………………………4 3创新部分………………………………………………………………4 2.方案论证与比较………………………………………5 1 显示部分………………………………………………………………5 2 数字时钟………………………………………………………………5 3 温度采集部分…………………………………………………………6 4 芯片选择………………………………………………………………6 5 闹铃方式的选择………………………………………………………6 6 止闹方式的选择………………………………………………………6 7 串口通讯芯片的选择…………………………………………………6 总体方案………………………………………………7 1 工作原理………………………………………………………………7 2 总体设计………………………………………………………………7 4.系统硬件设计…………………………………………7 1 AT89S52单片机最小系统…………………………………………8 2 温度测量模块………………………………………………………8 3 时钟模块……………………………………………………………8 4 键盘模块……………………………………………………………9 5 LED点阵显示模块…………………………………………………10 6 电源的选择…………………………………………………………11 7 PC机通讯……………………………………………………………12 8 整体电路……………………………………………………………12 5.系统软件设计…………………………………………7 1 主程序流程…………………………………………………………13 2 扫描子程序…………………………………………………………14 3 时间程序……………………………………………………………15 4 PC机串口通讯程序…………………………………………………15 5 亮度调节程序………………………………………………………16 6 温度程序……………………………………………………………17 6.测试与结果分析……………………………………17 1 基本部分测试与分析………………………………………………17 2 发挥部分测试与分析………………………………………………18 3 创新部分测试与分析………………………………………………18 7.设计总结……………………………………………18 8.参考资料……………………………………………18附录……………………………………………………………18例程…………………………………………………………18摘要 LED大屏幕显示系统,以AT89S52单片机为核心,由键盘显示、录放音模块、光电开关、温度采集、定时闹铃、LED大屏幕显示等功能模块组成。基于题目基本要求,本系统对时间显示和大屏幕显示进行了重点设计。此外,扩展单片机外围接口、温度采集、非接触式止闹、滚动屏幕显示、语音报时等功能。本系统大部分功能由软件来实现,吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。本系统不仅成功的实现了要求的基本功能,发挥部分也得到完全的实现,而且有一定的创新功能。 关键字:单片机 LED大屏幕 滚屏显示 Abstract This large LED display screen system ,based on chip microcomputer AT89S52,is composed by the following functional modules : keyboard displaying ,sound photoelectricity untouched switch,temperature gathering ,timing bell, According to the basic requirements of the subject ,our system stresses on the realization of time displaying and large screen displaying ,Furthermore ,we also extend the primary function ,adding new functions ,such as the single chip peripheral ports ,temperature gathering ,untouched ring-stop, scroll screen display, sound timing and so Adopting the idea of hardware-to-software, most of those functions are realized by softwares, which makes the electrocircuit more concise and the system more stable ,The design achieved and even exceeded all the required basic technical indexes Key words: chip microcomputer large screen display system scroll screen display1任务设计1 基本要求:设计并制作LED电子显示屏和控制器。1 自制一台简易16行*32列点阵显示的LED电子显示屏; 2 自制显示屏控制器,扩展键盘和相应的接口实现多功能显示控制,显示屏显示数字和字母亮度适中,应无闪烁。 3 显示屏通过按键切换显示数字和字母;4 显示屏能显示4组特定数字或者英文字母组成的句子,通过按键切换显示内容;5 能显示4组特定汉字组成的句子,通过按键切换显示内容。2发挥部分:1自制一台简易16行*64列点阵显示的LED电子显示屏;2 LED显示屏亮度连续可调。3 实现信息的左右滚屏显示,预存信息的定时循环显示;4 实现实时时间的显示,显示屏数字显示: 时∶分∶秒(例如 18∶38∶59);5增大到10组(每组汉字8个或16个数字和字符)预存信息,信息具有掉电保护;6实现和PC机通讯,通过PC机串口直接对显示信息进行更新(须做PC机客户程序);3 创新部分 1 室温的测量 2 定时闹铃 3 整点报时 4 非接触止闹 2、方案论证1 显示部分: 显示部分是本次设计最核心的部分,对于LED8*8点阵显示有以下两种方案: 方案一:静态显示,将一帧图像中的每一个二极管的状态分别用0 和1 表示,若为0 ,则表示L ED 无电流,即暗状态;若为1 则表示二极管被点亮。若给每一个发光二极管一个驱动电路,一幅画面输入以后,所有L ED 的状态保持到下一幅画。对于静态显示方式方式,所需的译码驱动装置很多,引线多而复杂,成本高,且可靠性也较低。 方案二:动态显示,对一幅画面进行分割,对组成画面的各部分分别显示,是动态显示方式。动态显示方式方式,可以避免静态显示的问题。但设计上如果处理不当,易造成亮度低,闪烁问题。因此合理的设计既应保证驱动电路易实现,又要保证图像稳定,无闪烁。动态显示采用多路复用技术的动态扫描显示方式, 复用的程度不是无限增加的, 因为利用动态扫描显示使我们看到一幅稳定画面的实质是利用了人眼的暂留效应和发光二极管发光时间的长短, 发光的亮度等因素 我们通过实验发现, 当扫描刷新频率(发光二极管的停闪频率) 为50Hz, 发光二极管导通时间≥1m s 时, 显示亮度较好, 无闪烁感。 鉴于上述原因, 我们采用方案二 2.数字时钟 数字时钟是本设计的重要的部分。根据需要,可利用两种方案实现。 方案一:本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将时字节清零。该方案具有硬件电路简单的特点,但当单片机不上电,程序将不执行。且由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。 方案二:本方案采用Dallas公司的专用时钟芯片DS1302。该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。 基于时钟芯片的上述优点,本设计采用方案二完成数字时钟的功能。3 温度采集部分 能进行温度测量是本设计的创新部分,由于现在用品追求多样化,多功能化,所以我们决定给系统加上温度测量显示模块,方便人们的生活,使该设计具有人性化。 方案一:采用热敏电阻,可满足 40 摄氏度至 90 摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测小于 1 摄氏度的信号是不适用的。 方案二:采用温度传感器DS18B20。DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。 基于DS18b20的以上优点,我们决定选取DS18b20来测量温度。4 芯片的选择 方案一:采取并口输入,占用大量I/O口资源 方案二:选取串口输入,使用较少。所以我们选用串口输入。串口输入我们可以选用芯片有74HC595、74LS164、TPIC6B595。但是74HC595和74LS164两种芯片必须加驱动才能驱动LED,而TI 公司的DMOS 器件TPIC6B595 , 除具有TTL 和CMOS 器件中移位寄存器595 的逻辑功能外, 其最大的特点是驱动功率大, 可直接用作LED的驱动。 综合以上比较,我们选取TPIC6B595来驱动LED点阵。5 闹铃方式的选择 方案一:采用蜂鸣器闹铃,当到设定时间时,单片机向蜂鸣器送出高电平,蜂鸣器发生。采用蜂鸣器闹铃结构简单,控制方便,但是发出的闹铃声音单一。 方案二:采用录音放音芯片1420闹铃,先对录放音设备录入一段音乐,当到设定时间时,单片机控制录放音设备放音。采用录放音电路铃声可以自己预先设定一段自己喜欢的音乐,符合电器设备人性化的要求。且1420芯片可以分段录音,还具有语音报时功能。 基于录音放音芯片1420的以上优点,我们决定采用录放音设备闹铃。 6 止闹方式的选择 一般钟表都具有闹钟功能,到设定时间,便自动启动闹钟,发出音乐提醒人们,再由人按下止闹按钮停止闹钟工作。 一般每天只能设置一次闹钟、并要由人按下按钮止闹,使用不是很方便。 智能处理器应用可改变这种状况,一天可按自己需要设置闹钟的开关、多次闹钟设置并可用非接触方式止闹。 方案一:采取远程红外遥控止闹,遥控器发出特定红外信号时,单片机接受到信号,向发音设备发出停止信号止闹。红外遥控止闹控制距离远,但是价格昂贵,增加了制造成本。 方案二:采取光电传感器,当用一物体遮挡光电传感光电传感器向单片机接口送出一个低电平,单片机立即向发音设备发出停止信号止闹。光电传感器价格便宜,线路简单,易于控制。 基于以上比较我们决定采用光电传感器止闹。7 串口通讯芯片的选择 AT89S52串行口采用的是TTL电平,因此必须的有电平转换电路,可以选择1488,1489,MAX232A 方案一:采用1488或1489芯片实现电平转换,但在使用中发现这两种芯片可靠性不高,且需要正负12V电源,使用麻烦。 方案二:采用单电源电平转换芯片MAX232A可以使电路变得简单,可靠。 基于以上分析,我们选用方案二,选用芯片MAX232A8 电源模块 方案一:采用干电池作为LED点阵系统的电源,由于点阵系统耗电量较大,使用干电池需经常换电池,不符合节约型社会的要求。点阵系统要悬挂在墙上,电池总量大,使用会有较大安全隐患。 方案二:采用200W/5V直流稳压电源作为系统电源,不仅功率上可以满足系统需要,不需要更换电源,并且比较轻便,使用更加安全可靠 基于以上分析,我们决定采用方案二3、总体方案1 工作原理: 利用单片机AT89S52单片机作为本系统的中控模块。单片机可把由DS18B20、DS1302读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。点阵LED电子显示屏显示器为主要的显示模块,把单片机传来的数据显示出来,并且可以实现滚动显示。利用光电传感器来实现非接触止闹功能。在显示电路中,主要靠按键来实现各种显示要求的选择与切换。2 总体设计 设计总体框图如图14、系统硬件设计(单元电路设计及分析) 1 AT89S52单片机最小系统: 最小系统包括晶体振荡电路、复位开关和电源部分。图2为AT89S52单片机的最小系统。2 温度测量模块: 温度测量传感器采用DALLAS公司DS18B20的单总线数字化温度传感器,测温范围为-55℃~125℃,可编程为9位~12位A/D转换精度,测温分辨率达到0625℃,采用寄生电源工作方式, CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路。接口电路如图3所示。图3 DS18B20测量电路3 时钟模块 时钟模块采用DS1302芯片,DS1302 是DALLAS 公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31 字节静态RAM 通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM 指示决定采用24 或12 小时格式DS1302 与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线1 RES 复位2 I/O 数据线3 SCLK串行时钟时钟/RAM 的读/写数据以一个字节或多达31 个字节的字符组方式通信DS1302 工作时功耗很低保持数据和时钟信息时功率小于1mW,其接线电路如图4 图4 时钟电路4 键盘模块 键盘、状态显示模块:为了使软件编程简单,本设计利用可编程芯片8255。接法如表1所示。PA口接按键,PC口则用于控制状态显示所用LED点阵。每个按键都通过一个10K的上拉电阻接电源+Vcc,按键的另一端接地。当有键按下时,与该键相连的PA口的相应位变为低电平,单片机检测到该变化后即转到相应的键处理程序,同时在程序中点亮LED点阵。模块电路如图5 LED显示模块 点阵数据串行输入, 器件为 移位寄存器TPIC6B595595, 门控和扫描信号常以16 点阵为一行进行并行处理。在点阵显示中以4×8个L ED 点阵构成一个L ED 显示单元, 采用行共阳列共阴的编排方式。其驱动分为行列两部分, 分别来自于行、列移位寄存器, 行数据是扫描数据, 16 行中每次只有一行被驱动, 采用逐行扫描方式, 列数据则为汉字的点阵码。。对于字符和图形显示也可以用点阵处理, 其显示原理和方法相同电路如图6 图6 LED显示电路6电源选择: 200W/5V的直流稳压电源更加安全电路图如图7图7 电源电路7 PC机通讯 MAX232是标准的串口通信接口,对于一般的双向通讯,只需要使用串行输入口RXD(第3脚)、串行输出TXD(第2脚)和地线(第7脚)。MAX232逻辑电平的规定如表 表 2 逻辑电平表逻辑值 电平幅值 (v) 0 3+~+15 1 3-~-15 图8 串口通讯8整体电路系统整体电路如下: 图9 整体电路5、系统软件设计1主程序如图2显示子程序流程如图 3 显示时间子程序流程如图12图12 时间子程序流程图4 与PC串口通讯程序5 LED亮度调节图 14 LED亮度调节6温度测量流程图如图15 图15 温度测量程序流程图6、测量及其结果分析1 基本部分测试与分析11 测试仪器: 秒表 、温度表、万用电表、WAVE仿真器12基本要求部分的测试与分析: (1)系统上电后,全屏点亮,没有暗点。接着显示时间。按“#”键后时扫描键盘,当有1~10键按下时,分别显示十段设定的数字、英文或汉字。 (2)显示时间时通过与秒表对比,测试的系统时间准确。 2 发挥部分测试与分析:(1) 当按下#后在按下进入亮度调节,按下“+”键时,亮度增加。按下“—”键时,亮度变弱。(2) 可以实现文字左右移动 (3) 按下“设置时间”键,观察到“钟表” 二极管点亮,此时可对时间进行设置。按下“时间设置“进入时调试,按“+”键时间加。在按下“切换”键时,进入分调整模式,按下“+”键,分增加。按下“选择”键时,分调整模式改为秒调整模式,按下“+”键秒增加。经测试该步可以很好的实现。调整时间完毕后,再按一下“闹钟设置”进入闹铃设置状态,按下“+”键设定“时”增加,在按下“选择”键进入分的设置,按下“+”键设定“分”增加。在按下“选择”键进入秒设置模式,按“+”键秒增加。(4)系统可以显示10组,每组8个汉字,完成要求 3 创新部分测试与分析(1)温度测量: 键盘切换现场环境温度显示:按“功能”键选择“温度”,将温度传感器和温度计放入不同的测试环境中进行测试,结果如表1所示。 表1 与标准温度计测量值比较表 温度计示值(摄氏度) 3 2 7 1 5 温度输出(摄氏度) 10 25 50 70 86 由测试知,数字钟的输出与温度计值基本上相等,误差不大于5度。(2) 当到设定时间时,开始访一段音乐,完成定时闹铃功能。(3)当用手遮挡光电传感器后,停止放音。手拿开后,不再放音,直到到设定时间。完成非接触止闹功能7、设计总结 全心准备了整整一个酷暑,9月8日我们终于拿到了试题,我们一致选择控制类题目A(LED点阵),从基本方案的制定,在到硬件电路的选择,到制作电路制作,最后进行程序调试。在此期间我们遇到很多困难,几乎没有说过一次好觉,尽管很艰苦,但是我们各自分工,相互协作,一次又一次品尝到了解决问题的喜悦,最终完成了要求的全部功能,并加入了一些创新的部分。在竞赛中我们发现了自己知识的不足,通过四天三夜的奋斗,也可以说四天三夜的学习,我们学到了很多东西,最重要的是我们学会了一种精神————永不放弃。在以后的时间里面我们会用这种精神去学习,更上一层楼。8、参考资料 [1]《基于单片机结构的智能系统设计与实现》 沈红卫 编 电子工业出版社 [2]《单片机原理与接口技术》 黄惠媛 编 海洋出版社 [3]《单片机应用技术》 周平 伍云辉 编 电子科技大学出版社 [4]《8051单片机实践与应用》 吴金戌 沈金阳 郭庭吉 编 清华大学出版社 [5]《电子设计竞赛赛题解析》 黄正谨等编 东南大学出版社 附录:例:整屏四个字一起显示的程序SER EQU P0 ; TPIC6B595 第3脚OE EQU P1;TPIC6B595 第8脚RCK EQU P2;TPIC6B595 第12脚MR EQU P3;TPIC6B595 第9脚SRCLK EQU P4;TPIC6B595 第13脚ORG 0000HLJMP MAINORG 0100H;**************************主程序**********************************MAIN: MOV SP,#70HSETB OE MOV 2BH,#00HMOV 27H,#00HSTART: ;初始化寄存器RAM单元MOV R0, #30HMOV R1,#64H ;30H~6FH单元清零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 CLR SRCLK CLR RCK SETB P6 SETB P7LQ: CLR C MOV R2,#8 MOV A,@R0 ; CPL A ;TPIC6B595应该不用这一步 LCALL DD1;调用显示一个字节的子程序 INC R0;指向下一个显示单元 DJNZ R5,LQ RETDD1: CLR SRCLK;清串行CP端 RLC A; MOV SER,C SETB SRCLK ;触发串行CP端 DJNZ R2,DD1;每个字节移8次够了向下执行 RET;选通行子程序XH: CLR RCK ;将输出CP变成低电平为上升沿做准备 NOP SETB RCK CLR P6 ;CLR P7 MOV A,27H MOV P0,A CLR OE LCALL DE25MS INC A SETB OE SETB P6 MOV A,27H ANL A,#0F0H SWAP A ADD A,#01H SWAP A MOV 27H,A CLR MR SETB MR RETDE25MS: MOV R5,#09H DEL2: MOV R6,#0FH DEL3: MOV R7,#01H DJNZ R7,$ DJNZ R6,DEL3 DJNZ R5,DEL2 RETTAB:字库END
单片机的应用论文600字怎么写
试题: A甲1025参赛试题: 点阵电子显示屏(A题)参赛学生:冯元伟 物理与微电子学院 关童 物理与微电子学院 田立志 材料学院包装工程 参赛学校:山东大学 指导老师:陈延俊 秦峰 王延伟 仪维2006年9月11日目 录第一部分 摘要 ……………………………………………………3第二部分 设计任务………………………………………………4 1基本要求…………………………………………………………4 2发挥部分………………………………………………………………4 3创新部分………………………………………………………………4 2.方案论证与比较………………………………………5 1 显示部分………………………………………………………………5 2 数字时钟………………………………………………………………5 3 温度采集部分…………………………………………………………6 4 芯片选择………………………………………………………………6 5 闹铃方式的选择………………………………………………………6 6 止闹方式的选择………………………………………………………6 7 串口通讯芯片的选择…………………………………………………6 总体方案………………………………………………7 1 工作原理………………………………………………………………7 2 总体设计………………………………………………………………7 4.系统硬件设计…………………………………………7 1 AT89S52单片机最小系统…………………………………………8 2 温度测量模块………………………………………………………8 3 时钟模块……………………………………………………………8 4 键盘模块……………………………………………………………9 5 LED点阵显示模块…………………………………………………10 6 电源的选择…………………………………………………………11 7 PC机通讯……………………………………………………………12 8 整体电路……………………………………………………………12 5.系统软件设计…………………………………………7 1 主程序流程…………………………………………………………13 2 扫描子程序…………………………………………………………14 3 时间程序……………………………………………………………15 4 PC机串口通讯程序…………………………………………………15 5 亮度调节程序………………………………………………………16 6 温度程序……………………………………………………………17 6.测试与结果分析……………………………………17 1 基本部分测试与分析………………………………………………17 2 发挥部分测试与分析………………………………………………18 3 创新部分测试与分析………………………………………………18 7.设计总结……………………………………………18 8.参考资料……………………………………………18附录……………………………………………………………18例程…………………………………………………………18摘要 LED大屏幕显示系统,以AT89S52单片机为核心,由键盘显示、录放音模块、光电开关、温度采集、定时闹铃、LED大屏幕显示等功能模块组成。基于题目基本要求,本系统对时间显示和大屏幕显示进行了重点设计。此外,扩展单片机外围接口、温度采集、非接触式止闹、滚动屏幕显示、语音报时等功能。本系统大部分功能由软件来实现,吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。本系统不仅成功的实现了要求的基本功能,发挥部分也得到完全的实现,而且有一定的创新功能。 关键字:单片机 LED大屏幕 滚屏显示 Abstract This large LED display screen system ,based on chip microcomputer AT89S52,is composed by the following functional modules : keyboard displaying ,sound photoelectricity untouched switch,temperature gathering ,timing bell, According to the basic requirements of the subject ,our system stresses on the realization of time displaying and large screen displaying ,Furthermore ,we also extend the primary function ,adding new functions ,such as the single chip peripheral ports ,temperature gathering ,untouched ring-stop, scroll screen display, sound timing and so Adopting the idea of hardware-to-software, most of those functions are realized by softwares, which makes the electrocircuit more concise and the system more stable ,The design achieved and even exceeded all the required basic technical indexes Key words: chip microcomputer large screen display system scroll screen display1任务设计1 基本要求:设计并制作LED电子显示屏和控制器。1 自制一台简易16行*32列点阵显示的LED电子显示屏; 2 自制显示屏控制器,扩展键盘和相应的接口实现多功能显示控制,显示屏显示数字和字母亮度适中,应无闪烁。 3 显示屏通过按键切换显示数字和字母;4 显示屏能显示4组特定数字或者英文字母组成的句子,通过按键切换显示内容;5 能显示4组特定汉字组成的句子,通过按键切换显示内容。2发挥部分:1自制一台简易16行*64列点阵显示的LED电子显示屏;2 LED显示屏亮度连续可调。3 实现信息的左右滚屏显示,预存信息的定时循环显示;4 实现实时时间的显示,显示屏数字显示: 时∶分∶秒(例如 18∶38∶59);5增大到10组(每组汉字8个或16个数字和字符)预存信息,信息具有掉电保护;6实现和PC机通讯,通过PC机串口直接对显示信息进行更新(须做PC机客户程序);3 创新部分 1 室温的测量 2 定时闹铃 3 整点报时 4 非接触止闹 2、方案论证1 显示部分: 显示部分是本次设计最核心的部分,对于LED8*8点阵显示有以下两种方案: 方案一:静态显示,将一帧图像中的每一个二极管的状态分别用0 和1 表示,若为0 ,则表示L ED 无电流,即暗状态;若为1 则表示二极管被点亮。若给每一个发光二极管一个驱动电路,一幅画面输入以后,所有L ED 的状态保持到下一幅画。对于静态显示方式方式,所需的译码驱动装置很多,引线多而复杂,成本高,且可靠性也较低。 方案二:动态显示,对一幅画面进行分割,对组成画面的各部分分别显示,是动态显示方式。动态显示方式方式,可以避免静态显示的问题。但设计上如果处理不当,易造成亮度低,闪烁问题。因此合理的设计既应保证驱动电路易实现,又要保证图像稳定,无闪烁。动态显示采用多路复用技术的动态扫描显示方式, 复用的程度不是无限增加的, 因为利用动态扫描显示使我们看到一幅稳定画面的实质是利用了人眼的暂留效应和发光二极管发光时间的长短, 发光的亮度等因素 我们通过实验发现, 当扫描刷新频率(发光二极管的停闪频率) 为50Hz, 发光二极管导通时间≥1m s 时, 显示亮度较好, 无闪烁感。 鉴于上述原因, 我们采用方案二 2.数字时钟 数字时钟是本设计的重要的部分。根据需要,可利用两种方案实现。 方案一:本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将时字节清零。该方案具有硬件电路简单的特点,但当单片机不上电,程序将不执行。且由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。 方案二:本方案采用Dallas公司的专用时钟芯片DS1302。该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。 基于时钟芯片的上述优点,本设计采用方案二完成数字时钟的功能。3 温度采集部分 能进行温度测量是本设计的创新部分,由于现在用品追求多样化,多功能化,所以我们决定给系统加上温度测量显示模块,方便人们的生活,使该设计具有人性化。 方案一:采用热敏电阻,可满足 40 摄氏度至 90 摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测小于 1 摄氏度的信号是不适用的。 方案二:采用温度传感器DS18B20。DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。 基于DS18b20的以上优点,我们决定选取DS18b20来测量温度。4 芯片的选择 方案一:采取并口输入,占用大量I/O口资源 方案二:选取串口输入,使用较少。所以我们选用串口输入。串口输入我们可以选用芯片有74HC595、74LS164、TPIC6B595。但是74HC595和74LS164两种芯片必须加驱动才能驱动LED,而TI 公司的DMOS 器件TPIC6B595 , 除具有TTL 和CMOS 器件中移位寄存器595 的逻辑功能外, 其最大的特点是驱动功率大, 可直接用作LED的驱动。 综合以上比较,我们选取TPIC6B595来驱动LED点阵。5 闹铃方式的选择 方案一:采用蜂鸣器闹铃,当到设定时间时,单片机向蜂鸣器送出高电平,蜂鸣器发生。采用蜂鸣器闹铃结构简单,控制方便,但是发出的闹铃声音单一。 方案二:采用录音放音芯片1420闹铃,先对录放音设备录入一段音乐,当到设定时间时,单片机控制录放音设备放音。采用录放音电路铃声可以自己预先设定一段自己喜欢的音乐,符合电器设备人性化的要求。且1420芯片可以分段录音,还具有语音报时功能。 基于录音放音芯片1420的以上优点,我们决定采用录放音设备闹铃。 6 止闹方式的选择 一般钟表都具有闹钟功能,到设定时间,便自动启动闹钟,发出音乐提醒人们,再由人按下止闹按钮停止闹钟工作。 一般每天只能设置一次闹钟、并要由人按下按钮止闹,使用不是很方便。 智能处理器应用可改变这种状况,一天可按自己需要设置闹钟的开关、多次闹钟设置并可用非接触方式止闹。 方案一:采取远程红外遥控止闹,遥控器发出特定红外信号时,单片机接受到信号,向发音设备发出停止信号止闹。红外遥控止闹控制距离远,但是价格昂贵,增加了制造成本。 方案二:采取光电传感器,当用一物体遮挡光电传感光电传感器向单片机接口送出一个低电平,单片机立即向发音设备发出停止信号止闹。光电传感器价格便宜,线路简单,易于控制。 基于以上比较我们决定采用光电传感器止闹。7 串口通讯芯片的选择 AT89S52串行口采用的是TTL电平,因此必须的有电平转换电路,可以选择1488,1489,MAX232A 方案一:采用1488或1489芯片实现电平转换,但在使用中发现这两种芯片可靠性不高,且需要正负12V电源,使用麻烦。 方案二:采用单电源电平转换芯片MAX232A可以使电路变得简单,可靠。 基于以上分析,我们选用方案二,选用芯片MAX232A8 电源模块 方案一:采用干电池作为LED点阵系统的电源,由于点阵系统耗电量较大,使用干电池需经常换电池,不符合节约型社会的要求。点阵系统要悬挂在墙上,电池总量大,使用会有较大安全隐患。 方案二:采用200W/5V直流稳压电源作为系统电源,不仅功率上可以满足系统需要,不需要更换电源,并且比较轻便,使用更加安全可靠 基于以上分析,我们决定采用方案二3、总体方案1 工作原理: 利用单片机AT89S52单片机作为本系统的中控模块。单片机可把由DS18B20、DS1302读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。点阵LED电子显示屏显示器为主要的显示模块,把单片机传来的数据显示出来,并且可以实现滚动显示。利用光电传感器来实现非接触止闹功能。在显示电路中,主要靠按键来实现各种显示要求的选择与切换。2 总体设计 设计总体框图如图14、系统硬件设计(单元电路设计及分析) 1 AT89S52单片机最小系统: 最小系统包括晶体振荡电路、复位开关和电源部分。图2为AT89S52单片机的最小系统。2 温度测量模块: 温度测量传感器采用DALLAS公司DS18B20的单总线数字化温度传感器,测温范围为-55℃~125℃,可编程为9位~12位A/D转换精度,测温分辨率达到0625℃,采用寄生电源工作方式, CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路。接口电路如图3所示。图3 DS18B20测量电路3 时钟模块 时钟模块采用DS1302芯片,DS1302 是DALLAS 公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31 字节静态RAM 通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM 指示决定采用24 或12 小时格式DS1302 与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线1 RES 复位2 I/O 数据线3 SCLK串行时钟时钟/RAM 的读/写数据以一个字节或多达31 个字节的字符组方式通信DS1302 工作时功耗很低保持数据和时钟信息时功率小于1mW,其接线电路如图4 图4 时钟电路4 键盘模块 键盘、状态显示模块:为了使软件编程简单,本设计利用可编程芯片8255。接法如表1所示。PA口接按键,PC口则用于控制状态显示所用LED点阵。每个按键都通过一个10K的上拉电阻接电源+Vcc,按键的另一端接地。当有键按下时,与该键相连的PA口的相应位变为低电平,单片机检测到该变化后即转到相应的键处理程序,同时在程序中点亮LED点阵。模块电路如图5 LED显示模块 点阵数据串行输入, 器件为 移位寄存器TPIC6B595595, 门控和扫描信号常以16 点阵为一行进行并行处理。在点阵显示中以4×8个L ED 点阵构成一个L ED 显示单元, 采用行共阳列共阴的编排方式。其驱动分为行列两部分, 分别来自于行、列移位寄存器, 行数据是扫描数据, 16 行中每次只有一行被驱动, 采用逐行扫描方式, 列数据则为汉字的点阵码。。对于字符和图形显示也可以用点阵处理, 其显示原理和方法相同电路如图6 图6 LED显示电路6电源选择: 200W/5V的直流稳压电源更加安全电路图如图7图7 电源电路7 PC机通讯 MAX232是标准的串口通信接口,对于一般的双向通讯,只需要使用串行输入口RXD(第3脚)、串行输出TXD(第2脚)和地线(第7脚)。MAX232逻辑电平的规定如表 表 2 逻辑电平表逻辑值 电平幅值 (v) 0 3+~+15 1 3-~-15 图8 串口通讯8整体电路系统整体电路如下: 图9 整体电路5、系统软件设计1主程序如图2显示子程序流程如图 3 显示时间子程序流程如图12图12 时间子程序流程图4 与PC串口通讯程序5 LED亮度调节图 14 LED亮度调节6温度测量流程图如图15 图15 温度测量程序流程图6、测量及其结果分析1 基本部分测试与分析11 测试仪器: 秒表 、温度表、万用电表、WAVE仿真器12基本要求部分的测试与分析: (1)系统上电后,全屏点亮,没有暗点。接着显示时间。按“#”键后时扫描键盘,当有1~10键按下时,分别显示十段设定的数字、英文或汉字。 (2)显示时间时通过与秒表对比,测试的系统时间准确。 2 发挥部分测试与分析:(1) 当按下#后在按下进入亮度调节,按下“+”键时,亮度增加。按下“—”键时,亮度变弱。(2) 可以实现文字左右移动 (3) 按下“设置时间”键,观察到“钟表” 二极管点亮,此时可对时间进行设置。按下“时间设置“进入时调试,按“+”键时间加。在按下“切换”键时,进入分调整模式,按下“+”键,分增加。按下“选择”键时,分调整模式改为秒调整模式,按下“+”键秒增加。经测试该步可以很好的实现。调整时间完毕后,再按一下“闹钟设置”进入闹铃设置状态,按下“+”键设定“时”增加,在按下“选择”键进入分的设置,按下“+”键设定“分”增加。在按下“选择”键进入秒设置模式,按“+”键秒增加。(4)系统可以显示10组,每组8个汉字,完成要求 3 创新部分测试与分析(1)温度测量: 键盘切换现场环境温度显示:按“功能”键选择“温度”,将温度传感器和温度计放入不同的测试环境中进行测试,结果如表1所示。 表1 与标准温度计测量值比较表 温度计示值(摄氏度) 3 2 7 1 5 温度输出(摄氏度) 10 25 50 70 86 由测试知,数字钟的输出与温度计值基本上相等,误差不大于5度。(2) 当到设定时间时,开始访一段音乐,完成定时闹铃功能。(3)当用手遮挡光电传感器后,停止放音。手拿开后,不再放音,直到到设定时间。完成非接触止闹功能7、设计总结 全心准备了整整一个酷暑,9月8日我们终于拿到了试题,我们一致选择控制类题目A(LED点阵),从基本方案的制定,在到硬件电路的选择,到制作电路制作,最后进行程序调试。在此期间我们遇到很多困难,几乎没有说过一次好觉,尽管很艰苦,但是我们各自分工,相互协作,一次又一次品尝到了解决问题的喜悦,最终完成了要求的全部功能,并加入了一些创新的部分。在竞赛中我们发现了自己知识的不足,通过四天三夜的奋斗,也可以说四天三夜的学习,我们学到了很多东西,最重要的是我们学会了一种精神————永不放弃。在以后的时间里面我们会用这种精神去学习,更上一层楼。8、参考资料 [1]《基于单片机结构的智能系统设计与实现》 沈红卫 编 电子工业出版社 [2]《单片机原理与接口技术》 黄惠媛 编 海洋出版社 [3]《单片机应用技术》 周平 伍云辉 编 电子科技大学出版社 [4]《8051单片机实践与应用》 吴金戌 沈金阳 郭庭吉 编 清华大学出版社 [5]《电子设计竞赛赛题解析》 黄正谨等编 东南大学出版社 附录:例:整屏四个字一起显示的程序SER EQU P0 ; TPIC6B595 第3脚OE EQU P1;TPIC6B595 第8脚RCK EQU P2;TPIC6B595 第12脚MR EQU P3;TPIC6B595 第9脚SRCLK EQU P4;TPIC6B595 第13脚ORG 0000HLJMP MAINORG 0100H;**************************主程序**********************************MAIN: MOV SP,#70HSETB OE MOV 2BH,#00HMOV 27H,#00HSTART: ;初始化寄存器RAM单元MOV R0, #30HMOV R1,#64H ;30H~6FH单元清零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 CLR SRCLK CLR RCK SETB P6 SETB P7LQ: CLR C MOV R2,#8 MOV A,@R0 ; CPL A ;TPIC6B595应该不用这一步 LCALL DD1;调用显示一个字节的子程序 INC R0;指向下一个显示单元 DJNZ R5,LQ RETDD1: CLR SRCLK;清串行CP端 RLC A; MOV SER,C SETB SRCLK ;触发串行CP端 DJNZ R2,DD1;每个字节移8次够了向下执行 RET;选通行子程序XH: CLR RCK ;将输出CP变成低电平为上升沿做准备 NOP SETB RCK CLR P6 ;CLR P7 MOV A,27H MOV P0,A CLR OE LCALL DE25MS INC A SETB OE SETB P6 MOV A,27H ANL A,#0F0H SWAP A ADD A,#01H SWAP A MOV 27H,A CLR MR SETB MR RETDE25MS: MOV R5,#09H DEL2: MOV R6,#0FH DEL3: MOV R7,#01H DJNZ R7,$ DJNZ R6,DEL3 DJNZ R5,DEL2 RETTAB:字库END
单片机的应用论文600字开头
这有一系列的毕业论文qq310852504
试题: A甲1025参赛试题: 点阵电子显示屏(A题)参赛学生:冯元伟 物理与微电子学院 关童 物理与微电子学院 田立志 材料学院包装工程 参赛学校:山东大学 指导老师:陈延俊 秦峰 王延伟 仪维2006年9月11日目 录第一部分 摘要 ……………………………………………………3第二部分 设计任务………………………………………………4 1基本要求…………………………………………………………4 2发挥部分………………………………………………………………4 3创新部分………………………………………………………………4 2.方案论证与比较………………………………………5 1 显示部分………………………………………………………………5 2 数字时钟………………………………………………………………5 3 温度采集部分…………………………………………………………6 4 芯片选择………………………………………………………………6 5 闹铃方式的选择………………………………………………………6 6 止闹方式的选择………………………………………………………6 7 串口通讯芯片的选择…………………………………………………6 总体方案………………………………………………7 1 工作原理………………………………………………………………7 2 总体设计………………………………………………………………7 4.系统硬件设计…………………………………………7 1 AT89S52单片机最小系统…………………………………………8 2 温度测量模块………………………………………………………8 3 时钟模块……………………………………………………………8 4 键盘模块……………………………………………………………9 5 LED点阵显示模块…………………………………………………10 6 电源的选择…………………………………………………………11 7 PC机通讯……………………………………………………………12 8 整体电路……………………………………………………………12 5.系统软件设计…………………………………………7 1 主程序流程…………………………………………………………13 2 扫描子程序…………………………………………………………14 3 时间程序……………………………………………………………15 4 PC机串口通讯程序…………………………………………………15 5 亮度调节程序………………………………………………………16 6 温度程序……………………………………………………………17 6.测试与结果分析……………………………………17 1 基本部分测试与分析………………………………………………17 2 发挥部分测试与分析………………………………………………18 3 创新部分测试与分析………………………………………………18 7.设计总结……………………………………………18 8.参考资料……………………………………………18附录……………………………………………………………18例程…………………………………………………………18摘要 LED大屏幕显示系统,以AT89S52单片机为核心,由键盘显示、录放音模块、光电开关、温度采集、定时闹铃、LED大屏幕显示等功能模块组成。基于题目基本要求,本系统对时间显示和大屏幕显示进行了重点设计。此外,扩展单片机外围接口、温度采集、非接触式止闹、滚动屏幕显示、语音报时等功能。本系统大部分功能由软件来实现,吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。本系统不仅成功的实现了要求的基本功能,发挥部分也得到完全的实现,而且有一定的创新功能。 关键字:单片机 LED大屏幕 滚屏显示 Abstract This large LED display screen system ,based on chip microcomputer AT89S52,is composed by the following functional modules : keyboard displaying ,sound photoelectricity untouched switch,temperature gathering ,timing bell, According to the basic requirements of the subject ,our system stresses on the realization of time displaying and large screen displaying ,Furthermore ,we also extend the primary function ,adding new functions ,such as the single chip peripheral ports ,temperature gathering ,untouched ring-stop, scroll screen display, sound timing and so Adopting the idea of hardware-to-software, most of those functions are realized by softwares, which makes the electrocircuit more concise and the system more stable ,The design achieved and even exceeded all the required basic technical indexes Key words: chip microcomputer large screen display system scroll screen display1任务设计1 基本要求:设计并制作LED电子显示屏和控制器。1 自制一台简易16行*32列点阵显示的LED电子显示屏; 2 自制显示屏控制器,扩展键盘和相应的接口实现多功能显示控制,显示屏显示数字和字母亮度适中,应无闪烁。 3 显示屏通过按键切换显示数字和字母;4 显示屏能显示4组特定数字或者英文字母组成的句子,通过按键切换显示内容;5 能显示4组特定汉字组成的句子,通过按键切换显示内容。2发挥部分:1自制一台简易16行*64列点阵显示的LED电子显示屏;2 LED显示屏亮度连续可调。3 实现信息的左右滚屏显示,预存信息的定时循环显示;4 实现实时时间的显示,显示屏数字显示: 时∶分∶秒(例如 18∶38∶59);5增大到10组(每组汉字8个或16个数字和字符)预存信息,信息具有掉电保护;6实现和PC机通讯,通过PC机串口直接对显示信息进行更新(须做PC机客户程序);3 创新部分 1 室温的测量 2 定时闹铃 3 整点报时 4 非接触止闹 2、方案论证1 显示部分: 显示部分是本次设计最核心的部分,对于LED8*8点阵显示有以下两种方案: 方案一:静态显示,将一帧图像中的每一个二极管的状态分别用0 和1 表示,若为0 ,则表示L ED 无电流,即暗状态;若为1 则表示二极管被点亮。若给每一个发光二极管一个驱动电路,一幅画面输入以后,所有L ED 的状态保持到下一幅画。对于静态显示方式方式,所需的译码驱动装置很多,引线多而复杂,成本高,且可靠性也较低。 方案二:动态显示,对一幅画面进行分割,对组成画面的各部分分别显示,是动态显示方式。动态显示方式方式,可以避免静态显示的问题。但设计上如果处理不当,易造成亮度低,闪烁问题。因此合理的设计既应保证驱动电路易实现,又要保证图像稳定,无闪烁。动态显示采用多路复用技术的动态扫描显示方式, 复用的程度不是无限增加的, 因为利用动态扫描显示使我们看到一幅稳定画面的实质是利用了人眼的暂留效应和发光二极管发光时间的长短, 发光的亮度等因素 我们通过实验发现, 当扫描刷新频率(发光二极管的停闪频率) 为50Hz, 发光二极管导通时间≥1m s 时, 显示亮度较好, 无闪烁感。 鉴于上述原因, 我们采用方案二 2.数字时钟 数字时钟是本设计的重要的部分。根据需要,可利用两种方案实现。 方案一:本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将时字节清零。该方案具有硬件电路简单的特点,但当单片机不上电,程序将不执行。且由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。 方案二:本方案采用Dallas公司的专用时钟芯片DS1302。该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。 基于时钟芯片的上述优点,本设计采用方案二完成数字时钟的功能。3 温度采集部分 能进行温度测量是本设计的创新部分,由于现在用品追求多样化,多功能化,所以我们决定给系统加上温度测量显示模块,方便人们的生活,使该设计具有人性化。 方案一:采用热敏电阻,可满足 40 摄氏度至 90 摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测小于 1 摄氏度的信号是不适用的。 方案二:采用温度传感器DS18B20。DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。 基于DS18b20的以上优点,我们决定选取DS18b20来测量温度。4 芯片的选择 方案一:采取并口输入,占用大量I/O口资源 方案二:选取串口输入,使用较少。所以我们选用串口输入。串口输入我们可以选用芯片有74HC595、74LS164、TPIC6B595。但是74HC595和74LS164两种芯片必须加驱动才能驱动LED,而TI 公司的DMOS 器件TPIC6B595 , 除具有TTL 和CMOS 器件中移位寄存器595 的逻辑功能外, 其最大的特点是驱动功率大, 可直接用作LED的驱动。 综合以上比较,我们选取TPIC6B595来驱动LED点阵。5 闹铃方式的选择 方案一:采用蜂鸣器闹铃,当到设定时间时,单片机向蜂鸣器送出高电平,蜂鸣器发生。采用蜂鸣器闹铃结构简单,控制方便,但是发出的闹铃声音单一。 方案二:采用录音放音芯片1420闹铃,先对录放音设备录入一段音乐,当到设定时间时,单片机控制录放音设备放音。采用录放音电路铃声可以自己预先设定一段自己喜欢的音乐,符合电器设备人性化的要求。且1420芯片可以分段录音,还具有语音报时功能。 基于录音放音芯片1420的以上优点,我们决定采用录放音设备闹铃。 6 止闹方式的选择 一般钟表都具有闹钟功能,到设定时间,便自动启动闹钟,发出音乐提醒人们,再由人按下止闹按钮停止闹钟工作。 一般每天只能设置一次闹钟、并要由人按下按钮止闹,使用不是很方便。 智能处理器应用可改变这种状况,一天可按自己需要设置闹钟的开关、多次闹钟设置并可用非接触方式止闹。 方案一:采取远程红外遥控止闹,遥控器发出特定红外信号时,单片机接受到信号,向发音设备发出停止信号止闹。红外遥控止闹控制距离远,但是价格昂贵,增加了制造成本。 方案二:采取光电传感器,当用一物体遮挡光电传感光电传感器向单片机接口送出一个低电平,单片机立即向发音设备发出停止信号止闹。光电传感器价格便宜,线路简单,易于控制。 基于以上比较我们决定采用光电传感器止闹。7 串口通讯芯片的选择 AT89S52串行口采用的是TTL电平,因此必须的有电平转换电路,可以选择1488,1489,MAX232A 方案一:采用1488或1489芯片实现电平转换,但在使用中发现这两种芯片可靠性不高,且需要正负12V电源,使用麻烦。 方案二:采用单电源电平转换芯片MAX232A可以使电路变得简单,可靠。 基于以上分析,我们选用方案二,选用芯片MAX232A8 电源模块 方案一:采用干电池作为LED点阵系统的电源,由于点阵系统耗电量较大,使用干电池需经常换电池,不符合节约型社会的要求。点阵系统要悬挂在墙上,电池总量大,使用会有较大安全隐患。 方案二:采用200W/5V直流稳压电源作为系统电源,不仅功率上可以满足系统需要,不需要更换电源,并且比较轻便,使用更加安全可靠 基于以上分析,我们决定采用方案二3、总体方案1 工作原理: 利用单片机AT89S52单片机作为本系统的中控模块。单片机可把由DS18B20、DS1302读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。点阵LED电子显示屏显示器为主要的显示模块,把单片机传来的数据显示出来,并且可以实现滚动显示。利用光电传感器来实现非接触止闹功能。在显示电路中,主要靠按键来实现各种显示要求的选择与切换。2 总体设计 设计总体框图如图14、系统硬件设计(单元电路设计及分析) 1 AT89S52单片机最小系统: 最小系统包括晶体振荡电路、复位开关和电源部分。图2为AT89S52单片机的最小系统。2 温度测量模块: 温度测量传感器采用DALLAS公司DS18B20的单总线数字化温度传感器,测温范围为-55℃~125℃,可编程为9位~12位A/D转换精度,测温分辨率达到0625℃,采用寄生电源工作方式, CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路。接口电路如图3所示。图3 DS18B20测量电路3 时钟模块 时钟模块采用DS1302芯片,DS1302 是DALLAS 公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31 字节静态RAM 通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM 指示决定采用24 或12 小时格式DS1302 与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线1 RES 复位2 I/O 数据线3 SCLK串行时钟时钟/RAM 的读/写数据以一个字节或多达31 个字节的字符组方式通信DS1302 工作时功耗很低保持数据和时钟信息时功率小于1mW,其接线电路如图4 图4 时钟电路4 键盘模块 键盘、状态显示模块:为了使软件编程简单,本设计利用可编程芯片8255。接法如表1所示。PA口接按键,PC口则用于控制状态显示所用LED点阵。每个按键都通过一个10K的上拉电阻接电源+Vcc,按键的另一端接地。当有键按下时,与该键相连的PA口的相应位变为低电平,单片机检测到该变化后即转到相应的键处理程序,同时在程序中点亮LED点阵。模块电路如图5 LED显示模块 点阵数据串行输入, 器件为 移位寄存器TPIC6B595595, 门控和扫描信号常以16 点阵为一行进行并行处理。在点阵显示中以4×8个L ED 点阵构成一个L ED 显示单元, 采用行共阳列共阴的编排方式。其驱动分为行列两部分, 分别来自于行、列移位寄存器, 行数据是扫描数据, 16 行中每次只有一行被驱动, 采用逐行扫描方式, 列数据则为汉字的点阵码。。对于字符和图形显示也可以用点阵处理, 其显示原理和方法相同电路如图6 图6 LED显示电路6电源选择: 200W/5V的直流稳压电源更加安全电路图如图7图7 电源电路7 PC机通讯 MAX232是标准的串口通信接口,对于一般的双向通讯,只需要使用串行输入口RXD(第3脚)、串行输出TXD(第2脚)和地线(第7脚)。MAX232逻辑电平的规定如表 表 2 逻辑电平表逻辑值 电平幅值 (v) 0 3+~+15 1 3-~-15 图8 串口通讯8整体电路系统整体电路如下: 图9 整体电路5、系统软件设计1主程序如图2显示子程序流程如图 3 显示时间子程序流程如图12图12 时间子程序流程图4 与PC串口通讯程序5 LED亮度调节图 14 LED亮度调节6温度测量流程图如图15 图15 温度测量程序流程图6、测量及其结果分析1 基本部分测试与分析11 测试仪器: 秒表 、温度表、万用电表、WAVE仿真器12基本要求部分的测试与分析: (1)系统上电后,全屏点亮,没有暗点。接着显示时间。按“#”键后时扫描键盘,当有1~10键按下时,分别显示十段设定的数字、英文或汉字。 (2)显示时间时通过与秒表对比,测试的系统时间准确。 2 发挥部分测试与分析:(1) 当按下#后在按下进入亮度调节,按下“+”键时,亮度增加。按下“—”键时,亮度变弱。(2) 可以实现文字左右移动 (3) 按下“设置时间”键,观察到“钟表” 二极管点亮,此时可对时间进行设置。按下“时间设置“进入时调试,按“+”键时间加。在按下“切换”键时,进入分调整模式,按下“+”键,分增加。按下“选择”键时,分调整模式改为秒调整模式,按下“+”键秒增加。经测试该步可以很好的实现。调整时间完毕后,再按一下“闹钟设置”进入闹铃设置状态,按下“+”键设定“时”增加,在按下“选择”键进入分的设置,按下“+”键设定“分”增加。在按下“选择”键进入秒设置模式,按“+”键秒增加。(4)系统可以显示10组,每组8个汉字,完成要求 3 创新部分测试与分析(1)温度测量: 键盘切换现场环境温度显示:按“功能”键选择“温度”,将温度传感器和温度计放入不同的测试环境中进行测试,结果如表1所示。 表1 与标准温度计测量值比较表 温度计示值(摄氏度) 3 2 7 1 5 温度输出(摄氏度) 10 25 50 70 86 由测试知,数字钟的输出与温度计值基本上相等,误差不大于5度。(2) 当到设定时间时,开始访一段音乐,完成定时闹铃功能。(3)当用手遮挡光电传感器后,停止放音。手拿开后,不再放音,直到到设定时间。完成非接触止闹功能7、设计总结 全心准备了整整一个酷暑,9月8日我们终于拿到了试题,我们一致选择控制类题目A(LED点阵),从基本方案的制定,在到硬件电路的选择,到制作电路制作,最后进行程序调试。在此期间我们遇到很多困难,几乎没有说过一次好觉,尽管很艰苦,但是我们各自分工,相互协作,一次又一次品尝到了解决问题的喜悦,最终完成了要求的全部功能,并加入了一些创新的部分。在竞赛中我们发现了自己知识的不足,通过四天三夜的奋斗,也可以说四天三夜的学习,我们学到了很多东西,最重要的是我们学会了一种精神————永不放弃。在以后的时间里面我们会用这种精神去学习,更上一层楼。8、参考资料 [1]《基于单片机结构的智能系统设计与实现》 沈红卫 编 电子工业出版社 [2]《单片机原理与接口技术》 黄惠媛 编 海洋出版社 [3]《单片机应用技术》 周平 伍云辉 编 电子科技大学出版社 [4]《8051单片机实践与应用》 吴金戌 沈金阳 郭庭吉 编 清华大学出版社 [5]《电子设计竞赛赛题解析》 黄正谨等编 东南大学出版社 附录:例:整屏四个字一起显示的程序SER EQU P0 ; TPIC6B595 第3脚OE EQU P1;TPIC6B595 第8脚RCK EQU P2;TPIC6B595 第12脚MR EQU P3;TPIC6B595 第9脚SRCLK EQU P4;TPIC6B595 第13脚ORG 0000HLJMP MAINORG 0100H;**************************主程序**********************************MAIN: MOV SP,#70HSETB OE MOV 2BH,#00HMOV 27H,#00HSTART: ;初始化寄存器RAM单元MOV R0, #30HMOV R1,#64H ;30H~6FH单元清零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 CLR SRCLK CLR RCK SETB P6 SETB P7LQ: CLR C MOV R2,#8 MOV A,@R0 ; CPL A ;TPIC6B595应该不用这一步 LCALL DD1;调用显示一个字节的子程序 INC R0;指向下一个显示单元 DJNZ R5,LQ RETDD1: CLR SRCLK;清串行CP端 RLC A; MOV SER,C SETB SRCLK ;触发串行CP端 DJNZ R2,DD1;每个字节移8次够了向下执行 RET;选通行子程序XH: CLR RCK ;将输出CP变成低电平为上升沿做准备 NOP SETB RCK CLR P6 ;CLR P7 MOV A,27H MOV P0,A CLR OE LCALL DE25MS INC A SETB OE SETB P6 MOV A,27H ANL A,#0F0H SWAP A ADD A,#01H SWAP A MOV 27H,A CLR MR SETB MR RETDE25MS: MOV R5,#09H DEL2: MOV R6,#0FH DEL3: MOV R7,#01H DJNZ R7,$ DJNZ R6,DEL3 DJNZ R5,DEL2 RETTAB:字库END
摘 要 LVI模块作为HC08单片机的重要组成部分,保障了单片机的可靠运行,在工业应用中发挥着重要作用。本文阐述了HC08型单片机LVI模块组成结构, 作用原理及其基本应用。特别介绍了LVI的常用指令, 寄存器设置。分析了LVI模块的一般测试过程,并专门针对J750测试机分析了它的测试参数。关键词 HC08; LVI; 单片机; 电压抑制; 失效学科分类 TN792HC08 Microcontroller LVI Module Function Description and Its Test ProcedureAbstract: LVI module is an important part of HC08 microcontroller, it guarantees microcontroller’s reliability, and plays an important role in industry This article described HC08 microcontroller LVI module’s components, working theory and basic practical Especially introduced LVI common instructions, register Had analyzed LVI module’s general test procedure, and analyzed its test elements according to J750 Keywords: HC08; LVI; Microcontroller; Voltage restrain; F 引言LVI (Low Voltage Inhibit) 模块,是各种微控制器中必不可少的组成部分,如图1 所示。它使得微控制器在供电电压过低的情况下,产生复位信号,从而确保在电压过低时微控制器不会产生错误信号或指令。LVI模块通过对微控制器的电源电压进行实时监控,同时利用编程设置低电压复位的临界值,从而实现防止微控制器的误操作。总之,LVI模块的应用,大大增加了微控制器在工业应用中的稳定性。摘自无忧无虑论文网
单片机应用论文咋样写
要么找书看,要么抄最好找书边看边抄!这种纯理论的东西,能讲个大概就行了,最重要的是自己用心去了解了说句老实话,这题目没太大的实用价值还不如整个实物出来
要看什么难度的论文了
试题: A甲1025参赛试题: 点阵电子显示屏(A题)参赛学生:冯元伟 物理与微电子学院 关童 物理与微电子学院 田立志 材料学院包装工程 参赛学校:山东大学 指导老师:陈延俊 秦峰 王延伟 仪维2006年9月11日目 录第一部分 摘要 ……………………………………………………3第二部分 设计任务………………………………………………4 1基本要求…………………………………………………………4 2发挥部分………………………………………………………………4 3创新部分………………………………………………………………4 2.方案论证与比较………………………………………5 1 显示部分………………………………………………………………5 2 数字时钟………………………………………………………………5 3 温度采集部分…………………………………………………………6 4 芯片选择………………………………………………………………6 5 闹铃方式的选择………………………………………………………6 6 止闹方式的选择………………………………………………………6 7 串口通讯芯片的选择…………………………………………………6 总体方案………………………………………………7 1 工作原理………………………………………………………………7 2 总体设计………………………………………………………………7 4.系统硬件设计…………………………………………7 1 AT89S52单片机最小系统…………………………………………8 2 温度测量模块………………………………………………………8 3 时钟模块……………………………………………………………8 4 键盘模块……………………………………………………………9 5 LED点阵显示模块…………………………………………………10 6 电源的选择…………………………………………………………11 7 PC机通讯……………………………………………………………12 8 整体电路……………………………………………………………12 5.系统软件设计…………………………………………7 1 主程序流程…………………………………………………………13 2 扫描子程序…………………………………………………………14 3 时间程序……………………………………………………………15 4 PC机串口通讯程序…………………………………………………15 5 亮度调节程序………………………………………………………16 6 温度程序……………………………………………………………17 6.测试与结果分析……………………………………17 1 基本部分测试与分析………………………………………………17 2 发挥部分测试与分析………………………………………………18 3 创新部分测试与分析………………………………………………18 7.设计总结……………………………………………18 8.参考资料……………………………………………18附录……………………………………………………………18例程…………………………………………………………18摘要 LED大屏幕显示系统,以AT89S52单片机为核心,由键盘显示、录放音模块、光电开关、温度采集、定时闹铃、LED大屏幕显示等功能模块组成。基于题目基本要求,本系统对时间显示和大屏幕显示进行了重点设计。此外,扩展单片机外围接口、温度采集、非接触式止闹、滚动屏幕显示、语音报时等功能。本系统大部分功能由软件来实现,吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。本系统不仅成功的实现了要求的基本功能,发挥部分也得到完全的实现,而且有一定的创新功能。 关键字:单片机 LED大屏幕 滚屏显示 Abstract This large LED display screen system ,based on chip microcomputer AT89S52,is composed by the following functional modules : keyboard displaying ,sound photoelectricity untouched switch,temperature gathering ,timing bell, According to the basic requirements of the subject ,our system stresses on the realization of time displaying and large screen displaying ,Furthermore ,we also extend the primary function ,adding new functions ,such as the single chip peripheral ports ,temperature gathering ,untouched ring-stop, scroll screen display, sound timing and so Adopting the idea of hardware-to-software, most of those functions are realized by softwares, which makes the electrocircuit more concise and the system more stable ,The design achieved and even exceeded all the required basic technical indexes Key words: chip microcomputer large screen display system scroll screen display1任务设计1 基本要求:设计并制作LED电子显示屏和控制器。1 自制一台简易16行*32列点阵显示的LED电子显示屏; 2 自制显示屏控制器,扩展键盘和相应的接口实现多功能显示控制,显示屏显示数字和字母亮度适中,应无闪烁。 3 显示屏通过按键切换显示数字和字母;4 显示屏能显示4组特定数字或者英文字母组成的句子,通过按键切换显示内容;5 能显示4组特定汉字组成的句子,通过按键切换显示内容。2发挥部分:1自制一台简易16行*64列点阵显示的LED电子显示屏;2 LED显示屏亮度连续可调。3 实现信息的左右滚屏显示,预存信息的定时循环显示;4 实现实时时间的显示,显示屏数字显示: 时∶分∶秒(例如 18∶38∶59);5增大到10组(每组汉字8个或16个数字和字符)预存信息,信息具有掉电保护;6实现和PC机通讯,通过PC机串口直接对显示信息进行更新(须做PC机客户程序);3 创新部分 1 室温的测量 2 定时闹铃 3 整点报时 4 非接触止闹 2、方案论证1 显示部分: 显示部分是本次设计最核心的部分,对于LED8*8点阵显示有以下两种方案: 方案一:静态显示,将一帧图像中的每一个二极管的状态分别用0 和1 表示,若为0 ,则表示L ED 无电流,即暗状态;若为1 则表示二极管被点亮。若给每一个发光二极管一个驱动电路,一幅画面输入以后,所有L ED 的状态保持到下一幅画。对于静态显示方式方式,所需的译码驱动装置很多,引线多而复杂,成本高,且可靠性也较低。 方案二:动态显示,对一幅画面进行分割,对组成画面的各部分分别显示,是动态显示方式。动态显示方式方式,可以避免静态显示的问题。但设计上如果处理不当,易造成亮度低,闪烁问题。因此合理的设计既应保证驱动电路易实现,又要保证图像稳定,无闪烁。动态显示采用多路复用技术的动态扫描显示方式, 复用的程度不是无限增加的, 因为利用动态扫描显示使我们看到一幅稳定画面的实质是利用了人眼的暂留效应和发光二极管发光时间的长短, 发光的亮度等因素 我们通过实验发现, 当扫描刷新频率(发光二极管的停闪频率) 为50Hz, 发光二极管导通时间≥1m s 时, 显示亮度较好, 无闪烁感。 鉴于上述原因, 我们采用方案二 2.数字时钟 数字时钟是本设计的重要的部分。根据需要,可利用两种方案实现。 方案一:本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将时字节清零。该方案具有硬件电路简单的特点,但当单片机不上电,程序将不执行。且由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。 方案二:本方案采用Dallas公司的专用时钟芯片DS1302。该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。 基于时钟芯片的上述优点,本设计采用方案二完成数字时钟的功能。3 温度采集部分 能进行温度测量是本设计的创新部分,由于现在用品追求多样化,多功能化,所以我们决定给系统加上温度测量显示模块,方便人们的生活,使该设计具有人性化。 方案一:采用热敏电阻,可满足 40 摄氏度至 90 摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测小于 1 摄氏度的信号是不适用的。 方案二:采用温度传感器DS18B20。DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。 基于DS18b20的以上优点,我们决定选取DS18b20来测量温度。4 芯片的选择 方案一:采取并口输入,占用大量I/O口资源 方案二:选取串口输入,使用较少。所以我们选用串口输入。串口输入我们可以选用芯片有74HC595、74LS164、TPIC6B595。但是74HC595和74LS164两种芯片必须加驱动才能驱动LED,而TI 公司的DMOS 器件TPIC6B595 , 除具有TTL 和CMOS 器件中移位寄存器595 的逻辑功能外, 其最大的特点是驱动功率大, 可直接用作LED的驱动。 综合以上比较,我们选取TPIC6B595来驱动LED点阵。5 闹铃方式的选择 方案一:采用蜂鸣器闹铃,当到设定时间时,单片机向蜂鸣器送出高电平,蜂鸣器发生。采用蜂鸣器闹铃结构简单,控制方便,但是发出的闹铃声音单一。 方案二:采用录音放音芯片1420闹铃,先对录放音设备录入一段音乐,当到设定时间时,单片机控制录放音设备放音。采用录放音电路铃声可以自己预先设定一段自己喜欢的音乐,符合电器设备人性化的要求。且1420芯片可以分段录音,还具有语音报时功能。 基于录音放音芯片1420的以上优点,我们决定采用录放音设备闹铃。 6 止闹方式的选择 一般钟表都具有闹钟功能,到设定时间,便自动启动闹钟,发出音乐提醒人们,再由人按下止闹按钮停止闹钟工作。 一般每天只能设置一次闹钟、并要由人按下按钮止闹,使用不是很方便。 智能处理器应用可改变这种状况,一天可按自己需要设置闹钟的开关、多次闹钟设置并可用非接触方式止闹。 方案一:采取远程红外遥控止闹,遥控器发出特定红外信号时,单片机接受到信号,向发音设备发出停止信号止闹。红外遥控止闹控制距离远,但是价格昂贵,增加了制造成本。 方案二:采取光电传感器,当用一物体遮挡光电传感光电传感器向单片机接口送出一个低电平,单片机立即向发音设备发出停止信号止闹。光电传感器价格便宜,线路简单,易于控制。 基于以上比较我们决定采用光电传感器止闹。7 串口通讯芯片的选择 AT89S52串行口采用的是TTL电平,因此必须的有电平转换电路,可以选择1488,1489,MAX232A 方案一:采用1488或1489芯片实现电平转换,但在使用中发现这两种芯片可靠性不高,且需要正负12V电源,使用麻烦。 方案二:采用单电源电平转换芯片MAX232A可以使电路变得简单,可靠。 基于以上分析,我们选用方案二,选用芯片MAX232A8 电源模块 方案一:采用干电池作为LED点阵系统的电源,由于点阵系统耗电量较大,使用干电池需经常换电池,不符合节约型社会的要求。点阵系统要悬挂在墙上,电池总量大,使用会有较大安全隐患。 方案二:采用200W/5V直流稳压电源作为系统电源,不仅功率上可以满足系统需要,不需要更换电源,并且比较轻便,使用更加安全可靠 基于以上分析,我们决定采用方案二3、总体方案1 工作原理: 利用单片机AT89S52单片机作为本系统的中控模块。单片机可把由DS18B20、DS1302读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。点阵LED电子显示屏显示器为主要的显示模块,把单片机传来的数据显示出来,并且可以实现滚动显示。利用光电传感器来实现非接触止闹功能。在显示电路中,主要靠按键来实现各种显示要求的选择与切换。2 总体设计 设计总体框图如图14、系统硬件设计(单元电路设计及分析) 1 AT89S52单片机最小系统: 最小系统包括晶体振荡电路、复位开关和电源部分。图2为AT89S52单片机的最小系统。2 温度测量模块: 温度测量传感器采用DALLAS公司DS18B20的单总线数字化温度传感器,测温范围为-55℃~125℃,可编程为9位~12位A/D转换精度,测温分辨率达到0625℃,采用寄生电源工作方式, CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路。接口电路如图3所示。图3 DS18B20测量电路3 时钟模块 时钟模块采用DS1302芯片,DS1302 是DALLAS 公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31 字节静态RAM 通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM 指示决定采用24 或12 小时格式DS1302 与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线1 RES 复位2 I/O 数据线3 SCLK串行时钟时钟/RAM 的读/写数据以一个字节或多达31 个字节的字符组方式通信DS1302 工作时功耗很低保持数据和时钟信息时功率小于1mW,其接线电路如图4 图4 时钟电路4 键盘模块 键盘、状态显示模块:为了使软件编程简单,本设计利用可编程芯片8255。接法如表1所示。PA口接按键,PC口则用于控制状态显示所用LED点阵。每个按键都通过一个10K的上拉电阻接电源+Vcc,按键的另一端接地。当有键按下时,与该键相连的PA口的相应位变为低电平,单片机检测到该变化后即转到相应的键处理程序,同时在程序中点亮LED点阵。模块电路如图5 LED显示模块 点阵数据串行输入, 器件为 移位寄存器TPIC6B595595, 门控和扫描信号常以16 点阵为一行进行并行处理。在点阵显示中以4×8个L ED 点阵构成一个L ED 显示单元, 采用行共阳列共阴的编排方式。其驱动分为行列两部分, 分别来自于行、列移位寄存器, 行数据是扫描数据, 16 行中每次只有一行被驱动, 采用逐行扫描方式, 列数据则为汉字的点阵码。。对于字符和图形显示也可以用点阵处理, 其显示原理和方法相同电路如图6 图6 LED显示电路6电源选择: 200W/5V的直流稳压电源更加安全电路图如图7图7 电源电路7 PC机通讯 MAX232是标准的串口通信接口,对于一般的双向通讯,只需要使用串行输入口RXD(第3脚)、串行输出TXD(第2脚)和地线(第7脚)。MAX232逻辑电平的规定如表 表 2 逻辑电平表逻辑值 电平幅值 (v) 0 3+~+15 1 3-~-15 图8 串口通讯8整体电路系统整体电路如下: 图9 整体电路5、系统软件设计1主程序如图2显示子程序流程如图 3 显示时间子程序流程如图12图12 时间子程序流程图4 与PC串口通讯程序5 LED亮度调节图 14 LED亮度调节6温度测量流程图如图15 图15 温度测量程序流程图6、测量及其结果分析1 基本部分测试与分析11 测试仪器: 秒表 、温度表、万用电表、WAVE仿真器12基本要求部分的测试与分析: (1)系统上电后,全屏点亮,没有暗点。接着显示时间。按“#”键后时扫描键盘,当有1~10键按下时,分别显示十段设定的数字、英文或汉字。 (2)显示时间时通过与秒表对比,测试的系统时间准确。 2 发挥部分测试与分析:(1) 当按下#后在按下进入亮度调节,按下“+”键时,亮度增加。按下“—”键时,亮度变弱。(2) 可以实现文字左右移动 (3) 按下“设置时间”键,观察到“钟表” 二极管点亮,此时可对时间进行设置。按下“时间设置“进入时调试,按“+”键时间加。在按下“切换”键时,进入分调整模式,按下“+”键,分增加。按下“选择”键时,分调整模式改为秒调整模式,按下“+”键秒增加。经测试该步可以很好的实现。调整时间完毕后,再按一下“闹钟设置”进入闹铃设置状态,按下“+”键设定“时”增加,在按下“选择”键进入分的设置,按下“+”键设定“分”增加。在按下“选择”键进入秒设置模式,按“+”键秒增加。(4)系统可以显示10组,每组8个汉字,完成要求 3 创新部分测试与分析(1)温度测量: 键盘切换现场环境温度显示:按“功能”键选择“温度”,将温度传感器和温度计放入不同的测试环境中进行测试,结果如表1所示。 表1 与标准温度计测量值比较表 温度计示值(摄氏度) 3 2 7 1 5 温度输出(摄氏度) 10 25 50 70 86 由测试知,数字钟的输出与温度计值基本上相等,误差不大于5度。(2) 当到设定时间时,开始访一段音乐,完成定时闹铃功能。(3)当用手遮挡光电传感器后,停止放音。手拿开后,不再放音,直到到设定时间。完成非接触止闹功能7、设计总结 全心准备了整整一个酷暑,9月8日我们终于拿到了试题,我们一致选择控制类题目A(LED点阵),从基本方案的制定,在到硬件电路的选择,到制作电路制作,最后进行程序调试。在此期间我们遇到很多困难,几乎没有说过一次好觉,尽管很艰苦,但是我们各自分工,相互协作,一次又一次品尝到了解决问题的喜悦,最终完成了要求的全部功能,并加入了一些创新的部分。在竞赛中我们发现了自己知识的不足,通过四天三夜的奋斗,也可以说四天三夜的学习,我们学到了很多东西,最重要的是我们学会了一种精神————永不放弃。在以后的时间里面我们会用这种精神去学习,更上一层楼。8、参考资料 [1]《基于单片机结构的智能系统设计与实现》 沈红卫 编 电子工业出版社 [2]《单片机原理与接口技术》 黄惠媛 编 海洋出版社 [3]《单片机应用技术》 周平 伍云辉 编 电子科技大学出版社 [4]《8051单片机实践与应用》 吴金戌 沈金阳 郭庭吉 编 清华大学出版社 [5]《电子设计竞赛赛题解析》 黄正谨等编 东南大学出版社 附录:例:整屏四个字一起显示的程序SER EQU P0 ; TPIC6B595 第3脚OE EQU P1;TPIC6B595 第8脚RCK EQU P2;TPIC6B595 第12脚MR EQU P3;TPIC6B595 第9脚SRCLK EQU P4;TPIC6B595 第13脚ORG 0000HLJMP MAINORG 0100H;**************************主程序**********************************MAIN: MOV SP,#70HSETB OE MOV 2BH,#00HMOV 27H,#00HSTART: ;初始化寄存器RAM单元MOV R0, #30HMOV R1,#64H ;30H~6FH单元清零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 CLR SRCLK CLR RCK SETB P6 SETB P7LQ: CLR C MOV R2,#8 MOV A,@R0 ; CPL A ;TPIC6B595应该不用这一步 LCALL DD1;调用显示一个字节的子程序 INC R0;指向下一个显示单元 DJNZ R5,LQ RETDD1: CLR SRCLK;清串行CP端 RLC A; MOV SER,C SETB SRCLK ;触发串行CP端 DJNZ R2,DD1;每个字节移8次够了向下执行 RET;选通行子程序XH: CLR RCK ;将输出CP变成低电平为上升沿做准备 NOP SETB RCK CLR P6 ;CLR P7 MOV A,27H MOV P0,A CLR OE LCALL DE25MS INC A SETB OE SETB P6 MOV A,27H ANL A,#0F0H SWAP A ADD A,#01H SWAP A MOV 27H,A CLR MR SETB MR RETDE25MS: MOV R5,#09H DEL2: MOV R6,#0FH DEL3: MOV R7,#01H DJNZ R7,$ DJNZ R6,DEL3 DJNZ R5,DEL2 RETTAB:字库END