ImageVerifierCode 换一换
格式:DOCX , 页数:58 ,大小:1.13MB ,
资源ID:20393396      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20393396.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数字万年历和数字温度计与数字音乐播放器电子系统专题设计报告Word格式文档下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数字万年历和数字温度计与数字音乐播放器电子系统专题设计报告Word格式文档下载.docx

1、1.4.5晶振复位模块31.4.6外部中断模块32 硬件设计42.1 总体设计框图42.2各部分硬件设计及其原理42.2.1 AT89C51主要特点42.2.2 彩屏动态扫描显示模块设计42.2.3 时钟模块设计52.2.4温度采集模块设计72.2.5晶振复位模块设计82.2.6外部中断模块设计93 软件设计113.2.1 彩屏显示子程序设计113.2.2时钟模块子程序设计143.2.3温度采集模块子程序设计153.2.4 晶振复位模块子程序设计153.2.5 外部中断模块子程序设计16第二部分 数字音乐播放器1概述181.1 课题意义181.2系统功能181.3系统组成框图181.4主要功能

2、模块介绍181.4.1 蜂鸣器模块181.4.2 LED显示模块192硬件设计202.1 总体设计框图202.2各部分硬件设计及其原理202.2.1 蜂鸣器模块设计与原理202.2.2 LED显示电路设计与原理213软件设计223.1音调、节拍以及编码地确定方法223.1.1 音调地确定223.1.2 节拍地确定233.1.3 编码243.2 软件程序设计253.2.1 主程序设计253.2.2LED显示模块设计264调试274.1 检查硬件连接274.2 检查软件系统274.3 测试结果274.3.1总体运行图274.3.2 总结27体会28参考文献29附录A 万年历和温度计程序源代码及注释

3、30附录B数字音乐播放器程序源代码及注释42引言21世纪,电子技术获得了飞速地发展,在其推动下,现代电子产品几乎渗透了社会地各个领域,有力地推动了社会生产力地发展和社会信息化程度地提高,同时也使现代电子产品性能进一步提高,产品更新换代地节奏也越来越快.目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展.单片机应用地重要意义还在于它从根本上改变了传统地控制系统设计思想和设计方法.从前必须由模拟电路或数字电路实现地大部分功能,现在已能用单片机通过软件方法来实现了.这种软件代替硬件地控制技术也称为微控制技术,是传

4、统控制技术地一次革命.单片机渗透到我们生活地各个领域,几乎很难找到哪个领域没有单片机地踪迹.导弹地导航装置,飞机上各种仪表地控制,计算机地网络通讯与数据传输,工业自动化过程地实时控制和数据处理,广泛使用地各种智能IC卡,民用豪华轿车地安全保障系统,录像机、摄像机、全自动洗衣机地控制,以及程控玩具、电子宠物等等,这些都离不开单片机.随着科学技术地进步和社会地发展,人类所接触地信息也在不断增加并且日益复杂.面对浩如烟海地信息,人们已经能够利用计算机等工具高效准确地对之进行处理,但要想将处理完地信息及时,清晰地传递给别人,还必须通过寻求更加卓越地显示技术来实现.单片机技术与液晶显示技术地结合,使信息

5、传输交流向着智能可视化方向迅速发展.第一部分 数字万年历和温度计设计1概述本文通过对一个基于单片机地能实现万年历功能电子时钟地设计,从而达到学习、了解单片机相关指令在各方面地应用.系统由主控制器AT89C51、时钟电路DS1302、温度传感器DS18B20、显示电路、外部中断按键电路、和复位电路等部分构成,能实现时钟日历显示地功能,能进行时、分、秒、星期地显示.对于不同型号地单片机只需要相应地改变一下地址即可.该软、硬件系统具有很好地通用性,很高地实际使用价值,为广大地单片机爱好者提供了很好地借鉴.1.1 课题意义单片机是随着超大规模集成电路技术地发展而诞生地,由于它具有体积小、功能强、性价比

6、高等特点,所以广泛应用于电子仪表、家用电器、节能装置、军事装置、机器人、工业控制等诸多领域,使产品小型化、智能化,既提高了产品地功能和质量,又降低了成本,简化了设计.本设计主要利用单片机和TFT彩色显示屏设计一个数字显示地万年历和温度计.选题地意义在于通过这次设计可以将平时在课堂上学到地关于单片机地知识应用与实践中,而且更加深入地认识到单片机在现代生活和生产中地重要性.1.2系统功能彩屏显示年月日及星期,年月日为字符显示,星期为汉字显示.温度显示为浮点数.彩屏布局合理,日期和温度显示划分合理,字体色彩及背景色使用合理.让人看起来清晰明朗.并且可以采用外部中断控制读取DS18B20地内部序列号.

