基于MSP430单片机的智能温度检测系统设计
MSP430系列是一种具有集成度高、功能丰富、功耗低等技术特点的16位单片机, 它采用c语言完成程序设计, 大大提高了开发调试的工作效率; 同时用c语言所产生的文档资料也容易理解, 便于移植。
3. 1 下位机编程
系统程序设计包括主程序, 复位子程序, 报警和分辨率设置子程序, 温度转换子程序, 读温度子程序, 计算温度和显示温度子程序等等。MSP430F149对DS18B20的访问流程是: 先对DS18B20初始化,再进行ROM 操作命令, 最后才能对存储器RAM 操作。程序流程图如图4 所示。下面就简要介绍MSP430系列单片机C 语言的几个主要子程序。
图4 程序流程图
3. 1. 1 复位子程序
该程序的主要功能是负责DS18B20的复位, 以方便进行以后的操作。复位要求主CPU 将数据线下拉500微秒, 然后释放, DS18B20收到信号后等待16~ 60微秒左右, 后发出60 ~ 240微秒的存在低脉冲, 主CPU 收到此信号表示复位成功。
bit ResetDS18B20( )
{ unsigned char ;i
bit flag;
DS18B20= 0:
for( i= 0; i 200; i+ + ) ; / /保持低电平500微秒
DS18B20= 1:
for( i= O; i 30; i+ + ) ; / /等60微秒
flag= DS18B20; / /取DS18B20状态
for( i= 0; i 100; i+ + ) ; / /等300微秒
return flag; / / flag= 0复位成功, flag= 1, 复位不成功
}
评论