基于MSP430和DS18B20的智能温度检测系统的设计

合集下载

简谈430单片机和DS18B20的无线温检系统

简谈430单片机和DS18B20的无线温检系统

简谈430单片机和DS18B20的无线温检系统1.引言实际工业生产中某些测温场合要求设备性能稳定功耗低,测温过程温度信号处理易实现并且要便于集中处理,传统温度检测方法采用模拟传感器采集温度信号,信号经过一系列的模拟和数字电路处理后,再交由微处理器或DSP处理,元器件数量多而且整个检测系统有较大的偏差,稳定性和抗干扰性能都较差。

相比之下,多点测量及远程无线传输的设计方案成为最佳选择,本设计是基于MSP430单片机和DS18B20温度传感器以及nRF24L01无线收发模块的多点无线温度检测系统,可实现多点检测和无线传输,具有可靠性高、线路简单、测量精度高、功能便于扩展等优点。

2.硬件电路简介本设计采用的主控芯片及主电路模块基于美国TI 公司的超低功耗16位单片机芯片MSP430G2553;温度检测模块采用智能温度传感器DS18B20;电源部分采用可控型升压型DC- DC 电源模块TPS73033,对各功能单元的供电与否进行管理;温度显示单元采用TFT2.4液晶显示屏;射频无线收发模块nRF24L01能将相距甚远的不同节点采集到的数据将送入基站,其通过Motorola公司推出的三线同步接口SPI与单片机连接,系统结构简单,抗干扰能力强,适合于恶劣环境下进行多点无线温度检测,可以保证把传送到单片机的温度数据迅速安全的进行一站式处理。

因温度变化缓慢,本设计采用外设及MCU睡眠+定时唤醒模式进行数据采集,大幅降低系统功耗,延长了系统的使用周期,带来可观的经济效益。

3.各模块特点及简介3.1 传感器DS18B20DS18B20是美国Dalas 半导体公司继DS1820之后最新推出的一种改进型智能温度传感器,与传统的热敏电阻相比,它能够直接读出被测温度,并根据实际要求通过简单的编程实现9~12位的数字值读数方式,读取速度快,具有独特的单总线接口方式,即允许在一条信号线上挂接数十甚至上百个数字式传感器,从而简化测温装置与各传感器的接口,克服了模拟式传感器与微机接口时需要的A/D转换器及其它复杂外围电路的缺点,而且,可以通过总线供电,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源,由它组成的温度测控系统非常方便,而且成本低,体积小,可靠性高。

基于msp430单片机和DS18B20使用数码管显示的温度测量_毕业设计(论文) 精品

基于msp430单片机和DS18B20使用数码管显示的温度测量_毕业设计(论文) 精品

毕业设计论文基于msp430单片机和DS18B20使数码管显示的温度测量摘要:为了在现实生活和工业生产及过程控制中准确测量温度,设计了一种基于低功耗MSP430单片机的数字温度计,整个系统通过单片机MSP430F149控制DS18B20读取温度,采用数码管显示,温度传感器DS18B20与单片机之间通过串口进行数据传输,MSP430系列单片机具有超低功耗,且外围的整合性高,DS18B20只需一个端口即可实现数据通信,连接方便,通过多次实验证明,该系统的测试结果与实际环境温度一致,除了具有接口电路简单,测量精度高,误差小,可靠性高等特点外,其成本低,功耗低的特点使其拥有更广阔的应用前景。

关键字:温度测量MSP430单片机温度传感器DS18B20 超低功耗Abstract: in order to accurately measure the temperature in real life and industrial production and process control, a digital thermometer was designed with low power consumption based on MSP430 single chip microcomputer, the control system of DS18B20 read the temperature through the single-chip MSP430F149, the use of digital tube display, temperature sensor DS18B20 and single chip microcomputer for data transmission through the serial port, MSP430 Series MCU with low power consumption the periphery,and high integration, DS18B20 only needs one port to realize the data communication, the connection is convenient, through many experiments, the test results of the system and the actual environment temperature is the same, except with the interface circuit is simple, high precision, small error, high reliability, low cost, low power consumption it has a wider application prospect.图表1 Keywords: temperature measurement MSP430 temperature sensor DS18B20 ultra low2 power consumption目录一.温度测量器的总体设计 (3)二.温度测量器的硬件选择 (4)1 主控器件:MSP430F149 (4)2 温度信息采集单元:DS18B20 (5)2.1 DS18B20 (5)2.2 DS18B20管脚排列 (6)3.显示单元:数码管及其驱动 (7)3.1 数码管 (7)3.2 驱动芯片:74HC573 (7)三. 系统软件程序 (8)1、系统的程序流图 (8)2.处理DS18B20的子程序 (9)2、1 初始化时序 (10)2、2 写时序 (12)2、3 读时序 (14)3、温度计算子程序 (16)4、处理数码管显示的子程序 (19)四、系统调试 (20)1、硬件检测和调试 (20)2、软件程序调试 (22)3、整体调试 (22)五、结论分析 (23)参考文献: (24)附录一: (24)附录二: (24)附录三: (31)一.温度测量器的总体设计生活中最常见的应该是利用物体的热胀冷缩测温度,比如家里用的温度计、体温计等等,这种很好做但是精密程度不够,反正生活中用的也不需要那么精密。

基于MSP430的温度采集系统设计

基于MSP430的温度采集系统设计

摘要温度的采集和控制在各个行业中都占有重要位置,所以温度采集控制仪表具有广泛的应用前景,越来越多的领域应用到以单片机为控制核心,用液晶以及LED数码管为显示终端的数字化控制设备,通过单片机对被控对象进行智能控制。

本设计采用MSP430F149微处理器为核心处理器,以DS18B20温度传感器采集实现温度信息的采集和处理,并能实时显示温度信息,并能对温度上下限进行控制,通过键盘设定报警温度,高于或低于报警温度,系统报警。

系统硬件由电源及复位模块、温度采集模块、键盘输入模块、显示模块和报警模块六部分组成,软件采用模块化编程思想,采用C51编程语言实现系统功能。

通过搭建测试环境,对该系统进行功能测试和指标测试,测试结果表明,该系统的测试结果与实际环境温度相符合,并且温度报警也比较灵敏,除了具有接口电路简单、测量精度高、误差小、可靠性高等特点外,其低成本、低功耗的特点使其拥有更广阔的前景。

【关键词】MSP430F149,温度控制仪(键盘),DS18B20,LED数码管。

