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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(基于STM32开发板的实用温度及设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于STM32开发板的实用温度及设计.docx

1、基于STM32开发板的实用温度及设计实用温度计 生产组长:丁广杰 设计组长:栗向滨 小组成员:常聪颖,李磊,贾丽娜, 关胜盘,孟纯,李森源, 史海彬,解伟,任修峰 日期:2012年9月20日实用温度计第二组生产实习设计报告1、概述 温度,对农作物的产量尤为重要,因此对当前温度的测量以及通过对温度的测量而得出相应的温度指标就显得尤为重要,我们设计的温度计则恰恰解决了这个问题。我组所设计的温度计具有显示时间,显示当前温度,一段时间的温度指标以及当前温度与指标下应该注意的事项等。为了达到远程监测,我组还添加了通信的发送功能。因为温度指标与时间密切相关,所以我们还相应的增加了整点计时报时功能。二、总体

2、设计(一)总体系统结构(2)模块划分1、测温模块:主要通过读取温度传感器DS18B20的测量值完成温度的测量功能。2、显示模块:将当前的温度,一段时间的温度指标以及当前温度与指标下应该注意的事项显示在OLED上3、按键模块:用于调整时间以及对OLED进行画面切换4、SD卡读取模块:对存入其中的宜忌事项进行读取5、RS232通信模块:将当前时间、当前温度、一段时间的温度指标以及当前温度与指标下应该注意的事项传至上位机(三)人员分工丁广杰,栗向滨:整体规划与安排常聪颖,李磊:OLED的使用 其中常聪颖负责主程序的整合贾丽娜,孟纯:SD卡的读取与温度指标的计算关胜盘,解伟:日历时钟与键盘的使用史海彬

3、,任修峰:用RS232与上位机联机李森源:温度的测量3、关键模块设计(一)温度18B20:每经过一定时间,读取18B20所测得温度,并实时显示,同时STM32的处理显示温度指标。约一分钟保存一次所测温度,计算温度指标并在需要时与SD卡里的值惊醒比对面,待需要时进行屏显。(二)时间PCF8563T:用按键设置好准确时间,当达到正点时产生中断,单片机接收后,使蜂鸣器报点,报时10秒后消失。(三)存储SD卡:因为得出的当前温度与指标下应该注意的事项以及不同作物相应的生长温度等均需要进行存储以便分析,这些数据均是需存至存储卡中的。(四)通信RS23:通过RS232与PC上位机进行联通将当前温度,一段时

4、间的温度指标以及当前温度与指标下应该注意的以及事项等传到PC级处从而实现远程监控。4、测试结果测试显示,最终结果基本达到了预期目标,三个界面均正常显示:(1)界面一:当前时间与当前的实时温度(2)界面二:显示温度指标,分别为“平均温度”、“最大值”与“最小值”(3)界面三:针对当前温度以及温度指标进行相应的提醒(4)每当到达整点便报时整点10秒(5)以上的三个界面均由拨码开关进行切换(6)四个按键均可以对时间的“小时”与“分钟”进行加减操作5、总结 经过两周多努力,从开始的确定题目到最终的完成设计成果,二组中的每一位成员都表现出了积极的态度,认真分析题目,不畏艰难的研究程序,一些有基础的成员还

5、义务的挑起了不属于自己分工范围的任务,加班加点地完成了本组的最终成果! 虽然设计上各项性能指标均达到了预期的的目标,但是在答辩之后我们又发现了一些问题以及需要改进的地方:1、上位机的端口号可以设计成自动识别模式2、上位机的界面可以做的更加炫目与完善一些以及将上位机获得的温度数据显示成浮点数3、Sprintf通过设置sprintf(s,f%,temp)显示带小数点的温度值4、RS232是全双工通信5、对于串口丢失数据的问题,因为温度不会在短时间内突变,所以出现间歇间断点丢失数据的情况,可以忽略不计,可以设置检测间断时间的机制,如果出现间断时间太长则报警提醒系统处理6、时钟芯片可以直接读出小时,分

6、钟以及秒的信息7、OLED的行距可以通过writedata进行行距设置8、SD卡通过将属性中的只读改作既可读又可写的“W+”从而实现数据可以写进SD卡这项功能9、直接测出来的温度值与实际的温度值有出入需要标定,我组进行减去2.5摄氏度惊醒标定10、通过对测得的温度值进行数字滤波可以提高温度显示的稳定度,如果算法合理,可以达到显示三位小数仍然具有一定的稳定度的能力11、应该设置异常值剔除机制,通过设定正常值以及对前后温度差值的检测进行异常值的剔除六、附录(一)关键程序代码1、主程序int main (void) SystemInit();/设置系统时钟 LED_GPIOInit(); NVIC_

7、Configuration(); RS232Init(9600); TIMER3_Init(); oledinit(); SW_GPIOInit(); BuzzOff(); while(1) test(); 2、检测程序void test() keytest(); timechange();3、键盘检测void keytest() if( SW3Up()&SW4Up() if(0=a) WriteData(0,0,132,0,8,0); /清屏 calculateshow(&ave,&max1,&min1); a=1; b=c=0; else if( SW3Down()&SW4Down() i

8、f(0=b) WriteData(0,0,132,0,8,0); /清屏p1 Function_Time1(); a=c=0; b=1; else if(SW3Up()|SW4Up() if(0=c) WriteData(0,0,132,0,8,0); /清屏 / Function_Time1(); /temp=get_temp(); fileshow();/&temp); c=1; a=b=0; 4、时间设置void timechange() while(KEY1Read() while(KEY1Read(); RealTime.hour+; if(RealTime.hour23) Real

9、Time.hour=0; SetTime(&RealTime); break; while(KEY3Read() while(KEY3Read(); RealTime.minute+; if(RealTime.minute59) RealTime.minute=0; SetTime(&RealTime); break; while(KEY2Read() while(KEY2Read(); a=RealTime.hour; RealTime.hour-; b=RealTime.hour; if(a=0) RealTime.hour=23; SetTime(&RealTime); break; while(KEY4Read() while(KEY4Read(); b=RealTime.minute; RealTime.minute-; if(b=0) RealTime.minute=59; SetTime(&RealTime); break; if( RealTime.minute = 0) if(RealTime.second = 0) if(RealTime.second = 10) BuzzOn(); DelayMs(200); BuzzOff(); DelayMs(200); (2)照片界面一界面二界面三通讯界面

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

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