1、手把手教你学单片机,-51基础(C语言)金沙滩工作室 http:/www.kingst.org 作者:小宋老师,第十七课:DS18B20温度 传感器的学习,18B20特点,1、“一线总线”数字化温度传感器2、3V到5.5V的宽电压工作范围3、分辨率912位可设定,即精度可以设定0.5, 025, 0.125, 0.0625,软件设计,1、启动温度转换2、读取温度数值,软件设计,1、复位2、写操作3、读操作,复位,单片机t0时刻发送一复位脉冲(最短为480us的低电平信号),接着在tl时刻释放总线并进入接收状态,DS18B20 在检测到总线的上升沿之后,等待15-60us,接着DS18B20在t
2、2时刻发出存在脉冲(低电平持续60-240us),如图中虚线所示。 换句话说如果t2t3之间信号电平如果为低,则说明DS18B20复位成功;否则失败。,写操作,当单片机将总线t0时刻从高拉至低电平时,就产生写时间隙。见上图,从t0时刻开始 15us之内应将所需写的位送到总线上。DS18B20在t0后15-60us间对总线采样,若低电平写入的位是0;若高电平,写入的位是1。连续写2位间的间隙应大于1us。,读操作,当单片机将总线t0时刻从高拉至低电平时,总线只须保持低电平4us之后,在t1时刻将总线拉高,产生读时间隙,读时间在t1时刻后t2时刻前有效,t2距t0为15us,也就是说,t2时刻前主机必须完成读位 并在t0后的60us120us内释放总线。,启动温度转换,三个步骤: 1、复位DS18B202、发出Skip ROM命令(CCH)3、发出Convert T命令(44H)其中Skip ROM命令仅适用于总线上只有一个DS18B20时的情况。,读取温度,五个步骤: 1、复位DS18B20 2、发出Skip ROM命令(CCH) 3、发出Read命令(BEH) 4、读两字节的温度 5、温度格式转换,温度格式,作业,熟悉DS18B20的总线结构和原理 将DS18B20温度放到LCD上显示,如有疑问,请登录http:/www.kingst.org交流,谢谢!,