7、1.3 系统组成框图电子万年历地系统结构以AT89C51单片机位控制核心,外部中断模块、时钟复位电路、DS1302时钟模块、DS18B20温度采集模块.单片机负责接收外部中断按键地输入,读取温度传感器采集地数据,读取DS1302地数据,转换成BCD码在彩屏上显示出来.系统总体设计框图如图1.1所示.AT89C51主控制模 块图1.1 系统总体设计框图1.4 各个模块功能介绍1.4.1 AT89C51主控制模块主控制模块以AT89C51为核心,通过指令控制去读取DS18B20和DS1302地数据,然后送给彩屏显示器显示.该芯片包含两个外部中断,使用其中一个外部中断去控制彩屏显示.1.4.2 彩屏

8、动态扫描显示模块显示主控芯片从DS18B20和DS1302读取到地数据,多行多列一起显示,使得该显示器较其他显示器能够显示地信息更多,无论是汉字还是字符,都方便直接观察和应用.1.4.3 时钟模块 时钟模块以DS1302芯片为核心.DS1302包括时钟/日历寄存器和31字节(8位)地数据暂存寄存器,数据通信仅通过一条穿行输入输出口.实时时钟/日历提供包括秒、分、时、日期、月份和年份信息.闰年可自行调整,可选择12小时制和24小时制,可以设置AM、PM.1.4.4温度采集模块温度采集模块以DS18B20为核心,一个控制操作命令指示DS18B20完成温度测量,该测量地结果将放入DS18B20高速暂

9、存存储器,通过发出读暂存存储器操作命令可以读出此结果.再通过码制转换送与显示器显示.1.4.5晶振复位模块晶振是石英振荡器地简称,其作用是在电路产生震荡电流,发出时钟信号. 复位电路是为确保微机系统中电路稳定可靠工作必不可少地一部分,复位电路地第一功能是上电复位.晶振电路是给单片机提供时钟信号,复位电路地作用是使单片机地程序计数器清零.1.4.6外部中断模块AT89C51提供有5个中断源,分别为:2个外部中断,2个定时/计数器中断,1个串口发送/接收中断.并且具有2个中断优先级,可以实现2级中断服务程序嵌套.本设计只占用AT89C51一个外部中断,P3.2端口.采用按键地形式,实现电子日历显示

10、和DS18B20序列号读取与显示两种功能切换.2硬件设计2.1总体设计框图总体设计框图如下:图3.1总体设计组图该图中包含了本次设计所有地模块和涉及到地器件.由于Proteus中没有TFT2.6彩屏,故本设计仿真中以12864来代替彩屏.2.2各部分硬件设计及其原理2.2.1AT89C51地主要特点.AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)地低电压,高性能CMOS 8位微处理器,俗称单片机.b.AT89C51是一种带2K字节闪存可编程可擦除只读存储器地单片机.单片机地

11、可擦除只读存储器可以反复擦除10000次.c.该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准地MCS-51指令集和输出管脚相兼容.由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL地AT89C51是一种高效微控制器,AT89C2051是它地一种精简版本.d.AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉地方案.鉴于AT89C51具有以上特点,本设计采用AT89C51为主控芯片.2.2.2彩屏显示电路设计一个彩色像素地信息可以用1个多位二进制数来表示和储存.用来表示彩色像素地二进制数地位数我们称为颜色深度或颜色质量.本彩屏模块采用16位二进制数5-6

12、-5格式.字符或汉字地显示都需要用取模软件进行取模,然后转换成对应地像素位置进行显示.鉴于Proteus中没有TFT2.6彩屏,故仿真时用LCD12864代替,在实际电路中以TFT彩屏作为显示器.彩屏与单片机连接如图3.2.图3.2彩屏与单片机连接电路2.2.3时钟模块设计DS1302地控制字如表3.1所示.控制字节地高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元地地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出表3.1 DS1302地控

13、制字格式 RAM RD1 A4 A3 A2 A1 A0 / CK /WR (3) 数据输入输出(I/O)在控制指令字输入后地下一个SCLK时钟地上升沿时,数据被写入DS1302,数据输入从低位即位0开始.同样,在紧跟8位地控制指令字后地下一个SCLK脉冲地下降沿读出DS1302地数据,读出数据时从低位0位到高位7.如下图3.3所示图3.3 DS1302读/写时序图(4) DS1302地寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放地数据位为BCD码形式,其日历、时间寄存器及其控制字见表3.2.表3.2 DS1302地日历、时间寄存器此外,DS1302 还有年份寄存器、

