所有课程见此链接:
4.11温度传感器DS18B20实验
学习使用温度传感器DS18B20,并在串口显示温度数据。
开发板硬件设计有温湿度传感器DHT11,原理图如图4-12-1所示,可以用此接口代替DS18B20,DS18B20实物图如图4-12-2所示,电源对应连接至DHT11接口,DQ连接至P06接口。
图4-12-1 DHT11接口图 图4-12-2 DS18B20引脚
主函数部分程序如下:
#include"iocc2530.h"
#include"uart.h"
#include"ds18b20.h"
#include"delay.h"
void Initial() //系统初始化
{
CLKCONCMD = 0x80; //选择32M振荡器
while(CLKCONSTA&0x40); //等待晶振稳定
UartInitial(); //串口初始化
P0SEL &= 0xbf; //DS18B20的io口初始化
}
void main()
{
char data[5]="Temp="; //串口提示符
Initial();
while(1)
{
Temp_test(); //温度检测
/*******温度信息打印 ***********/
UartTX_Send_String(data,5);
UartSend(temp/10+48);
UartSend(temp%10+48);
UartSend('\n');
Delay_ms(1000); //延时函数使用定时器方式
}
}
图4-13 实验效果图