【论文类型】应用型Thesis: MSP430-based temperature acquisition system design Profession: Electronic and Information EngineeringStudents: Wang Yongfei Signature:Instructor: Zhang Xiaoli Signature:AbstractAcquisition and control of the temperature occupy an important position in various industries, so the temperature acquisition and control instrumentation has broad application prospects, more and more areas of application to control core microcontroller, LCD and LED digital tube display terminal of the digital control equipment, and intelligent control of the controlled object by the microcontroller.This design uses the MSP430F149 microprocessor as the core processor, DS18B20 temperature sensor collected temperature information acquisition and processing, and real-time display and control. Via the keyboard to set the alarm temperature, higher or lower than the alarm temperature, the system alarm. This article focuses on the hardware and software programming of the system design process. The hardware has six parts: the power and reset module, the temperature acquisition module, the keyboard input module, display module and alarm module.Up the test environment, the system functional tests and indicators for testing, test results show that the test results is consistent with the actual ambient temperature and the temperature alarm is also more sensitive in addition to the interface circuit is simple, high accuracy, error , high reliability, low-cost, low power consumption make it more broad prospects.【Key words】MSP430F149, the temperature control device (keyboard), DS18B20, LED digital tube.【Type of Thesis】Application目录1 绪论 (1)1.1课题研究目的及意义 (1)1.2课题主要研究内容及指标 (2)2 测温系统总体设计 (3)2.1 系统工作原理 (3)2.2 系统工作流程 (3)2.3 系统核心器件选型 (3)2.4 MSP430F149单片机 (4)2.5 单线数字温度传感器DS18B20 (6)3 测温系统的硬件设计 (8)3.1 电源及复位模块设计 (8)3.2 LED显示模块设计 (9)3.3键盘输入模块设计 (9)3.4温度采集模块设计 (10)3.5温度报警模块设计 (12)4 测温系统的软件设计 (13)4.1 系统软件结构及流程图 (13)4.2 LED显示模块程序设计 (15)4.3 键盘输入模块程序设计 (15)4.4 温度采集模块程序设计 (16)4.5 报警模块程序设计 (16)4.6 主模块程序设计 (17)5 系统测试 (18)5.1 系统硬件调试 (18)5.2 系统软件调试 (18)5.2.1 IAR开发环境简介 (18)5.2.2 软件调试 (19)5.2.3 两部分间的联合调试 (19)5.3系统结果测试 (19)6 总结与展望 (21)6.1 总结 (21)6.2 展望 (21)致谢 ......................................................................... 错误!未定义书签。

基于msp430开发板的ds18b20温度测量程序+1602显示

基于msp430开发板的ds18b20温度测量程序+1602显示

基于msp430开发板的ds18b20温度测量程序+1602显示#include#include#define uchar unsigned char#define uint unsigned int#define DQ_1 P2OUT |= BIT3 //DS18B20数据脚接P2.3,LaunchPad上TXD、RXD跳线帽,由“‖”接改为“〓”。

用USB连接电脑后就可用超级终端看到温度了。

#define DQ_0 P2OUT &= ~BIT3#define DQ_in P2DIR &= ~BIT3#define DQ_out P2DIR |= BIT3#define DQ_val (P2IN & BIT3)#define Read_ROM 0x33 //读ROM#define Match_ROM 0x55 //匹配ROM#define Skip_ROM 0xcc //跳过ROM#define Search_ROM 0xf0 //搜索ROM#define Alarm_Search 0xec //告警搜索#define Convert_T emperature 0x44 //温度转换#define Read_Scratchpad 0xbe //读暂存存储器9字节内容#define Write_Scratchpad 0x4e //写暂存存储器,写的是TH and TL ,接着发送两位数据就可以unsigned int Check_val; //初始化检测变量unsigned int Temp;//温度整数值void UartPutchar(unsigned char c);unsigned char UartGetchar();unsigned int DS18b20_init(void){DQ_out;DQ_0;__delay_cycles(600);DQ_1;__delay_cycles(60);DQ_in;_NOP();if(DQ_val){Check_val = 0; //初始化失败}else{Check_val = 1; //初始化成功}__delay_cycles(10);DQ_out;DQ_1;__delay_cycles(100);return Check_val;}void DS18b20_write_byte(unsigned int dat) {unsigned int i;for(i = 0; i < 8;i++){DQ_0;__delay_cycles(2);if(dat & 0X01)DQ_1;elseDQ_0;__delay_cycles(60);dat >>= 1;;DQ_1;__delay_cycles(10);}}unsigned int DS18b20_read_byte(void) {unsigned i;unsigned int byte = 0;for(i = 0;i < 8;i++){byte >>= 1;DQ_0;__delay_cycles(2);DQ_1;__delay_cycles(2);DQ_in;_NOP();if(DQ_val)byte |= 0x80;__delay_cycles(60);DQ_out;DQ_1;__delay_cycles(10);}return byte;}unsigned int get_one_temperature(void) {unsigned int Temp_l;unsigned int Temp_h;unsigned int t;float tt;DS18b20_init();DS18b20_write_byte(Skip_ROM);DS18b20_write_byte(Convert_Temperature); __delay_cycles(1000000);DS18b20_init();DS18b20_write_byte(Skip_ROM);DS18b20_write_byte(Read_Scratchpad); Temp_l=DS18b20_read_byte();Temp_h=DS18b20_read_byte();t=Temp_h;t<<=8;t=t|Temp_l;tt=t*0.0625;t= tt*10+0.5; //放大10倍输出并四舍五入return(t);}#define DataDir P1DIR#define DataPort P1OUT#define Busy 0x80#define CtrlDir P2DIR#define CLR_RS P2OUT&=~BIT0; //RS = P3.0 #define SET_RS P2OUT|=BIT0;#define CLR_RW P2OUT&=~BIT1; //RW = P3.1 #define SET_RW P2OUT|=BIT1;#define CLR_EN P2OUT&=~BIT2; //EN = P3.2 #define SET_EN P2OUT|=BIT2;void DelayNus(unsigned int n){CCR0 = n;TACTL |= MC_1; //增计数到CCR0while(!(TACTL & BIT0)); //等待TACTL &= ~MC_1; //停止计数TACTL &= ~BIT0; //清除中断标志}void Delay5ms(void){//unsigned int i;//i=40000;//while (i != 0)// {// i--;// }DelayNus(5000);}void WaitForEnable(void)P1DIR &= 0x00; //将P1口切换为输入状态CLR_RS;SET_RW;_NOP();SET_EN;_NOP();_NOP();while((P1IN & Busy)!=0); //检测忙标志CLR_EN;P1DIR |= 0xFF; //将P4口切换为输出状态}void write_com(unsigned char cmd) {WaitForEnable(); // 检测忙信号?CLR_RS;CLR_RW;_NOP();DataPort =cmd ; //将命令字写入数据端口_NOP();SET_EN; //产生使能脉冲信号_NOP();_NOP();CLR_EN;}void write_data( unsigned int data )WaitForEnable(); //等待液晶不忙SET_RS;CLR_RW;_NOP();DataPort = data; //将显示数据写入数据端口_NOP();SET_EN; //产生使能脉冲信号_NOP();_NOP();CLR_EN;}void zifuchuan(unsigned int *ch){while(*ch!=0)write_data(*ch++);Delay5ms();}void LcdReset(void){CtrlDir |= 0x07; //控制线端口设为输出状态DataDir = 0xFF; //数据端口设为输出状态write_com(0x38); //显示模式设置write_com(0x0c); //显示开,不开游标,不闪烁write_com(0x06); //写字符时整体不移动write_com(0x01); //显示清屏__delay_cycles(200);}/************************************************************* * 名称:void dis_temp(uint t)* 功能:分出十位、个位等* 入口参数:t* 出口参数:无* 说明: 送到1602显示*************************************************************/ void main(void){unsigned int a,b,c,d;// BCSCTL1|=DIVA_0;WDTCTL=WDTPW+WDTHOLD;// WDTCTL = WDT_ADLY_1000; // Stop watchdog timer// IE1 |=WDTIE;P1DIR = 0XFF;P1OUT = 0XFF;P2DIR = 0XFF;P2OUT = 0XFF;BCSCTL2 = SELM_0 + DIVM_0 + DIVS_0; //dco不分频用作mclk,不分频默认用作smclkif (CALBC1_1MHZ != 0xFF){DCOCTL = 0x00;BCSCTL1 = CALBC1_1MHZ; /* Set DCO to 1MHz */DCOCTL = CALDCO_1MHZ;}BCSCTL1 |= XT2OFF + DIVA_0;LcdReset();while(1){a=get_one_temperature();b=a/100;c=(a%100)/10;d=a%10;P2SEL&=~BIT6;if(a>300){P2DIR|=BIT5;P2OUT|=BIT5;P2DIR|=BIT6;P2OUT|=BIT6;}else{P2DIR|=BIT5;P2OUT&=~BIT5;P2DIR|=BIT6;P2OUT&=~BIT6;}write_com(0x80+0x05);write_data(b+0x50);write_data(c+0x50);write_data(0x4e);write_data(d+0x50);write_data(0xbf); //显示温度的小圈write_data(0x23);//__delay_cycles();}}/*pragma vector=WDT_VECTOR__interrupt void watchdog_timer(void){_BIS_SR_IRQ(LPM3_bits); }*/。