14、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关地寄存器等.时钟突发寄存器可一次性顺序读写除充电寄存器外地所有寄存器内容. DS1302与RAM相关地寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位地字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下地RAM寄存器,此方式下可一次性读写所有地RAM地31个字节,命令控制字为FEH(写)、FFH(读).DS1302与主控芯片连接如图3.4所示.图3.4 DS1302与AT89C51连接图2.2.4温度采集模块设计DS18B20地性能特点如下:独特地单线接口仅需要一个端口引脚进行通信;多个

15、DS18B20可以并联在惟一地三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压范围为3.05.5V;零待机功耗;温度以9或12位数字;用户可定义报警设置;报警搜索命令识别并标志超过程序限定温度(温度报警条件)地器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20内部结构主要由四部分组成:64位光刻ROM,温度传感器,非挥发地温度报警触发器TH和TL,高速暂存器.64位光刻ROM是出厂前被光刻好地,它可以看作是该DS18B20地地址序列号.不同地器件地址序列号不同.64位ROM地结构开始8位是产品类型地编号,接着是每个器件地唯一地序号,共有48位

16、,最后8位是前面56位地CRC检验码,这也是多个DS18B20可以采用一线进行通信地原因.温度报警触发器TH和TL,可通过软件写入户报警上下限.DS18B20温度传感器地内部存储器还包括一个高速暂存RAM和一个非易失性地可电擦除地EERAM.高速暂存RAM地结构为8字节地存储器.头2个字节包含测得地温度信息,第3和第4字节TH和TL地拷贝,是易失地,每次上电复位时被刷新.第5个字节,为配置寄存器,它地内容用于确定温度值地数字转换分辨率.DS18B20工作时寄存器中地分辨率转换为相应精度地温度数值.该字节各位地定义如下图所示.低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是

17、在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换地精度位数,来设置分辨率.DS18B20高速暂存器共9个存存单元,如表所示:表3.3 DS18B20地引脚分布图序号 寄存器名称 作 用 0 温度低字节 以16位补码形式存放 4、5 保留字节1、21 温度高字节 6 计数器余值 2 TH/用户字节1存放温度上限 7 计数器/3 HL/用户字节2存放温度下限 8 CRC 高速暂存RAM地第6、7、8字节保留未用,表现为全逻辑1.第9字节读出前面所有8字节地CRC码,可用来检验数据,从而保证通信数据地正确性.当DS18B20接收到温度转换命令后,开始启动转换.转换

18、完成后地温度值就以16位带符号扩展地二进制补码形式存储在高速暂存存储器地第1、2字节.单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625LSB形式表示.当符号位S0时,表示测得地温度值为正值,可以直接将二进制位转换为十进制;当符号位S1时,表示测得地温度值为负值,要先将补码变成原码,再计算十进制数值.表3.4是一部分温度值对应地二进制温度数据.表3.4 温度精度配置温度/二进制表示十六进制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 0000019

19、1H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H0000 0000 0000 10000000H-0.51111 1111 1111 0000FFF8H-10.1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FE6FH-551111 1100 1001 0000FC90H由于DS18B20采用地“一线总线”结构,所以数据地传输与命令地通讯只要通过微处理器地一根双向I/O口就可以实现.DS18B20约定在每次通信前必须对其复位,具体地复位时序如图3.5所示.图3.

20、5 DS18B20复位时序图温度传感器与主控芯片连接如图3.6所示.图3.6 DS18B20与AT89C51连接图2.2.5晶振复位电路设计AT89C51中有一个用于构成内部振荡器地高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器地输入端和输出端.这个放大器与作为反馈元件地片外石英晶体或者陶瓷谐振器一起构成自然振荡器.外接石英晶体及电容C1、C2接在放大器地反馈回路中构成并联振荡电路.复位可分为上电复位和手动复位.晶振复位电路如图3.7所示.图3.7单片机晶振复位电路2.2.6外部中断模块设计中断是指CPU在执行当前程序地过程中,由于某种随机出现地外设请求或CPU内部地异常事件,使C

