首页 > 技术 > 热工自动化 > 仪器仪表 > 正文

基于AVR单片机和DS18B20的多点温度测量系统

2011-02-17 16:08:00 来源:

  介绍基于AVR单片机、BASCOM-AVR语言和DS18B20传感器的多点温度测量系统。利用AVR单片机内部的E2PROM,建立了位置编号和传感器序列号的对应关系表,实现了在多点温度测量系统中对多个传感器的识别和处理,并给出了具体的编程实例。

  1DS18B20和BASCOM-AVR简介

  DS18B20是美国DALLAS公司生产的单总线数字温度传感器,从DS18B20读出或写入的信息仅需要一根口线。在单总线工作方式下,允许一条信号线上挂接多个DS18B20,特别适合于构成远距离多点温度测控系统,从而大大简化了系统布线,提高了可靠性,降低了成本,而实现这些的关键在于每片DS18B20都有唯一的ROM代码(64位产品序列号)。在多点温度测控系统中,ROM代码是识别和操作DS18B20的基础;无论读取还是选择对某一个传感器进行操作,主机必须发送64位ROM代码。

  BASCOM-AVR是MSC Electronics公司推出的基于AVR系统的软件开发仿真平台。程序语句和Micrsoft VB/QB高度兼容;为标准LCD显示器、I2C芯片和单总线协议芯片等扩充了专用语句;内置模拟终端和程序下载功能;内置软件仿真平台用于测试;编译产生的运行代码可在所有带内部存储器的AVR微控制器中运行。DEMO版本可生成2KB程序代码。BASCOM-AVRDEMO版安装软件包可到http://www.mcselec.com免费下载。

  2硬件设计

  

  图1为温度检测系统原理图,DS18B20采用寄生电源方式供电。主机采用AVR单片机90S8515、I/O口PC1可以挂接多个DS18B20,LCD显示器采用TC1602AT(S)R(2×16字符)。开关K1打开时为正常工作方式,LCD依次循环显示各个测量点的编号(在上一行显示)和当前转换温度(在下一行显示)。开关K1闭合时,借助Z1和拨动开关K2测定DS18B20 ROM代码。ATMEL公司的AVR单片机是基于新的精简指令RISC结构的,吸取PIC及8051单片机的优点,并作了重大改进,内载Flash存储器、E2PROM(存储DS18B20的序列号等)、SRAM,I/O口线可直接驱动LED。它能采用高级语言编程,目前国际上已有许多公司推出了C、Basic等基于高级程序设计语言的AVR开发软件和平台。

  3测量方法及软件设计

  3.1获取序列号(64位ROM代码)

朋友圈热传垃圾分类列表 官方发声:错的!权威指南在这里朋友圈热传垃圾分类列表 官方发声:错的!

近期,一张包含103种垃圾的垃圾分类列表在网上热传,在湿垃圾干垃圾有害垃圾和可回收物这4个分类下,每一类都列出了20多种垃圾。因为内容详[详细]