基于MSP430单片机和DS18B20的数字温度计

基于MSP430单片机和DS18B20的数字温度计

图 4 DS18B20 内部结构框图 Fig. 4 Internal structure diagram of DS18B20
-107-
《电子设计工程》2010 年第 11 期
3 系统软件设计
3.1 系统程序 系统的程序主要包括主程序、读出温度子程序、温度转
换命令子程序、计算温度子程序和显示数据刷新子程序。 程序 的 主要 功 能 是实 时 显 示 温 度 、读 出 并 处 理 DS18B20
2.3 温度 传 感 器[6-7] 单线 数 字 温 度 传 感 器 DS18B20 可 以 把 温 度 信 号 直 接 转
换成数字信号,每片 DS18B20 含有唯一的 64 位序列号 ,测温 范围是-55~+125 ℃,完全符合系统要求。
DS18B20 数字温度计提供 9 位 温度 读 数 ,指示 器 件 的温 度 信 息 经 过 单 线 接 口 送 入 DS18B20 或 从 DS18B20 送 出 ,和 MCU 之间只需一条线连接,读写和完成温度变换所需的电源 可以由数据线本身提供而无需外部电源。 由于每个 DS18B20 有 唯 一 的 系 列 号 (silicon serial number),因 此 ,多 个 DS18B20 可存在于同一条单线总线上 ,此特性可以应用于 HVAC 环境 控制建筑物设备或机械内的温度检测以及过程监视和控制 中的温度检测。
温 度 传 感 器 选 用 了 DALLAS 公 司 数 字 式 集 成 温 度 传 感 器 DS18B20, 采用 2 位共阴极 LED 数码 管以 及 2 个 CD4511 译 码 器 实 现温 度 显 示[3-4]。 系 统 的 整体 设 计 电路 如 图 2 所示 。 2.1 主控制器
1 数字式温度计的总体设计

基于MSP430和DS18B20的智能温度检测系统的设计

基于MSP430和DS18B20的智能温度检测系统的设计
科技信息
高校 理科 研 究
基于 MS 4 0和 D B 0晌智鹾温度趁测系统晌设计 P3 S1 2 8 张 彤
[ 摘 要] 介绍 了一种 以 1 位单 片机 MS 4 0 19 6 P 3 F 4 为控制核心 , 利用数字化温度传 感器 D 1B 0实现温度 测量 的智能温度检测 系 S8 2 统. 详细论述 了该系统 的硬件组成和软件设计 , 给出了关键部分的电路 图, 相应的 MS 4 0 1 9单片机温度测量程序. P3F4 实验结果表明 该 智能温度检 测系统具有低成本 、 可靠性高、 结构简单 、 ・ 巨能稳定、 经济 实用等特点 , 可根据不 同需要 可应 用于多种工农业温度检测 领域. 【 关键词 ] P 3F 4 D 1B 0 温度检测 系统 MS4O19 S8 2

l储 控 存 嚣 制
路 比较复杂 , 成本也 比较高 。 设计 本智 能温度检测系统采用的是一种改
进型智能温度传感 器 D 1B 0 S 8 2 ,数字温度传感器通过单总线 与单片机 连接 , 系统结 构简单 , 抗干扰能力 强 , 适合于恶劣 环境 下进行现场温度 测量 ,也可应 用于仓库测温 、高层空调控制和农业生产过程监控等领
根 总线 上 挂 接 多 个 D 1B 0的 目的 。 S8 2 21 S 8 2 .. D 1 B 0的 工 作 过 程 2
该系统采用美国 T 公 司生产的 l I 6位带闪存的单片机 M P 3 F 4 ̄ S 40 1 9 作为 主控芯片 。该芯片工作电压是 1 . 8伏至 36伏, 的优点有: . 它 处理能 力强 、 运行速度快 、 功耗低 ; 芯片 内有数量较多的寄存器 , 存储器可以进 行多种运算 ; P 3F 4 有 较多中断源 , MS 4 0 1 9 还可 以随意 的嵌套 ; 中断请 用 求唤醒处于省 电状态的系统 只需 6微秒 ; 具有很多外 围器件 ,6位定时 1 器 Tm r 4 ie A有 种工作模式 ,可以同时进行多个捕获 , 比较功能 ;具有 4 个可独立编程的输入 / 出接口; 8 输 具有微秒 A T R 0与微秒 A T R 1串行 通信接 口; 具有多达 6 K 0 B的闪存存储器 , 可有 l 万次擦写次数 。该款 O 芯片 的超低功耗和 良好的性 能价格 比使其非常适合工业监控领域 。 23语音报警模块 - 系统使用语音报警的方式对温度超限报警 。由 ID12 S 40芯片控制 语 音 报 警 , 芯 片 具 有分 段 录放 功 能 , 次 分 段 录 放 的时 间 为 2 此 每 0秒 。被 测温度 由 MS 4 0单 片机 预先判 断 ,当测 量值低于或高 于标准温度值 P3 时 , 统 会 放 出 预 先 录制 好 的相 应 温度 语 音 , 系 这样 就 实 现 了 温 度 报 警功 能。 24温 度 显示 模 块 . 液 晶显示 模块 H M10 A是 基于 ¥ A 0 9 片构 建的 2 l 列 T 62 6 06 芯 行 6 字符型 的 L D液 晶显示模 块 , C 其字 符显示 的分 辨率是 5×8即每个字 ( 符是 由一个 5 8 × 的点矩阵构成) 。基于 ¥ A 0 9 6 0 6 所编写 的控制程序亦 可 以很方 便 地应 用于 其 它大 部分 字符 型 液 晶显示 模块 。因此 选用 H M10 A模块显示 系统的测 温结果 。 T 62 2 . 5数据存储模块 系统采用 的存储芯片是 C T 4 6 。 A 2 WC 4 这种芯 片是一个 6 k位串行 4 C SE P O 它的内部含有 8 9 MO E R M, 12个 8位字节 , 具有 一个 3 2字节 的 写缓冲器 , 器件具有一个专门写保护功能 , 该 通过 IC总线接 口进行操 2

