一、硬件设计
DS18B20是常用的数字温度传感器,具有体积小,硬件开销低,抗干扰能力强,精度高的特点
DS18B20的DQ引脚接到stm32的PC5上,这里需要说明的是,DS18B20芯片通过达拉斯公司的单总线协议依靠一个单线端口通讯,当全部器件经由一个三态端口或者漏极开路端口与总线连接时,控制线需要连接一个弱上拉电阻。
二、软件设计
ds18b20.c,其中的内容是DS18B20的控制和读取数据的函数。
#include "ds18b20.h"
void delay_us(u32 nus)
{
volatile unsigned int num;
volatile unsigned int t;
for (num = 0; num < nus; num++)
{
t = 11;
while (t != 0)