·上一文章:一种实用的分布式数据采集和控制系统
·下一文章:LON总线的USB2.0接口卡的研制
由图1可看到,本电路主要由DSl8820温度传感器芯片、SMCl602A液晶显示模块芯片和89C2051单片机芯片组成。其中,DSI8B20温度传感器芯片采用“一线制”与单片机相连,它独立地完成温度测量以及将温度测量结果送到单片机的工作。DSl8820的连接引脚图如图2所示。
SMCI602A液晶显示模块芯片,是长沙太阳人电子有限公司生产的一种液晶显示芯片。该芯片可显示16×2个字符,比以前的七段数码管LED显示器在显示字符的数量上要多得多。另外,由于SMCl602芯片编程比较简单,界面直观,因此更加易于使用者操作和观测。SMCl602A芯片的接口信号说明如表1所列。
2 软件设计
程序流程如图3所示。
DSl8B20输出的数据格式在图4中有具体的说明,其中MS表示数据 的高8位,LS表示数据的低8位。由于温度在0℃以上为正温度,而在0℃以下为负温度,因此在计算 温度时必须在转换之前先对正负数进 行判别,然后再进行转换。
当S=0时,表示正数;S=1时,表示负数。对于负数,在处理时是采用了“先取反再加一”. 即将补码转换为原码的方法。同时,为了提高测量的精度, DSl8820采用了12位数据转换的方式,其中,符号位占l位,整数占7位,小数占4位。因此,在计算与处理时,还必须将整数和小数分开进行处理。通过对百分位数据的“四舍五入”处理之后,温度的显示范围就可达到-99℃~99.9C。
注:部分源程序见本刊网站www.dpj.com.cn。