基于MSP430单片机和DS18B20的小型测温系统

基于MSP430单片机和DS18B20的小型测温系统

技术创新单片机开发与应用您的论文得到两院院士关注基于MSP430单片机和DS18B20的小型测温系统AMini-TemperatureDetectingSystemBasedOnTheMSP430MicrocontrollerAndDS18B20(1.河北建筑工程学院2.燕山大学)李虹1温秀梅1高振天2Li,HongWen,Xiumei1Gao,Zhentian摘要:介绍了超低功耗16位单片机MSP430F1121和数字温度传感器DS18B20的基本特性,结合4位段型液晶显示模块LCM046和升压型DC-DC变换器MAX1674,设计了一个小型测温系统。

并基于集成开发环境IARWorkbench给出了主要的C430函数。

利用MSP430单片机的超低功耗以及DS18B20的单线接口方式,实现了整个系统的低功耗,结构简单,性能稳定,经济实用。

关键词:测温系统;MSP430F1121;DS18B20;C430;MCU中图分类号:TP368.1文献标识码:BAbstract:Thecharacteristicoftheultra-lowpowermicrocontrollerMSP430F1121andthedigitaltemperaturesensorDS18B20isin-troduced.Amini-temperaturedetectingsystemisdesignedcombiningthe4bitssegmentedLCDmoduleLCM046andtheDC-DCconverterMAX1674.SomeprimaryC430functionsarepresentedintheIARWorkbenchIDE.Usingtheultra-lowpoweroftheMSP430microcontrollerandthe1-WAREinterfacemodeoftheDS18B20,theultra-lowpower、simplestructure、stableperformanceandpracticalityofthewholesystemisrealized.Keywords:temperaturedetectingsystem,MSP430F1121,DS18B20,C430,MCU文章编号:1008-0570(2006)07-2-0137-021引言温度的测量和控制在储粮仓库、智能楼宇空调控制及其它的工农业生产和科学研究中应用广泛。

基于DS18B20的智能温度检测系统

基于DS18B20的智能温度检测系统

基于DS18B20的智能温度检测系统电子系统综合设计题目基于DS18B20的智能温度检测系统学号姓名所属系机械工程学院专业电子信息工程班级10级电信本一班指导教师摘要DS18B20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。

本文结合实际使用经验,介绍了DS18B20数字温度传感器在单片机下的硬件连接及软件编程,并给出了软件流程图。

在此次设计中,我们采用LED显示温度,实现并焊接制作一个具有多种I/O接口的综合性功能电路,温度的测量值要精确到小数点的后1位,并采用单片机编程的方式使其使用方便、精度高。

另外还通过protues软件对设计的数字钟进行了有效的仿真,使得设计的电子产品更具有实用性,该系统可应用于仓库测温、楼宇空调控制和生产过程监控等领域。

关键字:温度测量;LED;数字温度传感器;单片机AbstractAs a kind of high-accuracy digital net temperature sensor,DS18 B20 can be used building a sensor net easily. It can also make the net simple and reliable with it's special 1-wire interfa ce .This paper introduces the application of DS18B20 with singl e chip processor.The system is constituted by two parts the temperature measure d part and displayed part. The temperature measured part has a RS232 interface. It used AT89C51 of ATMEL company and DS18B20 of DALLAS company .The displayed part uses PC .Th is system is applied in such domains as warehouse detecting te mperature;air-conditioner controlling system in building and su pervisory productive process etc.Key words:temperature measure;LED;digital thermometer;si ngle chip processor目录摘要 (2)Abstract (3)1绪论 (5)2整体方案设计 (5)2.1 STC89C51单片机基础 (5)2.2 DS18B20的基本性质 (6)3智能温度检测系统的硬件设计 (8)3.1 LED电路 (8)3.2 STC89C51单片机电路 (9)3.3 DS18B20电路 (12)4智能温度检测系统的软件设计 (15)4.1 系统软件设计流程图 (15)4.2 智能温度检测系统的源程序代码 (17)4.3 只能温度检测系统的原理图 (24)5系统硬件仿真 (24)5.1 硬件仿真的介绍 (24)5.2仿真结果现象描述 (25)6总结 (26)参考文献 (27)1 绪论在工、农业生产和日常生活中,对温度的测量及控制占据着极其重要地位。

基于MSP430的多点无线温度测控系统

基于MSP430的多点无线温度测控系统

本文介绍了一种无线温度测控系统的设计方案。

本系统由MSP430单片机控制温度传感器DS18B20(数字温度传感器)采集每一路的12位数据,与2路开关量,一起送入无线收发模块PTR8000,进行发送,并在发送方显示当前的温度。

同时51单片机控制另一块PTR8000接受数据,并把所接受到的数据通过串口通信传送到PC机显示,用户可以通过软件设定所需要的温度的上限和下限温度,实现报警功能。

关键词:430单片机51单片机PTR8000 无线收发串口通信目录第一章选题依据 1§1.1温度控制器的发展概况及现状 1§1.2 本设计的选题和研究内容 1第二章方案设计与论证 2§2.1总体方案设计 2§2.2系统模块方案 3§2.2.1 温度传感器方案 3§2.2.2 无线传输方案 4§2.2.3 报警提示系统方案 4§2.2.4发送端温度显示 5§2.2.5 接收端监控方式 5§2.3总体方案的选择 5§2.4 方案的论证 6§2.4.1方案的可行性 6§2.4.2方案的经济性 6第三章硬件系统设计 7§3.1 串口通信部分设计 7§3.2 报警电路部分设计 8第四章软件设计 9§4.1 单片机串口程序 9§4.2 上位机VB 11第五章系统调试 13§5.1 分步调试 13§5.1.1、测试环境及工具 13§5.1.2、测试方法 13§5.1.3、测试结果分析 13§5.2 统一调试 14结束语 15参考文献 16致谢 17附录: 18附录一:系统工作总图 18附录二:系统原理图 18第一章选题依据§1.1温度控制器的发展概况及现状在工农业生产和日常生活中,对温度的测量及控制占据着极其重要地位。

基于DS18B20和MSP430的温度控制器毕业设计

基于DS18B20和MSP430的温度控制器毕业设计
考虑到本题显示信息有汉字,我们决定选择LCM12864点阵显示器作为本系统的显示模块。
1.1.3
方案一:采用18B20温度传感器,信息经过单线接口送入DS1820或从DS1820送出,因此从中央处理器到DS1820仅需连接一条线(和地)。读写和完成温度变换所需的电源可以由数据线本身提供,而不需要外部电源。电路简单,成本低,精度高。
测温范围
安装螺纹
电缆长度
适用管道
TS-18B20
-55~125

