电子装置课程设计报告温度检测系统设计

上传人:1666****666 文档编号:36210372 上传时间:2021-10-29 格式:DOC 页数:11 大小:699.51KB
收藏 版权申诉 举报 下载
电子装置课程设计报告温度检测系统设计_第1页
第1页 / 共11页
电子装置课程设计报告温度检测系统设计_第2页
第2页 / 共11页
电子装置课程设计报告温度检测系统设计_第3页
第3页 / 共11页
资源描述:

《电子装置课程设计报告温度检测系统设计》由会员分享,可在线阅读,更多相关《电子装置课程设计报告温度检测系统设计(11页珍藏版)》请在装配图网上搜索。

1、 设计题目:温度检测系统设计一、实验内容1、 利用板载模拟温度传感器TC1047A实现一温度采集系统;2、 间隔1-5s采集一次(步进1 s,可以预设),在液晶屏第一行显示连续的3个采集温度值;3、 当最新采集的温度大于这三个温度的平均值温度1时,蜂鸣器报警,当温度降低后,解除报警;4、 记录报警次数,在LCD上显示,,并将结果存入24LC024。二、 电路原理图以及各功能模块的工作原理1、驱动蜂鸣器APP001开发板上的BUZZER是由RC2控制一个三极管来驱动的,当JP4的跳线开关短路时,RC2管脚输出高电平便会使蜂鸣器发出声音,RC2管脚输出低电平便禁止蜂鸣器发声。2.字符LCDAPP0

2、01开发板配置了一个2*16的字符LCD,它和PIC18F452的接口是RD0-RD3连接到LCD模块的DB4-DB7,用来向LCD模块写入命令和数据,其中DB7可以用来作为LCD模块控制器的忙标志位;RD5是读写控制位;RD4是命令和数据标志位。RD=0时,RD0-RD3是读取和写入数据到LCD的命令寄存器;RD=1时,RD0-RD3读取和写入的是要显示的数据。3.温度测量使用模拟温度传感器TC1047A,利用模数转换,将模拟电压转换为数字电压。对应于相应的温度。4.键盘使用开发板上的2组按键SW2和SW35. RTC采用Timer 1外接32.768kHz的晶振可以产生精确的1秒计时,从而

3、实现RTC。6.24LC0247LCD、LED&ADC按键读取三、主要函数程序流程图1.Main函数流程图2.LCD_EEPROM 更新3.温度比较和蜂鸣器四、实验主要源码(1)Main函数:void main(void)int AlarmNum;/*首先初始化*/ InitializePORT( );InitializeINTs( );InitializeAD( ); InitializeTMR1( ); Initialize_I2C_Master( );/*lcd初始化*/ OpenLCD( );while(1) Key_Press_Check();if (Flagbits.Timer1_

4、Flag)/ update Temperature on LCD every 1 SecFlagbits.Timer1_Flag=0;get_key_flag+;if(get_key_flag=Time_count)get_key_flag=0;LCD_Temp_Update() ;/ update TemperatureTemp_Compare(); (2)读取温度:int Read_TC1047_Temperature(void)intAD_Temp;ADCON0bits.CHS0=1;for (AD_Temp=0;AD_Temp5;AD_Temp+);ADCON0bits.GO=1;/

5、Start to convert the A/Dwhile(ADCON0bits.GO);/ Waiting A/D until doneAD_Temp = ReadADC( );/ Get 10 bits A/D resultreturn AD_Temp;(3)LCD_EEPROM 更新void LCD_Temp_Update (void)int i;LCD_Set_Cursor(0,0);/ 清理lcd for (i=0;i16;i+)putcLCD( );/*显示第一个温度值*/LCD_Set_Cursor(0,0);/定位光标T2_buffer0=T2_buffer1;/从后面向前传递

6、温度参数 if(T2_buffer0!=0)/如果是零,不要显示 Buffer_LCD(T2_buffer0);LCD_Set_Cursor(0,4);/定位光标 putcLCD(0xDF);/显示 ”度 “ 这个标志 /*显示第二个温度值*/LCD_Set_Cursor(0,5); if(T2_buffer1!=0)Buffer_LCD(T2_buffer1);LCD_Set_Cursor(0,9);putcLCD(0xDF);/*显示第三个温度值*/LCD_Set_Cursor(0,10);T2_buffer2=T2_buffer3;if(T2_buffer2!=0)Buffer_LCD(

7、T2_buffer2);LCD_Set_Cursor(0,14);putcLCD(0xDF);T2_Buffer=Read_TC1047_Temperature( );/ Get Current Temperature from TC1047AT2_buffer3=T2_Buffer; EEPROM.Word=EERandomRead(0xA0,0x30);/显示累积温度报警次数 LCD_Set_Cursor(1,13);NUM=EEPROM.Byte0;itoa(EEPROM.Byte0,ASCII_String);putsLCD(ASCII_String);/显示当次温度报警次数LCD_S

8、et_Cursor(1,11);itoa(alarm_count,ASCII_String);putsLCD(ASCII_String);EEByteWrite(0xA0, 0x30, (NUM+NUMN);EEAckPolling(0xA0);NUMN=0;(4) 温度比较和蜂鸣器void Temp_Compare(void)int i,range;unsigned int alarm_value=0;/当所有的温度采集完毕之后 才能正常比较 if(T2_buffer0!=0)for(i=0;i(range+0x000A)/温度值超过告警值时报警PORTCbits.RC2=1;/开蜂鸣器PO

9、RTDbits.RD7=1;/点LED D8alarm_count+;NUMN+;else PORTCbits.RC2=0;/观蜂鸣器PORTDbits.RD7=0;/关 LED D8/T2_Buffer_Flag=1;(5) 按键查询void Key_Press_Check(void)if(!SW2)PIE1bits.TMR1IE=0;Delay10KTCYx(100);if(Time_count4)Time_count=1;elseTime_count+;PIE1bits.TMR1IE=1;if(!SW3)EEByteWrite(0xA0, 0x30, 0);EEAckPolling(0x

10、A0);LCD_Set_Cursor(1,13);putcLCD( ) ;LCD_Set_Cursor(1,14);putcLCD( ) ;LCD_Set_Cursor(1,15);putcLCD( ) ;LCD_Set_Cursor(1,6);WriteDataLCD(T);LCD_Set_Cursor(1,7);WriteDataLCD(=);LCD_Set_Cursor(1,8);itoa(Time_count,ASCII_String);putsLCD(ASCII_String);LCD_Set_Cursor(1,9);WriteDataLCD(s);五、心得体会 通过本次实验,我学会

11、了温度检测系统,整个过程如下:首先利用传感器去采集温度,接着将采集过来的温度通过一定的公式转化成电压,然后又通过一定的公式将其转化成电路板上合适的电压值,用AD将其进行编码,最后将其转化成温度显示出来。 接着讲讲主程序的编写主要包括以下部分:首先是程序的初始化,接着跳入循环while(1)中,接着调用Key_Press_Check()对按键进行判断,如果有按键按下则处理按键,然后判断中断,若达到所规定的时间,则更新温度,并将中断次数写入EPROM中,最后在采集完三次温度之后,可以用Temp_Compare()函数进行温度比较,如果温度高于三次温度的平均值,则进行报警。整个过程是采用模块编程、分块调试、之后系统联调的原则。通过本次实验,我觉得.自己学到了很多东西,以后应该会进一步去学习。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!