学位论文—基于热敏电阻的数字温度计.doc
《学位论文—基于热敏电阻的数字温度计.doc》由会员分享,可在线阅读,更多相关《学位论文—基于热敏电阻的数字温度计.doc(22页珍藏版)》请在咨信网上搜索。
1、科信学院单片机应用系统(三级)项目设计说明书(2012/2013学年第二学期)题 目 : 基于热敏电阻的数字温度计 _专业班级 : 电子信息工程1021 学生姓名 : 指导教师 : 马永强 吴开兴 刘会军 马小进 设计周数 : 两周 设计成绩 : 2013年6月28日基于热敏电阻的数字温度计目录1实验设计目的22系统软件设计22.1软件总体流程设计22.2系统设计及主要程序32.2.1系统主函数32.2.2汉显lcd1286442.2.3时钟芯片DS130262.2.4ADC0832112.3上位机设计及主要代码142.3.1SerialPort 组件142.3.2串口操作152.3.3数据的
2、接收152.3.4保存数据与清空数据173系统硬件电路设计173.1恒温桥电路173.2信号放大电路183.3A/D转换电路183.4控制电路193.5显示电路204总结与展望20参考文献211实验设计目的 随着以知识经济为特征的信息化时代的到来人们对仪器仪表的认识更加深入,温度作为一个重要的物理量,是工业生产过程中最普遍,最重要的工艺参数之一。随着工业的不断发展,对温度的测量的要求也越来越高,而且测量的范围也越来越广,对温度的检测技术的要求也越来越高,因此,温度测量及其测量技术的研究也是一个很重要的课题。本系统的温度测量采用的就是热阻效应。温度测量模块主要为温度测量电桥,当温度发生变化时,电
3、桥失去平衡,从而在电桥输出端有电压输出,但该电压很小。将输出的微弱电压信号通过OP07放大,将放大后的信号输入AD转换芯片,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来。单片机显示模块电 源 模 块测温模块信号放大模块AD转换模块图1-1系统框图2系统软件设计2.1软件总体流程设计软件设计采用c语言编程,运用模块化程序设计思想,对不同功能模块的程序进行分别编程,以便移植或调用,这样使软件层次结构清晰,有利于软件的调试修改。数字温度计系统软件部分采用模块化设计思想,将系统分为主程序、初始化处理模块、中断检测模块、延时处理模块、数据处理模块、显示模块,其软
4、件系统的主程序实现流程如下图所示: 开 始DS1302时钟信息采集数据处理12864显示结 束系统初始化PT100温度采集图2-1系统软件流程2.2系统设计及主要程序2.2.1系统主函数程序的入口,分别调用了其他头文件,实现了lcd12864汉显的显示,DS1302时钟芯片时间的运行,ADC0832模数转换。主要代码实现如下:#include reg52.h#include intrins.h#include lcd12864.h#include DS1302.h#include ADC0832.h#define uchar unsigned char#define uint unsigned
5、 intvoid main( void )Com_Init();v_Lcd12864Init_f() ;v_Lcd12864PutString_f( 1,0, 年) ;v_Lcd12864PutString_f( 3,0, 月) ;v_Lcd12864PutString_f( 5,0, 日) ;v_Lcd12864PutString_f( 1,1, 时) ;v_Lcd12864PutString_f( 3,1, 分) ;v_Lcd12864PutString_f( 5,1, 秒) ;v_Lcd12864PutString_f( 5,2, );while(1)Run_DS1302();displ
6、ayADC ();send(); _nop_; 2.2.2汉显lcd12864 主要实现汉显lcd12864接收时钟芯片DS1302与A/D转换模块传递来的温度与时间,并显示在液晶屏上。主要代码实现如下:#includelcd12864.h#include intrins.h #define uchar unsigned char#define uint unsigned intvoid v_Lcd12864CheckBusy_f( void ) /忙检测函数 unsigned int nTimeOut = 0 ; SET_INC SET_READ CLR_EN SET_EN while( (
7、 io_LCD12864_DATAPORT & 0x80 ) & ( +nTimeOut != 0 ) ) ; CLR_EN SET_INC SET_READvoid v_Lcd12864SendCmd_f( unsigned char byCmd ) /发送命令 v_Lcd12864CheckBusy_f() ; SET_INC SET_WRITE CLR_EN io_LCD12864_DATAPORT = byCmd ; _nop_(); _nop_(); SET_EN _nop_(); _nop_(); CLR_EN SET_READ SET_INCvoid v_Lcd12864Send
8、Data_f( unsigned char byData ) /发送数据 v_Lcd12864CheckBusy_f() ; SET_DATA SET_WRITE CLR_EN io_LCD12864_DATAPORT = byData ; _nop_(); _nop_(); SET_EN _nop_(); _nop_(); CLR_EN SET_READ SET_INCvoid v_DelayMs_f( unsigned int nDelay ) /延时 unsigned int i ; for( ; nDelay 0 ; nDelay- ) for( i = 125 ; i 0 ; i-
9、) ; void v_Lcd12864Init_f( void ) /初始化 v_Lcd12864SendCmd_f( 0x30 ) ; /基本指令集 v_DelayMs_f( 50 ) ; v_Lcd12864SendCmd_f( 0x01 ) ; /清屏 v_DelayMs_f( 50 ) ; v_Lcd12864SendCmd_f( 0x06 ) ; /光标右移 v_DelayMs_f( 50 ) ; v_Lcd12864SendCmd_f( 0x0c ) ; /开显示void v_Lcd12864SetAddress_f( unsigned char x, y ) /地址转换 unsi
10、gned char byAddress ; switch( y ) case 0 : byAddress = 0x80 + x ; break; case 1 : byAddress = 0x90 + x ; break ; case 2 : byAddress = 0x88 + x ; break ; case 3 : byAddress = 0x98 + x ; break ; default : break ; v_Lcd12864SendCmd_f( byAddress ) ;void v_Lcd12864PutString_f( uchar x, uchar y, uchar *pD
11、ata ) v_Lcd12864SetAddress_f( x, y ) ; while( *pData != 0 ) v_Lcd12864SendData_f( *pData+ ) ; 2.2.3时钟芯片DS1302 主要为汉显12864提供时间输出。主要代码实现如下:#includeDS1302.h#includeintrins.h#includelcd12864.h#define uchar unsigned char#define uint unsigned intvoid v_RTInputByte(uchar ucDa)/ 功能 : 往DS1302写入1Byte数据uchar i;
12、ACC = ucDa;T_RST = 1;for(i=8; i0; i-)T_IO = ACC0;T_CLK = 1;T_CLK = 0;ACC = ACC 1;uchar uc_RTOutputByte(void)/从DS1302读取1Byte数据 uchar i;T_RST = 1;for(i=8; i0; i-)ACC = ACC 1;T_IO=1;ACC7 = T_IO;T_CLK = 1;T_CLK = 0;return(ACC);void v_W1302(uchar ucAddr, uchar ucDa) /往DS1302写入数据 ucAddr: DS1302地址, ucDa: 要
13、写的数据T_RST = 0;T_CLK = 0;T_RST = 1;v_RTInputByte(ucAddr); / 写地址 _nop_();_nop_();v_RTInputByte(ucDa); / 写1Byte数据T_CLK = 1;T_RST = 0;uchar uc_R1302(uchar ucAddr) /读取DS1302某地址的数据 ucAddr: DS1302地址uchar ucDa;T_RST = 0;T_CLK = 0;T_RST = 1;v_RTInputByte(ucAddr); /写地址,命令_nop_();_nop_();ucDa = uc_RTOutputByte
14、(); /读1Byte数据T_CLK = 1;T_RST = 0;return(ucDa); /ucDa :读取的数据void v_BurstW1302T(uchar *pSecDa) /往DS1302写入时钟数据uchar i;v_W1302(0x8e, 0x00); /控制命令,WP=0,写操作T_RST = 0;T_CLK = 0;T_RST = 1;v_RTInputByte(0xbe); /0xbe:时钟多字节写命令for(i=8; i0; i-) /8Byte = 7Byte 时钟数据 + 1Byte 控制v_RTInputByte(*pSecDa); /写1Byte数据pSecD
15、a+;T_CLK = 1;T_RST = 0;void v_BurstR1302T(uchar *pSecDa) /读取DS1302时钟数据uchar i;T_RST = 0;T_CLK = 0;T_RST = 1;v_RTInputByte(0xbf); /0xbf:时钟多字节读命令for(i=8; i0; i-)*pSecDa = uc_RTOutputByte(); /读1Byte数据pSecDa+;T_CLK = 1;T_RST = 0;void v_BurstW1302R(uchar *pReDa) /往DS1302寄存器数写入数据 pReDa: 寄存器数据地址uchar i;v_W
16、1302(0x8e,0x00); /控制命令,WP=0,写操作T_RST = 0;T_CLK = 0;T_RST = 1;v_RTInputByte(0xfe); /0xbe:时钟多字节写命令for(i=31; i0; i-) /31Byte 寄存器数据v_RTInputByte(*pReDa); /写1Byte数据pReDa+;T_CLK = 1;T_RST = 0;void v_BurstR1302R(uchar *pReDa) /读取DS1302寄存器数据 pReDa: 寄存器数据地址uchar i;T_RST = 0;T_CLK = 0;T_RST = 1;v_RTInputByte(
17、0xff); /0xbf:时钟多字节读命令for(i=31; i0; i-) /31Byte 寄存器数据*pReDa = uc_RTOutputByte(); /读1Byte数据pReDa+;T_CLK = 1;T_RST = 0;/* 输入 : pSecDa: 初始时间地址。初始时间格式为: 秒 分 时 日 月 星期 年* 7Byte (BCD码) 1B 1B 1B 1B 1B 1B 1B*/void v_Set1302(uchar *pSecDa) /设置初始时间 uchar i;uchar ucAddr = 0x80;v_W1302(0x8e, 0x00); /控制命令,WP=0,写操作
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学位 论文 基于 热敏电阻 数字 温度计
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【胜****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【胜****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。