版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理及应用课程设计总结报告题目:设计人姓名:院系:专业:题目:设计人姓名:院系:专业:学号:指导教师:八路温度巡回检测系统XXXXXXXX学院XXXXXXXXXXXXX日期:201X-XX-XX内容摘要摘要:MCS-51是一种带8K字节闪烁可编程可檫除只读存储器的低电压, 高性能COMOS8的微处理器,俗称单片机。利用单片机与AD转换器设计的八 路温度巡回检测系统,可对某粮库或冷冻厂八点(八个冷冻室或八个粮仓)进行 温度巡回检测。能够测量-30+50oC的温度范围,检测精度不大于1oC。并采 用数码管显示测量值。关键词:MCS-51、温度、巡回检测、 TOC o 1-5 h z 1设计任
2、务31.1引言3 HYPERLINK l bookmark17 o Current Document 1.2设计题目3 HYPERLINK l bookmark20 o Current Document 1.3设计目的32总体方案设计与论证 32.1总体方案设计与论证 3 HYPERLINK l bookmark28 o Current Document 2.2温度采集、计算方案设计与论证 4 HYPERLINK l bookmark31 o Current Document 3硬件设计4 HYPERLINK l bookmark35 o Current Document STC89C52 简
3、介4DS18B20 简介8 HYPERLINK l bookmark72 o Current Document 3.3晶振93.4 LED显示电路电路及实物图94软件设计124.1设计总框图12 HYPERLINK l bookmark89 o Current Document 4.2自动巡检流程图13 HYPERLINK l bookmark92 o Current Document 5系统调试13 HYPERLINK l bookmark98 o Current Document 6总结和个人体会14 HYPERLINK l bookmark107 o Current Document 附
4、录一:设计电路图16附录二:元件清单1617附录三:源程序171、设计任务1.1引言温度测量与控制在工业、农业、国防等行业有着广泛的应用。利用单片机技 术的温度测控仪有着体积小、可靠性高、价格便宜等优点而被广泛应用。1.2设计题目八路温度巡回检测装置1.3设计目的运用所学单片机原理知识,设计和调试小产品,从而了解产品设计开发的一 些基本流程,并且加深对单片机知识的理解。2、总体方案设计与论证2.1总体方案设计与论证本次课程设计的要求是8路温度巡显仪,要正常显示、进行参数设置等多个 工作状态故系统工作的标志位是程序工作的主要的线索,每个功能模块在判断后 系统的标志位再去执行相应的功能。见如下的框
5、图所示。图2.1图2.1系统软件设计的整体思路框图2.2温度采集、计算的方案设计与论证方案一采用ADC0809芯片把经过每一路温度传感变送器变换为05V电压 信号转化为数字量采用滚存最新的4次温度值进行求平均值并且每个工作大循 环调用一次,把这个平均值扩大到01000的温度内码存储起来这样一来可以使 -50 C、0 C、50 C分别变换成0、500、1000的温度内码,要显示的时候读 出温度内码转化为BCD码送入8位7段数码管显示,8路温度信号采用巡回动 态显示。方案二也是采用ADC0809用每调用一次温度采集子程序就把8路的温度 每一路采集四次存放到存储单元中,这样每调用一次就要算32次,每
6、次AD转 化最少要100US要是稍微延时1MS的时候,每次调用就要32MS。如果显示的 时候采用静态显示的时候要很多条I/O线。综上所述,选用方案一,要是选用方案二的时候每次调用时太久不利于系统 工作,会影响后面的程序调用。每个大循环调用1路四次的AD转化且滚存到存 储区中,把AD值转化成温度内码,再把温度内码转化成BCD码。3、硬件设计3.1 STC89C52 简介T2/P1. 0 T2EX/P1.1 P1. 2 P1. T2/P1. 0 T2EX/P1.1 P1. 2 P1. 3 P1. 4 P1. 5 P1. 6 P1. 7RST RXD/P3. 0 TXD/P3. 1 INT0/P3.
7、 2 INT1/P3. 3 TO/P3. 4 JH/P3. 5 WR/P3.6 WP3. 7 图3XTAL2 STC89C52是一种带8K 字节 Programable and Erasable Read Onl)0 12 3 412345678 911111D-P409876 5 4321098743333333 333222In261625STC89C52引脚图1823闪烁可编程可檫除只读/ Memory )的低电压,I vccI PO. O/ADO| PO. 1/AD1I PO. 2/AD2I PO. 3/AD3I PO. 4/AD4I PO. 5/AD5I PO. 6/AD6I PO.
8、 7/AD7I EA I ALE/PROGI PSENI P2. 7/A15I P2. 6/A14I P2. 5/A13I P2. 4/A12I P2. 3/A11I P2. 2/A10储器 (FPEROM-Flash高性能ICoMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造, 与工业标准的MCS-51指令集和输出管脚相兼容。复位及复位电路(1)复位操作复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片 机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序 运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位
9、键重新启 动。除PC之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表一 所示。表些寄存器的复位状态寄存器复位状态寄存器复位状态PC0000HTCON00HACC00HTL000HPSW00HTH000HSP07HTL100HDPTR0000HTH100HP0-P3FFHSCON00HIPXX000000BSBUF不定IE0X000000BPCON0XXX0000BTMOD00H(2)复位信号及其产生RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续 24个振荡周期(即二个机器周期)以上。若使用颇率为6MHz的晶振,则复位信号 持续时间应超过4us才能完成复位操作。产
10、生复位信号的电路逻辑如图3.4所示:RSTWpdRSTWpdVxVS8图3.3复位信号的电路逻辑图整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(RST)送至 施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器 的输出进行采样,然后才得到内部复位操作所需要的信号。复位操作有上电自动复位相按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图3.4(a) 所示。这佯,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位, 即接通电源就成了系统的复位初始化。按键手动复位有电平方式和脉冲方式两种。其中,按键电平复位是通过使复位端经电
11、阻与Vcc电源接通而实现的,其电路如图3.4 (b)所示;而按键脉冲 复位则是利用RC微分电路产生的正脉冲来实现的,其电路如图3.4(c)所示:(a)(a)上电复位(b)按键电平复位(c)按键脉冲复位图3.4复位电路上述电路图中的电阻、电容参数适用于6MHz晶振,能保证复位信号高电平 持续时间大于2个机器周期。STC89C52具体介绍如下:主电源引脚(2根)VCC(Pin40):电源输入,接+ 5V电源GND(Pin20):接地线外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端控制引脚(4根)RST/VPP(Pin9):复位引脚,
12、引脚上出现2个机器周期的高电平将使单片机复 位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指 令,如果接高电平则从内部程序存储器读指令。可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O 口,分别位P0、P1、P2、P3 口,每个口有8位(8根引脚),共32根。PO 口(Pin39Pin32): 8 位双向 I/O 口线,名称为 P0.0P0.7P1 口(PinlPin8) : 8位准双向I/O 口线,名称为P1.0P1.7P2 口(Pin2
13、1Pin28) : 8位准双向I/O 口线,名称为P2.0P2.7P3 口(Pin10Pin17) : 8位准双向I/O 口线,名称为P3.0P3.7STC89C52主要功能如表二所示。表二 STC89C52主要功能主要功能特性兼容MCS51指令系统8K可反复擦写Flash ROM32个双向I/O 口256x8bit 内部 RAM3个16位可编程定时/计数器中断时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能3.2 DS18B20 简介DS18B20的读写时序和测温原理与DS1820相同,只是
14、得到的温度值的位 数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。DS18B20 测温原理如图所示。图中低温度系数晶振的振荡频率受温度影响很小,用于 产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡 率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存 器被预置在一55C所对应的一个基数值。计数器1对低温度系数晶振产生的 脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将 加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振 产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄 存器值的累加,此时温度
15、寄存器中的数值即为所测温度。图3中的斜率累加 器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。,|*勒儒漏空系散岫_或孺-|BI顼-尚:度器|轴g弱浏闻 -I计数器纣ri停止 三U 图3.6 DS18B20测温原理框图3.3晶振为了产生时钟信号,在8052内部设置了一个反相放大器,XTAL1是片内振 荡器反相放大器的输入端,XTAL2是片内振荡器反相放大器的输出端,也是内部 时钟发生器的输入端。当使用自激振荡方式时,XTAL1和XTAL2外接石英晶振, 使内部振荡器按照石英晶振的频率振荡,就产生时钟信号。晶振一般使用石英晶体, 其频率由系统需要和器件决定,在频率稳定度要求不
16、高时也可以使用陶瓷滤波器。使用石英 晶体时C1、C2为C1=C2=30 (10) pF,使用陶瓷滤波器时,C1=C2=40 (10) pF。本系 统用12MHZ的石英晶振,接STC89C52RC的18和19脚,具体电路如图3.7所示。GND|30pFCLTHt- z GND|30pFCLTHt- z 12MHzSTC89C52K.C19XT ALLXTAL230pF C2图3.|时钟信号电路(晶振)3.4 LED显示电路显示电路采用静态显示,4位LED数码管。本文的显示电路如图3.8所示。 其中P0 口作为7断码和小数点的选择,P2 口作为位码的选择,在断码和P0 口 之间还需加上1K的上拉电
17、阻,以保证LED灯的正常显示。vcc19vcc19XTAL1XTAL2P0_0/AD0PO.l/ADlP0_2/AD2P03/AD3P0.4/AD4P0_5/AD5P0_6/AD6P0.7/AD7RSTEAWPPLO/HPSENP1.1/T2EXALETROGP3QRxDP1.2-ECIP1.3/CEX0P1.4/CEX1P1.5/CEX2P3.1/TxDP3.2/ST0P1.6/CEX3P1.7/CEX4P3.3/INT1P3.4/T0P2.0/A8P3.5/T1P3.6/WRP2.1/A9PE2/A1QP2.3/A11P2.4/A12P7S/A11STC:89C52RC图3.8 LED显示
18、电路3.3硬件设计框图、完整电路及实物图单片机复位按键调整节拍nA T 5 一七LED显示二切换和冻结/ADC定口9转化工8路温度变送器图3.9硬件框图完整电路STC89C52RCVCCPOO. ADOXTAL1单片机复位按键调整节拍nA T 5 一七LED显示二切换和冻结/ADC定口9转化工8路温度变送器图3.9硬件框图完整电路STC89C52RCVCCPOO. ADOXTAL1P0.1/AD1XTAL2P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7RSTEAVPPP1.0/T2PSENP1.1/T2EXALEPROGPL2/ECIP1.3/
19、CEX0P1.4/CEX1P3.0KxDP1.5/CEX2P3.1/TxDP1.6/CEX3P3.2/INT0P1.7/CEX4P33INT1P34T。P2.0/A8P3.5/T1P2.1/A9P36WRP2.2/A10P3.7RDP2.3/A11P2.4/A12P2.5/A13P2.6/A14VSSP2.7/A154012346789VCC_TGND图3.10完整电路实物图4、软件设计4.1设计框图系统总框图及软件设计说明:图4.1系统软件设计总流程图及解释4.2自动巡检流程图返回图4.2 AD自动巡检的流程图5系统调试1、调试记录:上电后自检正常但是进入自动巡检的时候只是显示一个路次, 后
20、面的数码管都熄灭了。解决方案:进入单片机模拟调试发现程序进入温度采集的子程序无法跳出,过 程中只有该程序和定时器中断服务程序可以运行,经过仔细仿真的检查发现有一 个标号表错了了,导致该子程序成了个死循环无法返回了,改正后发现情况还有 一点改变但是还是不正常。回想到自己的程序是一次调用就要把8路每路采集四 次温度值进行保存,每次AD转化就要有1MS的延时,这样一来这个子程序的 调用就要花掉32 MS时间导致了后面的子程序调用不正常。改成每次调用的时 候只进行一次AD转化,这样每个大循环大概8MS左右进行一次AD转换。发 现显示正常了。2、调试记录:发现温度巡检正常了但是当第一路和第二路时调节电位
21、器的时候 温度只能是从1.125.01.1显示,估计是转化成温度内码或者温度内码转化成 BCD码的时候有错误。解决方案:对上述两个程序进行仔细检查发现转化成温度内码的子程序中的工作 寄存器R0和R1的值,对后面的温度内码转化成BCD的子程序中的R0和R1 调用有影响,导致了计算出错了。以后调用子程序的时候先要记得对工作寄存器 进行正确的初始化以保证后面程序调用的时候不出错。3、调试记录:发现单板机在上电后直接显示出第二路的温度值且在该路停留的 时间比较久明显长于设定的节拍。解决方案:发现工作初始化的时候先打开定时器再进行的自检的操作的导致没有 显示的时候定时器就开始了计时,把定时器开启放到自检
22、程序后一切显示正常 了。6总结及个人体会在本次设计的过程中,我发现很多的问题,本次单片机课程设计重点就在于 软件算法的设计,需要有很巧妙的程序算法(比如T内码转化程序,T内码转化 为BCD码),虽然以前写过几次程序,但我觉的写好一个程序并不是一件简单的 事,就是简单的AD转换程序要充分考虑整体用时,要调试很久。程序编写的时 候也要很重视子程序的模块化。只有很好的模块化之后才能有利于用到别的程序 中。就是因为自己的模块化不是很好导致很多莫名的错误。在课程设计我也认识到了团队合作的重要性,很多很好的算法要通过大家的 不断讨论,交流才能出来。在当今社会一个人很难成就大业,要有自己的一个核 心的团队才
23、能使工作更有效率。这次课程设计也让清楚了很多的仿真的软件很不可靠,这次课程设计中我应 用了伟福LAB2000仿真实验系统进行不断的仿真,有的时候仿真的好好的,下载 到实验板上面就会出错,有的时候仿真的效果不是很好但是下载到实验板就会运 行的很好所以学习单片机编写程序的时候要结合仿真和实物不断进行调试才能 保证自己的程序的正确性和编写调试的速度。从这次的课程设计中,我真真正正的意识到,在以后的学习中,要理论联系 实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有 在经常的写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。最后,在此要感谢王老师对我们的认真指导,谢谢!
24、参考文献:李朝青.单片机原理及接口技术(第3版)M.北京:航空航天大学出版 社,2005陈世和.电工电子实习教程M.北京:航空航天大学出版社,2007孙进生等.电子产品设计实例教程M.北京:冶金工业出版社,2004张伟等.Protel 99SE实用教程M.北京:人民电邮出版社,2008白瑞青,金功伟.单片机温度巡回监测系统J.测试技术学报,98年第 12卷第3期李红刚,方佳,王强,钱双艳.基于At89C51的八路温度巡回检测系统设计 J.热带农业工程,2010年第34卷第1期附录一、设计电路图VCCPO.O/ADO XTAL1P01/AD1XTAL2P0.2/AD2P0.3/AD3 P0.4/
25、AD4 P0.5/AD5 PO.6.AD0;t-);)/* 显示扫描函数 */scan()(char k;for(k=0;k0;i-)(DQ=1;_nop_();_nop_();/从高拉倒低DQ=0;_nop_();_nop_();_nop_();_nop_(); /5 usDQ=val&0 x01;/最低位移出delay(6);/66 usval=val/2;/右移 1 位 DQ=1; delay(1); /*DS18B20 读 1 字节函数*/ 从总线上取1个字节 uchar read_byte(void) ( uchar i; uchar value=0;for(i=8;i0;i-) (DQ=1;_nop_();_nop_();value=1;DQ=0;_nop_();_nop_();_nop_();_nop_();/4 usDQ=1;_nop_();_nop_();_nop_();_nop_();/4 usif(DQ)value|=0 x80; delay(6);/66 us DQ=1; return(value); /* 读出温度函数 */read_te
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东高速划线施工方案(3篇)
- 忻州园林仿古施工方案(3篇)
- 搜索新型营销方案(3篇)
- 昆明家居装修施工方案(3篇)
- 格珊吊顶施工方案(3篇)
- 水果拼盘营销方案(3篇)
- 海事应急预案范文(3篇)
- 火锅各种营销方案(3篇)
- 电房模板施工方案(3篇)
- 福州纸伞营销方案(3篇)
- 2026泰信基金管理有限公司社会招聘备考题库含答案详解(培优a卷)
- (二模)济南市2026届高三第二次模拟考试英语试卷(含答案)+听力音频
- 2026内蒙古和林格尔新区建设管理咨询有限公司招聘6人建设考试备考题库及答案解析
- 食品安全标准及员工培训手册
- 2026年度学校心理健康节方案
- 2026年地理信息系统与环境影响评价
- Cabling电缆设计50标准教材
- 输电线路舞动介绍
- 教师简笔画培训
- 安徽省合肥市庐阳区庐阳中学2022-2023学年七年级下学期期中预测数学作业试卷(含答案)
- 个人以公司名义购车的证明模板
评论
0/150
提交评论