1.5 m
-------
TS-18B20A
-55~125
M10X1
1.5m
DN15-25
TS-18B20B
-55~125
1/2G
接线盒
DN40-60
2.3.4
1.单线接口,仅需一根口线与CPU连接可以实现双向通信。
2.无需外围元件。
本设计的关键在于温度传感器DS18B20与单片机之间通过串口进行数据传输,单片机MSP430F169读取温度,电磁阀的驱动和单片机与电脑的通信。MSP430系列单片机具有超低功耗,且外围的整合性高,DS18B20只需一个端口即可实现数据通信,连接方便,设计以MSP430F169为基础,并以此为控制核心,同时利用温度传感技术实现对当前温度进行实时测量,并以按键控制温度。此项目主要包括温度传感部分、显示部分、电磁阀开关控制部分及按键控制部分。 经分析有着良好的研究意义和广泛用途。
4.工作电源: 3-5V/DC。
5.在使用中不需要任何外围元件。
6.测量结果以9-12位数字量方式串行传送。
2.3.3
温度传感器DS18B20共有三种型号,分别为TS-18B20,TS-18B20A,TS-18B20B,各种型号的具体性能及参数如表2-1所示。

基于DS18B20的温度检测系统-课程设计

基于DS18B20的温度检测系统-课程设计

《测控系统原理与设计》课程设计报告班级物理系电三学号 09417325 09417322学生姓名罗柱、李亚成指导教师朱高峰2012年4月一、绪论1 课题要求本设计要求系统测量的温度的点数为4个,测量精度为0.5℃,测温范围为-20℃~+80℃。

采用液晶显示温度值和路数,显示格式为:温度的符号位,整数部分,小数部分,最后一位显示℃。

显示数据每一秒刷新一次。

二、总体方案设计2.1 方案介绍本该方案使用了AT89C51单片机作为控制核心,以智能温度传感器DS18B20为温度测量元件,采用多个温度传感器对各点温度进行检测,通过4×4键盘模块对正常温度进行设置显示电路采用128×64 LCD模块,使用LM386作为报警电路中的功率放大器。

如图2.1为系统总体框图。

温度传感器图2.1基于数字温度传感器测量系统框图本课题采用数字温度传感器DS18B20作为测为测温元件,它具有如下特点: (1)只要求一个端口即可实现通信。

(2)在DS18B20中的每个器件上都有独一无二的序列号。

(3)实际应用中不需要外部任何元器件即可实现测温。

(4)测量温度范围在-55C到+125C之间。

(5)数字温度计的分辨率用户可以从9位到12位选择。

(6)内部有温度上、下限告警设置。

三、硬件电路设计3.1测温电路DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出北侧温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。

DS18B20的性能特点如下:①独特的单线接口仅需要一个端口引脚进行通信;②多个DS18B20可以并联在惟一的三线上,实现多点组网功能;③无须外部器件;④可通过数据线供电,电压范围为3.0~5.5V;⑤零待机功能;⑥温度以9或12位数字量读出;⑦用户可定义的非易失性温度报警设置;⑧报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;⑨负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20采用3脚PR-35封装或8脚SOIC封装,其内部结构框图如图3.1所示。

基于MSP430单片机和DS18B20的温室大棚温度监测系统_曾军

基于MSP430单片机和DS18B20的温室大棚温度监测系统_曾军
棚内温度,以满足不同植物生长所需的温度环境。系统通过单片机
MSP430F5528 控制 DS18B20 进行多点数据采集,实时温度数据采用数码管显示,并且通过蓝牙传送至电
脑端。通过多次现场测试验证,该系统能够精准地进行温度监测且性能稳定,整个系统具有结构简单、功
耗低、经济实用等优点。
端口和片内外设,如看门狗、模拟比较器、定时器、 电方式既可以采用外部供电,也可以采用寄生电源的方
UART、SPI、I2C、硬件乘法器、液晶驱动、12 位 ADC、 式从数据线上获取电能。它体积小,根据应用场合的不
DMA、I/O 端口、实时时钟和 USB 控制器等[1]。它最大的 同可以有不同的封装形式,封装后的 DS18B20 可用于
内,然后通过与 UART 相连的蓝牙传输数据至电脑端。 限。为了能够避免测量误差和防止个别 DS18B20 出现
2.2 温度采集传感器 DS18B20
DS18B20 是美国 DALLAS 公司推出的单总线数字 测温芯片。它使用方便、耐磨耐碰、抗干扰能力强,能够
损坏,本系统采用并联 4 个 DS18B20 的方法(如图 2 所 示)。输出测量结果前,先比较四个传感器所测得的值。 当误差较小时,取其平均值;当误差较大时,舍去那个误 差较大的值,取剩余三个的平均值。
18
基于 MSP430 单片机和 DS18B20 的温室大棚温度监测系统
电子质量 (2014 第 01 期)
图 5 程序流程图
4 测试结果与分析 为了保证本系统的稳定性和对温度变化的敏感
性,选择将该系统安装在常温环境中。一共测量了六组 数据(如表 1 所示),从早上八点开始每隔两个小时手动 测量一次温度,同时读取一次传感器的温度值,六组数 据如表 1 所示。由测得的数据可知,该系统能够正确测 量一天内各个时间段的值,同时测得的数据准确且误 差极小。

基于MSP430和DS18B20的温室大棚温度监测系统模块电路

基于MSP430和DS18B20的温室大棚温度监测系统模块电路

基于MSP430和DS18B20的温室大棚温度监测系统模块
电路
1 温度采集传感器DS18B20
DS18B20 是一种单总线数字测温芯片,使用方便、耐磨耐碰、抗干扰能力强,能够直接读取被测物体的温度,其测量范围为-55~+125℃,且测量精度高,电压适用范围宽(3.0~5.5V),供电方式既可以采用外部供电,也可以采用寄生电源的方式从数据线上获取电能。

它体积小,根据应用场合的不同可以有不同的封装形式,封装后的DS18B20 可用于电缆沟测温、高炉水循环测温、锅炉测温、机房测温、农业大棚测温、弹药库测温等各种非极限温度场合。

DS18B20 独特的单线接口方式使得它在与微处理器连接时仅需要一条线即可实现与微处理器的双向通讯。

与此同时,DS18B20 还支持多点组网功能,可以将多个DS18B20 并联在唯一的三根线上,最多时可并联8 个,以此实现
多点测温。

利用DS18B20 做设计时,外围电路简单,同时用户可根据实际情
况自行设定非易失性温度报警上下限值,当测到温度超出所给定的范围时,就会输出报警信号,且自动识别是高温超限还是低温超限。

为了能够避免测量误差和防止个别DS18B20 出现损坏,本系统采用并联4 个DS18B20 的方法。

输出测量结果前,先比较四个传感器所测得的值。

当误差较小时,取其平均值;当误差较大时,舍去那个误差较大的值,取剩余三个的平均值。

2 蓝牙发送模块HC-06
蓝牙是一种支持设备之间短距离传输数据的无线技术。

利用该技术能够在移动电话、PDA、笔记本电脑、无线耳机等众多支持蓝牙的设备之间进行无。

ds18b20基于msp430的水温控制系统完整程序

ds18b20基于msp430的水温控制系统完整程序