21、PU暂停正在执行地程序而转去 执行相应地服务处理程序;当服务处理程序运行完毕后,CPU再返回到暂停处继续执行原来地程序.89C51地中断结构如图3.8所示.图3.889C51中断系统总图而在本设计中只使用了其中一个中断,外部中断,也就是P3.2端口.具体按键中断连接如图3.9所示.图3.9外部中断连接按键图 该模块使用一个按键控制外部中断.按下按键即进入中断.待按键松开,即跳出中断.3软件设计系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序,读取时钟数据子程序,时钟转换显示子程序,彩屏显示子程序,按键处理程序,字库等.3.1 系统主程序设计主程序地

22、主要功能是负责日历、温度地实时显示,读出并处理DS18B20地测量地当前温度值和DS1302当前地时间值、处理外部中断请求.主程序流程图3.1所示. YN读取DS18B20序列号读取日期、温度彩屏显示图3.1 主程序流程图在主程序中,初始化包括DS18B20初始化、DS1302初始化、彩屏清屏程序.分别为:Ds18b20Init()。Ds1302Init()。TFT_ClearScreen(0x0000).其中如果要想上电或复位后,时间显示能够接着上电或复位前地时间显示,就需要注释掉DS1302初始化. 在主程序开头要开启中断,先开启总中断,然后开启中断1,进入中断.EA=1。EX0=1。IT

23、0=1.设置一个全局计数变量count1,在主程序中,count1地状态决定要显示日历还是温度序列号.当count1为0时,显示日历及温度;当count1为1时显示DS18B20内部序列号.详细代码见附录(附录B).3.2 各模块子程序设计3.2.1彩屏显示子程序设计TFT液晶模块可以显示数字、中英文字符和图案.本设计中只使用了中英文字符显示和数字显示.彩屏还包含了丰富地色彩.本设计使用黑色为界面背景和字体背景0X00、红色字体0XFF.设计彩屏右上角显示为作者英文名;第二行为“电子日历”四个字;第三行居中显示年月日,格式为“xxxx-xx-xx”;第四行居中显示星期,格式为“星期 X”;第七

24、行居中显示温度信息,格式为“温度:XXX.XX ”.彩屏显示程序中,包括彩屏驱动程序、字库、初始化程序、汉字显示程序、字符显示程序、直线显示程序等.彩屏显示子程序流程图如图3.2所示.调用汉字显示程序调用字符显示程序字库调用按地址显示图3.2 彩屏显示子程序流程图彩屏初始化程序如下:void TFT_Init(void) /初始化函数名 uint i。 TFT_RST = 1。 for(i=500。 i0。 i-)。 /延时 TFT_RST = 0。 for(i=5000。 TFT_CS = 0。 TFT_WriteCmdData(0x0080,0x008D)。 TFT_WriteCmdDat

25、a(0x0092,0x0010)。 TFT_WriteCmdData(0x0011,0x001B)。 TFT_WriteCmdData(0x0012,0x2101)。 TFT_WriteCmdData(0x0013,0x0066)。 TFT_WriteCmdData(0x0014,0x4656)。 TFT_WriteCmdData(0x0010,0x0800)。 TFT_WriteCmdData(0x0011,0x011B)。 TFT_WriteCmdData(0x0011,0x031B)。 TFT_WriteCmdData(0x0011,0x071B)。 TFT_WriteCmdData(0

26、x0011,0x0F1B)。 TFT_WriteCmdData(0x0011,0x0F3B)。 TFT_WriteCmdData(0x0001,0x0128)。 TFT_WriteCmdData(0x0002,0x0100)。 TFT_WriteCmdData(0x0003,0x1030)。 TFT_WriteCmdData(0x0007,0x1012)。 TFT_WriteCmdData(0x0008,0x0808)。 TFT_WriteCmdData(0x000B,0x1105)。 TFT_WriteCmdData(0x000C,0x0000)。 TFT_WriteCmdData(0x00

27、0F,0x1A01)。 TFT_WriteCmdData(0x0015,0x0070)。 TFT_WriteCmdData(0x0036,0x00EF)。 TFT_WriteCmdData(0x0037,0x0000)。 TFT_WriteCmdData(0x0038,0x013F)。 TFT_WriteCmdData(0x0039,0x0000)。 TFT_WriteCmdData(0x0050,0x0101)。 TFT_WriteCmdData(0x0051,0x0500)。 TFT_WriteCmdData(0x0052,0x0500)。 TFT_WriteCmdData(0x0053,0x0400)。 TFT_WriteCmdData(0x0054,0x0805)。 TFT_WriteCmdData(0x0055,0x0009)。 TFT_WriteCmdData(0x0056,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1