位置:51电子网 » 技术资料 » 传感与控制

用AD7416+PIC16F84+PC机构建的测温系统

发布时间:2007/4/23 0:00:00 访问次数:549

用AD7416+PIC16F84+PC机构建的测温系统 [日期:2005-4-11] 来源:单片机及嵌入式系统应用 作者:河北通信职业技术学院 李学海 董 丹 李建良 [字体:温度传感器AD7416和RISC型8位单片机PIC16F84,以及与PC机通信的硬件接线方法和软件算法设计,并且提供完整的PC端C程序和单片机端汇编语言程序。

关键词:AD7416 PIC16F84 I2C总线 单片机

引言

在测量仪器仪表中,温度的检测几乎成为必不可少的部分。传统的模拟温度传感器,如AD590,因外围电路复杂、需调零等缺点,给应用开发带来一些麻烦。利用数字温度传感器配合单片机来设计各种控制系统,越来越多受到业内人士的推崇。美国模拟器件公司生产的AD7416是一款功能较多的温度器件,它在一个芯片上集成了I2C总线接口、温度传感器、10位数摸转换器和窗口门限温度控制器等功能。它与其它数字温度传感器相比具有体积小、编程简单等优点。

在本文介绍的温度检测系统中,其前端温度检测应用的是AD7416,控制器应用的是PIC16F84,将探测到的温度上传到上位机(PC机)。由于PIC16F84单片机是一款廉价的低端型号,其内部没有配置I2C接口和UART接口等外围模块,因此需要利用虚拟技术来模拟I2C和UART的功能,分别与下位器件AD7416和上位机进行通信。文后提供了完整的算法设计和程序清单。在此程序基础上稍加改动也可以适用于其它PIC单片机,甚至是其它厂家的单片机,来实现同样的功能。故本文具有比较广泛的启发性和实用价值。

1 硬件简介

硬件接线图如图1所示,前端电路主要由1片10位串行数字温度传感器AD7416和1片RISC型PIC16F84微控制器组成,上位机由PC兼容机担当。不过,上位机不是必须的,图1中给出了可选的相连PC的串行接口。通过该串口,可把检测到的现场温度值上传到PC机,以便进行实时处理、存储和监控。

1.1 与PC机的接口简介

硬件引脚连接关系如表1所列,其中列出了各引脚的功能。利用PIC16F84端口A的2条引脚与AD7416连接;利用端口B的3条引脚在前端电路与PC机之间传送信息,也可以直接传输给led数码管驱动电路以供显示。

表1 三者相互连接的对应关系

AD7416PIC16F84PC接口SDA
SCLPORT A,0
PORT A,1  PORT B,0
PORT B,1
PORT B,2SDATA
SCLK
SYNC

PIC16F84单片机与PC机的通信接口选用并行打印口,通信方式选用串行同步方式。其中,并行打印口既可以是25芯的D型插口,也可以是36芯的Centronics连接器,如图2所示。串行同步方式通信的信号时序如图3所示。

1.2 AD7416简介

AD7416是一个带有温度超限功能的10位串行数字温度传感器,采用8引脚的SOIC或μSOIC封装。其内部结构如图4所示,引脚布局如图5所示,引脚功能如表2所列。

表2 引脚功能说明

引脚名称引脚序号引脚类型

功 能 说 明

SDA1I/OI2C总线串行数据输入/输出传送线(开漏型)SCL2II/C总线串行时钟线(开漏型)OTI3O温度超限指示脚,低电平有效(开漏型)GND4-电源接地脚A2~A05~7I串行总线地址低3位连线编程脚VDD8-电源正极,工作电压范围2.7V~5.5V

AD7416具有如下特点:10位温度至数字转换器;超温指示端为低电平有效的漏极开路型输出脚,可以实现“线与”接线方式;I2C兼容的串行接口;可选的串行总线地址,允许在单一总线上连接多达8个AD7416;低功耗节电方式(典型2mA);400ms更新速率;55℃~+125℃温度测量范围。

AD7416有5个内部寄存器。其中4个是数字寄存器,一个是地址指针寄存器。地址指针寄存器是一个8位寄存器,用于存放指定4个数据寄存器的地址码。对AD7416每一次串行写操作的第一个数据字节是数据寄存器的地址码,这就是随后的数据字节要写入的地址。其实,地址指针寄存器只需最低两位(记作P1和P0)用来选择数据寄存器,如表3所列。

表3 4个数据寄存器的地址分配

P1P0数据寄存器00温度值寄存器(只读)01配置寄存器(可读/写)10THYST寄存器(可读/写)11TOTI寄存器(可读/写)

温度值寄存器是一个16位只读寄存器,其高10位以2的补码格式储存由模数转换器产生的10位温度测量读数;配置寄存器是一个8位读/写寄存器,用来设置AD

用AD7416+PIC16F84+PC机构建的测温系统 [日期:2005-4-11] 来源:单片机及嵌入式系统应用 作者:河北通信职业技术学院 李学海 董 丹 李建良 [字体:温度传感器AD7416和RISC型8位单片机PIC16F84,以及与PC机通信的硬件接线方法和软件算法设计,并且提供完整的PC端C程序和单片机端汇编语言程序。

关键词:AD7416 PIC16F84 I2C总线 单片机

引言

在测量仪器仪表中,温度的检测几乎成为必不可少的部分。传统的模拟温度传感器,如AD590,因外围电路复杂、需调零等缺点,给应用开发带来一些麻烦。利用数字温度传感器配合单片机来设计各种控制系统,越来越多受到业内人士的推崇。美国模拟器件公司生产的AD7416是一款功能较多的温度器件,它在一个芯片上集成了I2C总线接口、温度传感器、10位数摸转换器和窗口门限温度控制器等功能。它与其它数字温度传感器相比具有体积小、编程简单等优点。

在本文介绍的温度检测系统中,其前端温度检测应用的是AD7416,控制器应用的是PIC16F84,将探测到的温度上传到上位机(PC机)。由于PIC16F84单片机是一款廉价的低端型号,其内部没有配置I2C接口和UART接口等外围模块,因此需要利用虚拟技术来模拟I2C和UART的功能,分别与下位器件AD7416和上位机进行通信。文后提供了完整的算法设计和程序清单。在此程序基础上稍加改动也可以适用于其它PIC单片机,甚至是其它厂家的单片机,来实现同样的功能。故本文具有比较广泛的启发性和实用价值。

1 硬件简介

硬件接线图如图1所示,前端电路主要由1片10位串行数字温度传感器AD7416和1片RISC型PIC16F84微控制器组成,上位机由PC兼容机担当。不过,上位机不是必须的,图1中给出了可选的相连PC的串行接口。通过该串口,可把检测到的现场温度值上传到PC机,以便进行实时处理、存储和监控。

1.1 与PC机的接口简介

硬件引脚连接关系如表1所列,其中列出了各引脚的功能。利用PIC16F84端口A的2条引脚与AD7416连接;利用端口B的3条引脚在前端电路与PC机之间传送信息,也可以直接传输给led数码管驱动电路以供显示。

表1 三者相互连接的对应关系

AD7416PIC16F84PC接口SDA
SCLPORT A,0
PORT A,1  PORT B,0
PORT B,1
PORT B,2SDATA
SCLK
SYNC

PIC16F84单片机与PC机的通信接口选用并行打印口,通信方式选用串行同步方式。其中,并行打印口既可以是25芯的D型插口,也可以是36芯的Centronics连接器,如图2所示。串行同步方式通信的信号时序如图3所示。

1.2 AD7416简介

AD7416是一个带有温度超限功能的10位串行数字温度传感器,采用8引脚的SOIC或μSOIC封装。其内部结构如图4所示,引脚布局如图5所示,引脚功能如表2所列。

表2 引脚功能说明

引脚名称引脚序号引脚类型

功 能 说 明

SDA1I/OI2C总线串行数据输入/输出传送线(开漏型)SCL2II/C总线串行时钟线(开漏型)OTI3O温度超限指示脚,低电平有效(开漏型)GND4-电源接地脚A2~A05~7I串行总线地址低3位连线编程脚VDD8-电源正极,工作电压范围2.7V~5.5V

AD7416具有如下特点:10位温度至数字转换器;超温指示端为低电平有效的漏极开路型输出脚,可以实现“线与”接线方式;I2C兼容的串行接口;可选的串行总线地址,允许在单一总线上连接多达8个AD7416;低功耗节电方式(典型2mA);400ms更新速率;55℃~+125℃温度测量范围。

AD7416有5个内部寄存器。其中4个是数字寄存器,一个是地址指针寄存器。地址指针寄存器是一个8位寄存器,用于存放指定4个数据寄存器的地址码。对AD7416每一次串行写操作的第一个数据字节是数据寄存器的地址码,这就是随后的数据字节要写入的地址。其实,地址指针寄存器只需最低两位(记作P1和P0)用来选择数据寄存器,如表3所列。

表3 4个数据寄存器的地址分配

P1P0数据寄存器00温度值寄存器(只读)01配置寄存器(可读/写)10THYST寄存器(可读/写)11TOTI寄存器(可读/写)

温度值寄存器是一个16位只读寄存器,其高10位以2的补码格式储存由模数转换器产生的10位温度测量读数;配置寄存器是一个8位读/写寄存器,用来设置AD

相关IC型号

热门点击

 

推荐技术资料

滑雪绕桩机器人
   本例是一款非常有趣,同时又有一定调试难度的玩法。EDE2116AB... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!