main.c#include <MSP430x14x.h>#include "keypad.h"#include "lcd1602.h"#include "ds18b20.h"#include "control.h"typedef unsigned char uchar;typedef unsigned int uint;void InitSys(); //函数声明int main(void){WDTCTL=WDTPW+WDTHOLD; //关闭看门狗/*下面六行程序关闭所有的IO口*/P1DIR = 0XFF;P1OUT = 0XFF;P2DIR = 0XFF;P2OUT = 0XFF;P3DIR = 0XFF;P3OUT = 0XFF;P4DIR = 0XFF;P4OUT = 0XFF;P5DIR = 0XFF;P5OUT = 0XFF;P6DIR = 0XFF;P6OUT = 0XFF;P6DIR |= BIT2;P6OUT |= BIT2; //关闭电平转换InitSys(); //系统初始化Init_Keypad(); //键盘初始化LcdReset(); //lcd初始化start:disp_18b20();goto start;}/*************************************************** 系统初始化*******************************************/void InitSys(){unsigned int iq0;BCSCTL1 &= ~XT2OFF; //打开XT2振荡器do{IFG1 &= ~OFIFG; //清除振荡器失效标志for(iq0=0xFF;iq0>0;iq0--);//延时,等待XT2起振}while((IFG1 & OFIFG)!=0); //判断XT2是否起振BCSCTL2=SELM_2+SELS; //选择MCLK,SMCLK为XT2TACTL |= TASSEL_2 + ID_3; //计数时钟选择SMLK=8MHz,1/8分频后为1MHzP5DIR |= BIT5; //加热器控制端口P5OUT &= ~BIT5;P5DIR |= BIT7; //风扇控制端口P5OUT &= ~BIT7;_EINT(); //打开全局中断控制,若不需要打开,可以屏蔽本句}/*********************************************************************端口1(键盘)中断函数*************************************************************/#pragma vector=PORT1_VECTOR__interrupt void Port1(){Key_Event(); //判断按键并获取键值if(key_val>16) //输入为数字键temp_disp();else if(key_val==12) //输入为确定键{sure=1;temp_set_2=ten2two();}else if(key_val==13) //输入为清除键temp_clr();Init_Keypad(); //键盘初始化}keypad.hvoid Init_Keypad(void);void Check_Key(void);void delay(unsigned int tmp);void Key_Event(void);//引用外部变量的声明extern unsigned char key_Pressed;extern unsigned char key_val;extern unsigned char key_Flag;keypad.c#include <msp430x14x.h>typedef unsigned char uchar;typedef unsigned int uint;/***************全局变量***************/uchar key_Pressed; //按键是否被按下:1--是,0--否uchar key_val; //存放键值uchar key_Flag; //按键是否已放开:1--是,0--否//设置键盘逻辑键值与程序计算键值的映射uchar key_Map[] = {'1','2','3','4','5','6','7','8','9','0',11,12,13,14,15,16};//k12,清除键。

基于TMS320C54x DSP芯片和DS18B20实现智能温度检测系统设计

基于TMS320C54x DSP芯片和DS18B20实现智能温度检测系统设计

基于TMS320C54x DSP芯片和DS18B20实现智能温度检测系统设计来源:电子设计工程,作者:曲爱玲,刘红梅,王欣惠,刘斌随着物联网时代的到来,农业正朝着智慧农业发展。

“智慧农业”就是充分应用现代信息技术成果,集成应用计算机与网络技术、物联网技术、音视频技术、无线通信技术及专家智慧与知识,实现农业的智能化管理。

温度作为农业生产过程中的一个重要指标,温度检测系统是智能农业的一个子系统。

以DSP技术为核心,利用接口简单、性能稳定的DS18B20温度传感器芯片,设计了具有温度检测、温度阈值设定、现场蜂鸣器报警、远程智能短信报警、温度值实时显示、温度节点可扩展等功能的温度检测系统。

该系统在农业领域可广泛进行应用推广。

1 智能温度检测系统智能温度检测系统在智慧农业中发挥着重要的作用,成为智慧农业中信息采集必不可少的一部分。

精确的获取农业生产或农业产品管理中的温度参数,有助于提升我国农业管理水平和农业生产效能,促进农业的现代化精准管理、加速智慧农业时代的到来。

1.1 系统实现整体方案本智能温度检测系统主要由DSP主控单元、CPLD译码单元、键盘扫描单元、温度检测单元、蜂鸣器/LED灯报警单元、GSM单元、液晶屏显示单元组成,当系统检测的温度高于或低于设定的阈值,系统可通过现场的蜂鸣器报警,或通过智能手机模块将信息远程发送。

温度阈值和系统发送的手机终端号码均可通过键盘扫描单元设定或修改,液晶屏显示操作进程。

该系统框图如图1所示。

1.2 DSP主控单元本智能温度检测系统采用TMS320C54x DSP芯片作为主处理器。

TMS320C54x是TI公司生产的一款16位定点型DSP处理器,内部采用程序总线和数据总线分开的增强型哈佛结构,存储空间包括数据存储空间、程序存储空间、I/O空间,具有专门的硬件乘法器,采用流水线操作,提供特殊的数字信号处理指令。

TMS320C54x采用核电压和外设电压分开供电的双电压供电模式,具有丰富的外设接口,内置看门狗定时器,提供多种程序固化方式。

基于MSP430的智能温度检测系统设计

基于MSP430的智能温度检测系统设计

基于MSP430的智能温度检测系统设计文章出处:发布时间:2011/08/15 | 413 次阅读| 0次推荐| 0条留言业界领先的TEMPO评估服务高分段能力,高性能贴片保险丝专为OEM设计师和工程师而设计的产品使用安捷伦电源,赢取iPad2 Samtec连接器完整的信号来源每天新产品时刻新体验完整的15A开关模式电源摘要:论述了一种以16 位单片机MSP430F149 为控制核心,利用数字化温度传感器DS18B20实现温度测量的智能温度检测系统。

详细论述了该系统的硬件组成和软件设计,给出了关键部分的电路图及相应的MSP430F149单片机温度测量程序。

实验结果表明,该智能温度检测系统具有低成本、可靠性高、结构简单、性能稳定、经济实用等特点,可根据不同需要应用于多种工农业温度检测领域。

1 引言随着设备的电气化和自动化程度不断提高,对设备和环境进行实时监控显得尤为重要。

传统的测温器件热敏电阻测出的一般是电压,需要再转化为相应的温度,这就要有其它外部硬件的支持。

因此硬件电路比较复杂,设计成本也比较高。

智能温度检测系统采用的是一种改进型智能温度传感器DS18B20, 数字温度传感器通过单总线与单片机连接,系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,也可应用于仓库测温、高层空调控制和农业生产过程监控等领域。

2 温度检测系统硬件构成该温度检测系统由主控制器MSP430F149、存储模块CAT24WC64、液晶显示模块HTM1602A、语音报警模块ISD1420、矩阵键盘和单总线接若干温度传感器DS18B20组成。

系统硬件框图如图1所示。

由图可见,多点温度测量电路只占用了MSP430F149 的一个普通IO口,系统资源利用率较高。

图1 系统硬件总体电路图2. 1 DS18B202. 1. 1 DS l8B20的内部结构DS18B20的内部结构如图2 所示,主要由四部分组成:光刻ROM、温度传感器、非易失性的温度报警触发器TH 和TL 配置寄存器。

基于MSP430G2553和ds18b20的测温系统

基于MSP430G2553和ds18b20的测温系统

嵌入式控制系统与应用课程论文题目: 基于MSP430G2553和ds18b20的测温系统院系名称:专业班级:学生姓名:学号:摘要为了在现实生活和工业生产及过程控制中准确测量温度,设计了一种基于低功耗MSP430单片机的数字温度计,整个系统通过单片机MSP430控制DS18B20读取温度,采用LCD1602显示,温度传感器DS18B20与单片机之间通过串口进行数据传输,且外围的整合性高,DS18B20只需一个端口即可实现数据通信,连接方便,通过多次实验证明,该系统的测试结果与实际环境温度一致,除了具有接口电路简单,测量精度高,误差小,可靠性高等特点外,其成本低,功耗低的特点使其拥有更广阔的应用前景。

关键字:DS18B20 MSP430G2553单片机液晶显示目录1 引言 (1)2 测温系统硬件构成 (1)2.1 硬件设计 (1)3 软件设计 (6)3.1 总体设计流程图 (6)3.2 初始化模块 (6)4 实验展示 (7)4.1 实物整体展示 (7)4.2 报警显示和蜂鸣器报警 (8)5设计心得 (10)6本设计的不足和反思 (11)参考文献 (12)附录 (13)附一:元器件及仪器明细表 (13)附二:实验设计程序 (13)1 引言温度的测量和控制在储粮仓库、智能楼宇空调控制及其它的工农业生产和科学研究中应用广泛。

温度检测的传统方法是使用诸如热电偶、热电阻、半导体PN结(如AD590)之类的模拟传感器,经信号取样电路、放大电路和模数转换电路处理,获取表示温度值的数字信号,再交由微处理器或DSP处理。

被测温度信号从敏感元件接收的非电模拟量开始,到转换为微处理器可处理的数字信号之间,设计者须考虑的线路环节较多,相应测温装置中元器件数量难以下降,随之影响产品的可靠性及体积微小化。

由此会造成整个检测系统有较大的偏差.稳定性和抗干扰性能都较差。

本文设计一种基于数字温度传感器DSl8820的小型测温系统,主控芯片采用TI公司的MSP430单片机,数字温度传感器通过单总线与单片机连接,系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,可应用于仓库测温、楼宇空调控制和生产过程监控等领域。

基于DS18B20的智能测温系统的设计

基于DS18B20的智能测温系统的设计

基于DS18B20的智能测温系统的设计一、本文概述本文旨在探讨基于DS18B20的智能测温系统的设计与实现。

DS18B20是一款常用的数字温度传感器,具有测量准确、稳定性好、抗干扰能力强等特点,因此在许多领域,特别是温度监测和控制系统中得到了广泛应用。

本文将首先介绍DS18B20传感器的基本工作原理和特性,然后详细阐述如何利用该传感器构建一个智能测温系统。

在系统设计方面,本文将关注硬件电路的选择与搭建、软件编程实现、以及系统的整体架构。

硬件设计将包括DS18B20与微控制器的连接电路、电源电路、显示模块等关键部分。

软件编程将实现温度数据的读取、处理、显示以及可能的远程传输等功能。

同时,还将讨论如何通过软件算法提高测温精度和响应速度,以满足实际应用需求。

本文还将探讨系统的可靠性、稳定性和扩展性等问题。

通过合理的硬件和软件设计,确保系统能够在各种环境下稳定运行,并具备一定的故障自诊断和处理能力。

通过预留接口和扩展功能,使系统易于升级和维护,以满足不断变化的用户需求。

本文将全面介绍基于DS18B20的智能测温系统的设计过程,包括硬件搭建、软件编程、系统架构等方面,旨在为相关领域的工程师和研究者提供参考和借鉴。

二、1820传感器原理及特性DS18B20是一款由美国Dallas半导体公司开发的单总线数字温度传感器,具有测量温度范围宽、精度高、抗干扰能力强、接口简单、使用方便、封装形式小、可组网使用等优点,因此在各种测温场合中得到了广泛的应用。

DS18B20传感器的工作原理基于热敏电阻的温度-电阻特性。

其内部包含一个热敏电阻和一个8位的模数转换器(ADC),热敏电阻的阻值会随着温度的变化而变化,这个变化被ADC转换成数字信号,然后通过单总线接口输出。

DS18B20具有独特的单总线接口方式,只需一个端口引脚就能与微处理器通信,简化了硬件电路的设计。

DS18B20还具有温度报警功能,当温度超过预设的阈值时,可以通过单总线向微处理器发送报警信号。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、引言随着设备的电气化和自动化程度不断提高,对设备和环境进行实时监控显得尤为重要。

传统的测温器件热敏电阻测出的一般是电压,需要再转化为相应的温度,这就要有其它的外部硬件的支持。

因此硬件电路比较复杂,设计成本也比较高。

本智能温度检测系统采用的是一种改进型智能温度传感器DS18B20,数字温度传感器通过单总线与单片机连接,系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,也可应用于仓库测温、高层空调控制和农业生产过程监控等领域。

2、温度检测系统硬件构成该温度检测系统由主控制器MSP430F149、存储模块AT24C02、液晶显示模块HTM1602A、语音报警模块ISD1420、矩阵键盘和单总线接若干温度传感器DS18B20组成。

系统硬件框图如图1所示。

由图可见,多点温度测量电路只占用了M SP430F149的一个普通IO口,系统资源利用率较高。

图1系统硬件总体电路图2.1DS18B202.1.1DSl8B20的内部结构DS18B20的内部结构如图2所示[1],主要由四部分组成:光刻ROM、温度传感器、非易失性的温度报警触发器TH和TL配置寄存器。

DS18B20可以有多种封装形式,在TO-92封装中,如图2(a)所示,GND 为接地引脚,DQ为数据输入/输出引脚,VDD为可选的外部电源供电引脚,在寄生电源工作方式下接地。

光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。

64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码。

光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。

2.1.2DS18B20的工作过程访问DS18B20的工作顺序通常为:初始化,发送ROM操作命令,发送RAM操作命令。

通过初始化复位工作使主设备知道传感器DS18B20存在并准备工作。

通过发送ROM命令可以知道某个特定的DS18B20是否存在并且是否超过温度警界值。

共有5种ROM操作命令,分别是读ROM(33H)、匹配ROM(55H)、搜索ROM(FOH)、跳过ROM (CCH)、告警搜索命令(ECH)。

通过发送RAM操作命令,可以设定电源供电方式,启动温度转化,读写DS18B20的暂存区。

共有6种功能命令,分别是转换温度(44H)、读暂存区(BEH)、写暂存区(4EH)、复制暂存区(48H)、重调EEPROM(B8H)、读电源供电方式(B4H)。

每条命令有不同代码,在总线上传送时,由器件根据接收的命令代码完成相应的操作。

因此DS18B20的单线通信功能是分时完成的,它有严格的时隙要求[1]。

图2(a)DS18B20TO-92封装图(b)DS18B20内部结构图2.2MSP430F149该系统采用美国TI公司生产的16位带闪存的单片机MSP430F149[2]作为主控芯片。

该芯片工作电压是1.8伏至3.6伏,它的优点有:处理能力强、运行速度快、功耗低;芯片内有数量较多的寄存器,存储器可以进行多种运算;MSP430F149有较多中断源,还可以随意的嵌套;用中断请求唤醒处于省电状态的系统只需6微秒;具有很多外围器件,16位定时器TimerA有4种工作模式,可以同时进行多个捕获/比较功能;具有48个可独立编程的输入/输出接口;具有微秒ART0与微秒ART1串行通信接口;具有多达60KB的闪存存储器,可有10万次擦写次数。

该款芯片的超低功耗和良好的性能价格比使其非常适合工业监控领域。

2.3语音报警模块系统使用语音报警的方式对温度超限报警。

由ISD1420芯片控制语音报警,此芯片具有分段录放功能,每次分段录放的时间为20秒。

被测温度由MSP430单片机预先判断,当测量值低于或高于标准温度值时,系统会放出预先录制好的相应温度语音,这样就实现了温度报警功能。

2.4温度显示模块液晶显示模块HTM1602A是基于S6A0069芯片构建的2行l6列字符型的LCD液晶显示模块,其字符显示的分辨率是5×8(即每个字符是由一个5×8的点矩阵构成)。

基于S6A0069所编写的控制程序亦可以很方便地应用于其它大部分字符型液晶显示模块。

因此选用HTM1602A模块显示系统的测温结果。

2.5数据存储模块系统采用的存储芯片是CAT24WC64。

这种芯片是一个64k位串行CMOS EEPROM,它的内部含有8192个8位字节,具有一个32字节的写缓冲器,该器件具有一个专门写保护功能,通过I2C总线接口进行操作。

测温系统采用CAT24WC64用来集中记录单总线上所有温度传感器的注册信息,即按地址顺序存放DS18B20的64位光刻ROM序列码。

每个序列码占用8字节空间,系统管理程序会以8字节为基数计算传感器注册码的地址序号,并反馈给用户作为传感器的标识号。

2.6串口通信接口电路设计将MSP430F149采集的测试温度数据传输至上位机,利用MSP430的通讯接口连接到RS232串行口上,来进行接收或发送数据和指令,因为RS232和单片机的TTL电平不兼容,因此系统使用了MAX232进行电平转换,其接口电路图如图3。

MSP430有两组通讯接口,UTXD0,URXD0和UTXD1,URXD1,这里用的是第一组。

MSP430F149单片机3.3V的信号由UTXD0出来输入到M AX232的T1IN脚,转换成±15V的信号由T1OUT送到通讯标准接头的2脚(RXD),±15V的信号由通讯标准接头的3脚(TXD)出来输入到MAX232的R1IN脚,转换成±15V的信号由R10UT送到单片机的URXDO[3]。

基于MSP430和DS18B20的智能温度检测系统的设计郑州牧业工程高等专科学校信息工程系焦阳张彤[摘要]介绍了一种以16位单片机MSP430F149为控制核心,利用数字化温度传感器DS18B20实现温度测量的智能温度检测系统.详细论述了该系统的硬件组成和软件设计,给出了关键部分的电路图,相应的MSP430F149单片机温度测量程序.实验结果表明,该智能温度检测系统具有低成本、可靠性高、结构简单、性能稳定、经济实用等特点,可根据不同需要可应用于多种工农业温度检测领域.[关键词]MSP430F149DS18B20温度检测系统94——图3MSP430F149与PC 机的串行接口电路3、温度检测系统软件设计3.1下位机编程系统程序设计包括主程序,复位子程序,报警和分辨率设置子程序,温度转换子程序,读温度子程序,计算温度和显示温度子程序等等。

MSP430F149对DS18B20的访问流程是:先对DS18B20初始化,再进行ROM 操作命令,最后才能对存储器RAM 操作[4]。

程序流程图如图4所示。

下面就简要地介绍MSP430系列单片机C 语言的几个主要子程序。

图4程序流程图3.1.1复位子程序该程序[5]的主要功能是负责DS18B20的复位,以便方便地进行以后的操作。

复位要求主CPU 处理器将数据线下拉500μs ,然后将其释放,DS18B20收到此信号后再等待16~60μs 后,发出60~240μs 的存在低脉冲,主CPU 处理器收到此信号后表示复位成功。

bit ResetDS18B20(){unsigned char i;bit flag;DS18B20=0:for(i=0;i<200;i++);//保持低电平500μs DS18B20=1:for(i=O;i<30;i++);//等待60μs flag=DS18B20;//取DS18B20状态for(i=0;i<100;i++);//等300μs return flag;//flag=0复位成功,flag=1,复位不成功}3.1.2写一个字节子程序CPU 处理器将数据线从高电平拉至低电平后,就产生写起始信号,15μs 之内,将所写的位送到数据线上,DS18B20在之后的15~60μs 接收位信息。

在写下一个位之前至少要有1s 以上的高电平恢复时间;将以上过程[6]重复进行8次,即完成了一个字节的写操作。

void WRDS18B20(unsigned char data0){unsigned char I,j;for(j=0;j<8;j++){DS18B20=0;//高电平拉低到低电平,产生写起始信号for(i=0;i<1;i++);;DS18B20=data0&0x01;//15微秒内写一位for(i=0;i<20;i++);//等待60μs ,DS18B20完成采样DS18B20=1;//高电平恢复data0=data0>>1;//右移,为下一位准备}}3.1.3读一个字节子程序CPU 处理器将数据线从高电平拉到低电平1μs 以上,再拉高到高电平,产生读起始信号[7]。

15μs 之内,CPU 处理器读一位,读周期为60μs ,读下一个位之前至少要有1μs 以上的高电平恢复时间;将以上过程重复进行8次,即完成了一个字节的读操作。

unsigned char RDDS18B20(){unsigned char I,j,data0=0;bit temp;for(j=0;j<8;j++){DS18B20=0;//高电平拉到低电平1μs 以上for(i=0;i<l;i++);DS18B20=1;//再拉到高电平,产生读起始信号for(i=0;i<1;i++);temp=DS18B20;//15μs 之内读一位for(i=0;i<20;i++);//等60微秒data0=dataO>>1;//为下一位准备if(temp==1)data0=dataO|0x80;else data0=data0&0x7f;DS18B20=1;//高电平恢复for(i=O;i<1;i++);}return data0;}3.2上位机软件编程系统采用MSCOMM 控件来实现VC++和单片机之间的数据交换,使用M SCOMM 控件可以通过事件来处理串行口的交互,控件的MSCOMM 事件负责捕获或处理通讯事件和通讯错误。

它具有程序模块化、实现简单、工作稳定可靠等优点,而且可以满足多数情况下的工控要求。

4、结束语测温系统采用了集成度高、功耗低的MSP430F149为核心微处理器,通过传感器DS18B20实现了对温度的测量,并进行存储和显示。

实验表明:当外界温度试验的范围设定在0~50℃,可确保测量误差不超过±0.5℃,在试验板上显示温度精确到0.0625℃,AD 转换的时间是750ms ,传输的距离是40m ,另外,在该系统的基础上也可以扩展其他信号,如湿度,压力等。

相关文档
最新文档