单总线数字温度传感器与AVR单片机接口技术及应用
- 格式:pdf
- 大小:288.62 KB
- 文档页数:7
单片机与传感器接口技术的设计与匹配传感器是将非电气量转换为电信号的装置,而单片机则是一种集成了CPU、内存和外设功能的微型计算机。
单片机与传感器的接口技术在电子领域中起到至关重要的作用。
它不仅能够实现精确的数据采集和处理,还可以实现人机交互和控制功能。
本文将重点探讨单片机与传感器接口技术的设计原理与匹配方法。
一、单片机与传感器接口的设计原理在设计单片机与传感器接口时,需要考虑以下几个方面的因素:1. 电气特性匹配:单片机与传感器的电气特性需匹配,包括电压、电流、信号电平、信号速率等。
如果电气特性不匹配,可能会导致数据传输错误或损坏。
2. 接口形式选择:常见的单片机与传感器接口形式有模拟接口和数字接口两种。
模拟接口通过模拟信号传输数据,适用于电压、电流、温度等模拟量传感器。
数字接口通过数字信号传输数据,适用于数字传感器、通信接口等。
3. 信号转换:如果单片机与传感器的信号类型不一致,需要进行信号转换。
常用的信号转换方法包括模数转换、数字-模拟转换等。
信号转换可以有效地将传感器信号转换为单片机可以读取和处理的信号。
4. 数据传输方式:根据具体需求,可以选择串行通信、并行通信等数据传输方式。
串行通信适用于数据量较小、传输速率较低的场景,而并行通信适用于数据量较大、传输速率较高的场景。
二、单片机与传感器接口的匹配方法1. 了解传感器的技术参数:在进行单片机与传感器的接口设计之前,首先需要了解传感器的技术参数,包括工作电压、输出电压范围、输出信号类型等。
这些参数将有助于选取合适的单片机与传感器接口类型。
2. 确定接口形式:根据传感器的特性和应用场景,确定接口形式,如模拟接口或数字接口。
如果传感器输出的是模拟信号,可以选择ADC进行信号转换,将模拟信号转换为数字信号。
如果传感器输出的是数字信号,可以直接连接到单片机的数字IO口。
3. 选择合适的单片机:根据传感器的需求和接口类型,选择合适的单片机。
例如,对于模拟传感器接口,可以选择具有较多模拟输入通道和ADC功能的单片机。
目录摘要 (1)Abstract (2)0 引言 (4)1 课题背景及研究意义 (6)1.1 温度采集系统设计的意义及其应用目的 (6)1.2 AVR单片机简介 (7)1.2.1 AVR单片机的主要特点 (7)1.2.2 AVR系列单片机简介 (8)1.3 ATmega16单片机系统结构 (9)1.3.1 ATmega16简介 (9)1.3.2 ATmega16的总体结构 (9)1.4 温度传感器 (11)1.4.1 数字式温度传感器 (12)1.5 串口概述 (12)1.5.1 串口介绍 (12)1.5.2 串口分类 (13)1.6 protel DXP2004软件基本概念以及使用 (15)1.7 系统方案设计 (17)1.7.1 软件设计方案 (17)2 数字式温度传感器DS18B20软硬件设计 (18)2.1 DS18B20 数字式温度传感器基本特性 (18)2.2 DS18B20测温模块 (21)2.2.1 DS18B20工作方式 (21)2.2.2 DS18B20温度数据 (22)2.2.3 DS18B20在温度采集系统中的应用 (23)3 ATmega16单片机软硬件设计 (24)3.1 ATmega16引脚说明 (24)3.2系统硬件设计 (26)3.2.1 复位线路的设计 (27)3.2.2 晶振电路的设计 (28)3.2.3 AD转换滤波线路的设计 (28)3.2.4 ISP下载接口设计 (29)3.2.6 电源设计 (30)3.2.7总设计图 (31)3.3 软件系统设计 (33)3.3.1 温度采集软件设计 (33)3.3.2 串口软件设计 (35)3.3.3 程序 (40)4.串口 RS232软硬件设计 (45)4.1 USART (45)4.2 串口的组成 (46)4.3 串口电平转换电路MAX232 (47)5 研究总结 (48)参考文献 (51)译文 (53)原文说明 (61)摘要在国民经济各部门,如电力、化工、机械、冶金、农业、医学以及人们的日常生活中,温度采集是十分重要的。
数字温度传感器TC77与AVR单片机的接口设计摘要:实现了一种全集成可变带宽中频宽带低通滤波器,讨论分析了跨导放大器-电容(OTA—C)连续时间型滤波器的结构、设计和具体实现,使用外部可编程电路对所设计滤波器带宽进行控制,并利用ADS软件进行电路设计和仿真验证。
仿真结果表明,该滤波器带宽的可调范围为1~26 MHz,阻带抑制率大于35 dB,带内波纹小于0.5 dB,采用1.8 V电源,TSMC 0.18μm CMOS工艺库仿真,功耗小于21 mW,频响曲线接近理想状态。
关键词:Butte1概述TC77是Microchip公司生产的一款13位串行接口输出的集成数字温度传感器,其温度数据由热传感单元转换得来。
TC77内部含有一个13位ADC,温度分辨率为0.062 5℃/LSB。
在正常工作条件下,静态电流为250μA(典型值)。
其他设备与TC77的通信由SPI串行总线或Microwire兼容接口实现,该总线可用于连接多个TC77,实现多区域温度监控,配置寄存器CONFIG中的SHDN位激活低功耗关断模式,此时电流消耗仅为0.1μA(典型值)。
TC77具有体积小巧、低装配成本和易于操作的特点,是系统热管理的理想选择。
2 TC77的内部结构及引脚功能图1所示为TC77的内部结构原理图。
TC77由CMOS结型温度传感器、带符号位的13位∑-△A/D转换器、温度寄存器、配置寄存器、制造商ID寄存器及三线制串行接口等部分组成。
其引脚定义如下:SI/O:串行数据引脚SCK:串行时钟Vss:地CE:片选端(低电平有效)VDD:电源电压(6.0 V)3 TC77的工作原理数字温度传感器TC77从固态(PN结)传感器获得温度并将其转换成数字数据。
再将转换后的温度数字数据存储在其内部寄存器中,并能在任何时候通过SPI串行总线接口或Microwire兼容接口读取。
TC77有两种工作模式,即连续温度转换模式和关断模式。
连续温度转换模式用于温度的连续测量和转换,关断模式用于降低电源电流的功耗敏感型应用。
AVR单片机原理及应用AVR(Advanced Virtual RISC)是一种低功耗、高性能的单片机架构,由Atmel公司开发。
AVR单片机具有简单易学、高速、低功耗和丰富的外设等特点,在工业控制、电子设备、通信等领域应用广泛。
1.CPU:AVR单片机的核心部分,包括ALU(运算单元)、寄存器组和控制单元。
ALU负责执行加减乘除等基本运算,寄存器组用于保存数据和中间结果,控制单元用于控制指令执行。
2. 存储器:AVR单片机采用分布式存储器结构,包括程序存储器(Flash)和数据存储器(RAM)。
程序存储器用于保存程序指令,数据存储器用于保存数据和变量。
3.时钟电路:AVR单片机通过时钟电路来同步指令执行。
时钟信号控制着单片机内部各个部件的工作节奏,使其按照预定的频率工作。
4.外设接口:AVR单片机具有丰富的外设接口,包括通用IO口、串口、定时器、ADC(模拟转换器)等。
这些接口可用于连接外部设备,实现与外部环境的信息交互。
1.工业控制:AVR单片机具有高性能和丰富的外设接口,可应用于工业自动化控制领域。
例如,可用于控制温度、湿度、压力等参数,实现工业过程的自动化控制和监测。
2.电子设备:AVR单片机广泛应用于各类电子设备,如电子钟表、电子秤、电子计数器等。
其高速和低功耗特点使其特别适用于电子设备的控制和计算。
3. 通信:AVR单片机可以通过串口接口实现与其他设备的通信。
例如,可以用它来实现蓝牙、WiFi、Zigbee等无线通信模块的控制,实现设备之间的数据传输和通信。
4.智能家居:AVR单片机可应用于智能家居系统。
通过外设接口控制家居设备,如照明、空调、窗帘等,将其变为可远程控制和智能化管理的设备。
5.医疗设备:AVR单片机在医疗设备中的应用广泛,如体温计、血糖仪、血压计等。
通过与传感器结合,可以实现各种医疗参数的测量和监测。
总之,AVR单片机以其高性能、低功耗和丰富的外设接口在各个领域都有着广泛的应用前景。
单总线数字温度传感器原理及应用
于数据总线,总线本身也可以向所挂接的DS1820 供电,而无需额外电源。
DS1820 提供9 位温度读数,构成多点温度检测系统而无需任何外围硬件。
对DS1820 的使用,多采用单片机实现数据采集。
处理时,将DS1820 信号线与单片机一位口线相连,单片机可挂接多片DS1820,从而实现多点温度检测系统。
由于DS1820 只有三个引脚,其中两根是电源线VDD 和GND,另外两根用作总线DQ(Data In/Out),由于其输出和输入均是数字信号且与TTL 电平兼容,因此其可以与微处理器直接进行接口,从而省去了一般传感器所必需的中间转
换环节。
本设计中以DS1820 为传感器、AT89C52 单片机为控制核心组成的多点温度测试系统如图3 所示[4]。
用6 只DS1820 同时测控6 路温度(视实际需要还可扩展通道数)。
89C52 单片机P1.1 口接单线总线。
DS1820 采用寄生电源供电方式。
为保证在有效的DS1820 时钟周期内能提供足够的电流,图3 中采用一个MOSFET 管和89C52 的H.0 口来完成对DS1820 的总线上拉。
键盘扫描和动态扫描的显示共用一片可编程接口芯片8279,显示采用8 位共阴极LED 数码管,它可用来显示通道数、温度测量值以及TH、TL 的值。
tips:感谢大家的阅读,本文由我司收集整编。
仅供参阅!。
基于AVR单片机与温度传感器相结合的实时温度控
制
随着计算机技术尤其是单片微型机技术的发展,温度对人们的生活与工作影响很大,所以要实时采集温度并且对其进行分析。
为此,实现实时准确的测量监控。
采用串口传送数据并且在PC机上进行分析。
由于单片机的控制方便、简单和灵活等优点,采用了高性能avr单片机来控制GTJ4-10A固态继电器,最总实现温度的控制。
从而最总在PC机上绘制温度曲线并保存数据和分析温度的数据。
1 系统组成及基本原理
本系统由温度采集模块,固态继电器控制模块,单片机模块,PC机软件处理模块。
4个模块加起来实现温度的控制,以及温度采集和温度经过软件处理的分析。
它们的逻辑关系如图1所示。
本系统的任务是对某种特定环境的温度进行采集并进行保存和再显示,通过单片机去控制固态继电器,从而控制其温度值的大小,再通过PC机实时显示当前的温度,并对当前的温度进行分析与保存。
便于与以后的温度值进行对比等应用。
首先由ATmega16单片机控制GTJ4-10A固态继电器从而控制交流电,再达到控制温度值的大小,这个时候通过DS18B20温度传感器对。
《自动检测技术及仪表》课程设计报告题目:单总线数字温度传感器及其应用学院:专业:年级:姓名:学号:指导教师:***摘要介绍了单总线数字温度传感器DS1820的内部结构,工作原理、测量电路原理图、特性等,DSl820是由美国DALLAS公司提供的一种单总线系统的数字温度传感器,它可提供二进制9位温度信息,分辨率为0.5℃,可在一55℃~+125℃的范围内测量温度。
从中央处理器到DSl820仅需连接一条信号线和地线,其指令信息和数据信息都经过单总线接口与DSl820进行数据交换。
DSl820完成读、写和温度变换所需的电源可以由数据线本身提供,也可以由外部供给。
并且,每个DSl820有唯一的系列号,因此同一条单总线上可以挂接多个DSl820,构成主从结构的多点测温传感器网络。
此特性可普遍应用在包括环境监测、建筑物和设备内的温度场测量,以及过程监视和控制中的温度检测中。
○1一、单总线数字温度传感器的内部结构DSl820内部框图如图l所示○2。
主要包括7部分:(1)64位光刻ROM 与单线接口;(2)温度传感器;(3)寄生电源;(4)温度报警触发器TH 和TL,分别用来存储用户设定的温度上、下限;(5)高速暂存器,即便笺式RAM,用于存放中间数据;(6)存储与控制逻辑;(7)8位循环冗余校验码(CRC)。
图1 DS1820内部结构二、单总线数字温度传感器的工作原理该器件可以从单总线上得到能量并储存在内部电容中,该能量是当信号线处于低电平期间消耗,在信号线为高电平时能量得到补充,这种供电方式称为寄生电源供电。
DSl820也可以由3—5.5V的外部电源供电。
每一片DSl820都有64位长的惟一ROM码。
第一个八位为单总线器件识别码(DSl820为28h),接下来48位是器件的惟一系列码,最后八位是前56位的CRC校验码。
CRC校验码按下列多项式计算:DSl820内有一个能直接转化为数字量的温度传感器,其分辨率为9,lO,ll,12bit可编程,通过设置内部配置寄存器来选择温度的转换精度,出厂时默认设置为12bit。
事无巨细,单总线温度传感器DS18B20终于来到最后一关,温度传感器DS18B20。
首先要知道什么是单总线:目前常用的微机与外设之间进行数据传输的串行总线主要有I2C 总线、SPI 总线和SCI 总线。
其中I2C 总线以同步串行2线方式进行通信(一条时钟线,一条数据线),SPI 总线则以同步串行3线方式进行通信(一条时钟线,一条数据输入线,一条数据输出线),而SCI 总线是以异步方式进行通信(一条数据输入线,一条数据输出线)的。
这些总线至少需要两条或两条以上的信号线。
近年来,美国的达拉斯半导体公司(DALLASSEMICONDUCTOR )推出了一项特有的单总线(1-Wire Bus )技术。
该技术与上述总线不同,它采用单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的,因而这种单总线技术具有线路简单,硬件开销少,成本低廉,便于总线扩展和维护等优点。
单总线适用于单主机系统,能够控制一个或多个从机设备。
主机可以是微控制器,从机可以是单总线器件,它们之间的数据交换只通过一条信号线。
当只有一个从机设备时,系统可按单节点系统操作;当有多个从机设备时,系统则按多节点系统操作。
DS18B20,是DALLAS 公司设计的世界上第一片“单总线的温度传感器”。
单总线的特点使其体积更小,使用成本更为低廉,可以简单的组建多点温度检测网络。
1、DS18B20的温度测试精度高,可以程序设定9~12位的分辨率,精度为±0.5°C; 2、 同时DS18B20抗干扰能力强,适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等;3、DS18B20支持,3V~5.5V 的电压范围,使系统设计更灵活、方便; 4、DS18B20可用户定义的非易失性温度报警设置; DS18B20的内部结构:DS18B20内部结构主要由四部分组成:64位光刻ROM 、温度传感器、非挥发的温度报警触发器TH 和TL 、配置寄存器。
A VR学习笔记七、基于DS18B20的温度测量实验-------基于LT_Mini_M167.1 基于DS18B20的基本测温实验7.1.1、实例功能传统的温度测量采用热敏电阻,但热敏电阻存在可靠性差,测温准确率低,并且必须经过专门的接口电路将采集到的模拟量转换为数字量后才能由单片机处理。
DS18B20是美国DALLAS公司推出的一款单线数字温度传感器。
它具有:体积小,功耗低,精度高,可靠性好,易于单片机接口等优点,每片DS18B20都有唯一的一个可读出的序列号,同时DS18B20还采用了寄生电源技术,可以不用外接电源。
综合以上特点,DS18B20特别适合于多点测温系统。
本节首先介绍DS18B20的一些基本知识:特点、结构、原理、控制时序、与单片机的接口方法等。
最后通过一个实例实现最简单的温度测量。
本实例分为三个功能模块,分别描述如下:●单片机系统:利用ATmega16单片机与DS18B20温度传感器通信,控制温度的采集过程,并将采集到的温度值通过串口发送到计算机。
●外围电路:外围电路分两部分:串口电路部分(实现将采集到的温度值发送到计算机的功能)、DS18B20温度采集电路(实现采集环境温度的功能)。
●软件程序:编写软件,实现温度测量和串口发送数据功能。
通过本实例的学习,掌握以下内容:●理解DS18B20的特点、结构和原理和接口设计方法。
●掌握DS18B20的控制时序和控制方法流程。
●掌握最简单的采集温度指令。
7.1.2 器件和原理1、DS18B20介绍DS18B20主要有以下特点:●单线接口:DS18B20与单片机连接时仅需一根I/O口线即可实现单片机与DS18B20之间的双向通信。
●实际使用中不需要任何外围元件。
●可用数据线供电,电压范围3.0-5.5V。
测温范围-55-+125o C。
●可编程实现9-12位的数字读数方式。
●用户可设定的非易失性(掉电不丢失)的温度上下线报警值。
●支持多点组网功能,多个DS18B20可并联在唯一的三总线上,实现多点温度测量。
基于AVR单片机的温度测量系统1 引言传统温度测量系统中,一般选用模拟式温度传感器。
常用的模拟式温度传感器,其中一个共同特点是输出为模拟量,因此在测量电路中必须经过A/D转换才能成为计算机所能处理的数字量。
数字式温度传感器将非电模拟量转换到数字信号这一处理过程的多个环节集成在单芯片上,实现了在测量点将温度值数字化,有效解决了传统温度传感器外围电路复杂,抗干扰能力差的弊病,降低了对系统的要求。
该系统以Atmel公司的ATMEGA8L单片机为控制中心,温度测量使用DS18B20单总线数字温度传感器,采用1602字符型液晶显示器作为温度值的显示输出。
编程使用CodeVision AVR C Compiler编译器,该编译软件自带了使用器件库函数文件,省去了编写器件驱动程序的步骤,为程序的编写带来了极大的方便。
2硬件设计图1给出系统电路图。
ATMEGA8L单片机的PB0口线连接DS18B20;PD口连接1602 LCD。
DS18B20采用源端连接方式,LCD采用4位总线模式。
其中,液晶显示模块的连接方式取决于编程软件Code Vision AVR C Compiler的code wizard avr自动程序生成器的设置。
采用这种方法,可直接调用库函数实现对液晶显示器的操作。
2.1 ATmega 8L单片机Atmel公司的EEPROM电可擦除技术、闪速存储器技术是最引人瞩目的高质量和高可靠性生产技术。
在CMOS器件生产领域,Atmel的设计水平、生产工艺及封装技术一直处于世界领先地位。
这些技术使单片机也具有优秀的品质,在结构、性能等方面具有明显优势。
ATMEGA8L单片机的特点是:8 KB的系统内可编程Flash,512字节EEPROM,1 KB SRAM,32个通用I/O口线,32个通用工作寄存器,3个具有比较模式的灵活的定时器/计数器,片内/外中断,可编程串行USART,面向字节的两线串行接口,10位6路A/D转换器,具有片内振荡器的可编程看门狗定时器,一个SPI串行端口,以及5种可以通过软件进行选择的省电模式。
第24卷第4期河北工业科技Vol.24,No.42007年7月Hebei Journal of Industrial Science and TechnologyJ uly 2007 文章编号:100821534(2007)0420227203DS18B20与单片机的接口及编程技术刘俊伏,宗 云(石家庄信息工程职业学院计算机系,河北石家庄 050035)摘 要:介绍了DS18B20的性能、内部结构及优越性,并详述了单线数字温度传感器DS18B20与单片机的接口技术以及在温度测量中的硬件和软件设计,最后以一个程序实例进行了说明。
关键词:DS18B20;单总线;数字温度传感器;单片机;网络化中图分类号:TP212 文献标识码:AInterface of DS18B20wit h single 2chip comp uterand programming techniqueL IU J un 2f u ,ZON G Yun(Computer Department ,Shijiazhuang Information Engineering Vocational College ,Shijiazhuang Hebei 050035,China )Abstract :DS18B20is a 12Wire bus digital thermometer produced by DALL AS Company.It has characteristics of simple inter 2face ,high accuracy ,strong anti 2interference ability ,stabilize credibility etc.This paper introduces the interface technique 12Wire bus digital thermometer DS18B20with single 2chip computer and its hardware &software design applied in measuring temperature.Finally an example of programming is given.K ey w ords :DS18B20;12Wire bus ;digital thermometer ;single chip microcomputer ;networked DS18B20是DALLAS 公司推出的一线式数字温度传感器,其测量温度值能够被直接读出,工作电源既可在远端引入,也可采用寄生电源方式产生(总线本身向所挂接的DS18B20供电)。
单片机与传感器接口技术研究及应用案例分析一、引言单片机与传感器接口技术是电子领域中一项重要的技术,它使得单片机能够读取和处理各类传感器的数据,并使用这些数据进行相应的控制和决策。
在各个领域的应用中,单片机与传感器接口技术发挥了重要的作用,为人们带来了许多便利和效益。
本文将对单片机与传感器接口技术进行深入研究,并通过案例分析展示其应用价值和具体应用场景。
二、单片机与传感器接口技术概述1. 单片机的基本原理和特点单片机是嵌入式系统中的核心部件,它集成了处理器、存储器和各种接口电路,并具有较强的数据处理和控制能力。
常见的单片机有51系列、AVR系列和ARM系列等。
单片机的特点包括体积小、功耗低、成本低、可编程性强等。
2. 传感器的基本原理和分类传感器是将物理量或化学量转换为可测量的电信号的装置。
根据测量的物理量不同,传感器可分为温度传感器、压力传感器、光学传感器、加速度传感器等。
传感器的基本原理包括电阻、电容、电感、磁敏、光敏等。
3. 单片机与传感器的连接方式通过选择合适的电路结构和通信协议,可以实现单片机与传感器的连接。
常用的连接方式有模拟电压输入、模拟电流输入、数字信号输入和串行通信接口等。
其中,模拟电压输入是最常见的连接方式,它通过ADC(模数转换器)将传感器输出的模拟电压转换为数字信号。
4. 单片机与传感器的接口技术单片机与传感器的接口技术包括硬件接口和软件接口。
硬件接口主要指单片机与传感器之间的电路连接方式,包括传感器的电源供应、引脚配置和信号线连接等。
软件接口主要指单片机通过程序对传感器进行读取和控制的方法,包括使用特定的通信协议和编写相应的驱动程序。
三、单片机与传感器接口技术研究1. 传感器的选取和参数配置根据实际应用需求,选择适合的传感器,并进行相应的参数配置。
例如,在温度控制系统中,可以选择温度传感器,并设置采样精度、测量范围和输出方式等参数。
2. 硬件电路设计和连接根据传感器的接口类型和工作电压,设计相应的硬件电路,并将其连接到单片机的引脚上。
欢迎订阅欢迎撰稿欢迎发布产品广告信息51do:i 10.3969/.j issn .1671-1041.2010.01.026基于DS 18B 20与AVR 单片机的测温技术黄桂梅,刘永立,曲卫冬(保定电力职业技术学院,保定071051)摘要:文中介绍了单总线数字式温度传感器D S 18B 20的应用特点,给出了基于DS 18B 20与AVR 单片机CVAVR 编译器的编程思路以及多点测温的程序设计,分析并提出了测温系统数据不稳定的电路改进措施,同时给出了接口程序的编程技巧和应用实例。
关键词:单总线;DS 18B 20;AVR 单片机;程序设计;硬件连接中图分类号:TP 212.11 文献标识码:BThe technique of te m perature m eas uringbased on DS 18B 20and AVR single -chip m icroco mputerHUANG Gu -i m e,i L I U Yong -l,i QU W e-i don g(Baoding Techni cal and Vocati ona lC ollege of Electric Pow er ,Baod i ng 071051,Chi na )Abstrac :t The paper elaborat ed on t he application f eat ures of digit al s ingle bus t e mperat ure sensor (DS 18B 20)and de monstrated t heprogra mm ing method o fCVAVR co m pli e r as we ll as t he pr ogr amm i n g des i g n ofm ult-i po i n t t e m perat ure measuring on t he basis o fDS 18B 20and AVR single -chip m ic r oco mput er .Buil d i n g on t he above ,t he pa -per ana l y zed the reason f or dat a ins t ab ility in t e m perat ure measuri n g sys t e m and prov ided t he corresponding circu it m i pr ov i n g measures .At las,t t he progra mm ing sk ill s and app lication exa m pl e s f or int erf ace progra mme w er e put f or ward in t he paper .Key w or ds :sing l e bus ;DS 18B 20;AVR s ingle -chip m ic r oco mput er ;progra mm ing design ;har dware connec tion0 引言温度是一种最基本的环境参数,与人民生活和工农业生产有着密切的关系。
单总线它实现了在一条数据线上进行双向数据传输使系统布线更方便图8.6.2 程序8515def.dat定义度定义汉字的显示字符 Deflcdchar 2 , 31 , 4 , 31 , 4 , 12 , 10 , 18 , 17 天Portc.0接DS1820的数据线 Config Lcdpin=Pin,Db4=Porta.4,Db5=Porta.5,Db6=Porta.6,Db7=Porta.7,E=Porta.0,Rs=Porta.1 Config Lcd = 16 * 2 清LCD显示第一行显示提示字符串 Locate 2 , 1 : Lcd Chr(1) ; Chr(2) 2列显示汉字 Locate 2 , 8 : Lcd Chr(0) ; "C" Do 1wwrite &HCC : 1wwrite &H44 启动温度转换 Waitms 255 Waitms 255 DS1820初始化 1wwrite &HCC 跳过ROM操作 1wwrite &HBE 读温度值 Data1(1) = 1wread(9) 共9个字节 1wreset 无DS1820显示 Else Crc = 0 For I = 1 To 9 CRC校验正确CRC校验正确负温度显示号 Else Locate 2 , 3 : Lcd " " 以下显示温度CRC校验错***.*CRC计算用的表格 Data 0 , 94 , 188 , 226 , 97 , 63 , 221 , 131 , 194 , 156 Data 126 , 32 , 163 , 253 , 31 , 65 , 157 , 195 , 33 , 127 Data 252 , 162 , 64 , 30 , 95 , 1 , 227 , 189 , 62 , 96 Data 130 , 220 , 35 , 125 , 159 , 193 , 66 , 28 , 254 , 160 是各种总线中使用信号线较少多主机时钟同步和仲裁等功能很强的总线许多接口芯片如LCD驱动A/D,D/A都采用I2C接口而且大多数的IC卡的接口都采用I2C总线用AVR系统构成简易IC卡读写器I2C串行总线使用两根信号线另一根是时钟线SCL各设备的时钟线SCL接到总线的SCL关于I2C的详细内容请参考有关的书籍和资料因此需要用两根 I/O线来模拟实现I2C总线的功能实现I2C总线启始读BASCOM-AVR提供了专用的 I2C语句实验中采用的IC卡为ATMEL公司的AT24C01A/2/4/8/16该类IC卡上的芯片就是采用I2C总线接口的串行CMOS EEPROMAVR系列的单片微控制器内部还提供了一定容量的EEPROM设定值或密码口令字等它不仅可使系统设计节省硬件(EEPROM芯片)和连线提高了系统的可靠性和保密性使用了AVR片内的EEPROM来保存密码判别IC卡的非法性写用户使用PC的键盘输入8位自定密码将密码写入用户的IC卡中(也可同时写入AVR的EEPROM中作为系统密码)并同系统密码核对IC卡读写器采用LCD液晶显示器 原理图Exp9.bas ¥regfile = "8515def.dat" ¥crystal = 4000000 ¥baud = 9600 Dim I As Byte , Temp As Byte 定义LCD显示屏接口 Config Scl = Portd.7 定义Portd.6为I2C总线的Dda Const Adresw = &HA0 定义IC卡的读地址指令字 Config Pinc.0 = Input , Pinc.1 = Input , Pinc.2 = Input Portc.0 = 1 : Portc.1 = 1 : Portc.2 = 1 清LCD显示 Do Cls Locate 1 , 1 : Lcd "Demo for IC_Card" 检测有无IC卡插入 Locate 2 , 1 : Lcd "No IC_Card " 有IC卡插入 If Pinc.0 = 0 Then Cls Locate 1 , 1 : Lcd "Enter Password: " 要求输入密码字 I = 1 Locate 2 , 1 Do Temp = Inkey() 的密码字符长度为8个 Lcd Chr(temp) 将8个密码字写入IC卡中 I2cstart 如果系统设置为修改系统密码时 Writeeeprom Data1(i) , I 写入地址为1-8 End If For I = 1 To 8 判别写入密码同用户输入的密码 If Data1(i) <> Data2(i) Then 相同不同等待用户抽出IC卡 Else 读IC卡上的密码字8个 Lcd Chr(data1(i)) 读系统密码字8个 Next Card_ok = 0 For I = 1 To 8 比较 Card_ok = 1 Exit For End If Next Locate 2 , 1 If Card_ok = 1 Then Lcd "Password not ok!" 密码相符 End If Do Loop Until Pinc.2 = 1 返回循环 End 。
单总线单总线多传感器温度智能检测系统摘要本系统设计了一种基于单总线的温度检测系统。
针对智能温度控制,将智能传感器检测与单片机控制相结合,设计了基于单片机的温度检测系统的设计方案。
通过单总线温度传感器和单总线模数转换器采集现场数据。
采用DS18B20数字传感器对温度进行采样和转换,增强了电路的可靠性,提高了测量精度。
环境信息通过液晶显示器实时显示,通过RS-485网络将数据传输至上位机,通过上位机数据采集处理进行远程控制。
数据采集的精度最高可达 16 位,并可进行编程。
单总线技术组网非常方便,维护也非常简单,为当今的数据采集系统提供了一种新的解决方案。
关键词:单总线; DS18B20; MCS-51目录摘要I摘要错误!未定义书签。
第 1 章引言11.1学科背景11.2学科发展历程11.3本文内容2第二章方案论证与选择32.1MCU系统方案32.2传感器的选择52.2.1温度传感器52.3显示52.4通讯方式的选择6第 3 章系统硬件设计83.1AT89S52单片机83.1.1 AT89S52单片机管脚排列83.1.2单片机最小系统原理图93.2PT12864M液晶显示器93.2.1模块管脚说明103.2.2接口时序103.2.3具体说明介绍113.31-WIRE 总线技术113.3.1单总线技术概述113.3.2单总线接口硬件结构123.3.3单总线芯片序列号123.3.4单总线通讯信号类型133.3.5单总线通信初始化143.3.6单总线通信的ROM命令143.4单总线温度传感器DS18B20153.4.1概述153.4.2引脚图图163.4.3部件结构163.4.4工作原理173.4.5功能指令183.5RS485通讯原理183.5.1 MAX1487简介: 183.5.2传输速率和传输距离193.6电源设计19第 4 章系统软件设计214.1主程序214.2各子程序的设计234.2.1液晶驱动器234.2.2单总线驱动234.2.3读取温度程序234.3软件过滤和数据验证244.4通信协议简介254.5PC数据采集程序25结论26至27参考29_ _28第一章介绍1.1 学科背景在当代社会的生产生活中,温度检测系统被广泛应用于社会生产生活的各个领域。
208第10章单片机系统的串行扩展技术【内容概要】单片机系统除并行扩展外,串行扩展技术也已得到广泛应用。
与并行扩展相比,串行接口器件与单片机相连需要的I/O 口线很少(仅需1~4条),极大地简化了器件间的连接,进而提高了可靠性;串行接口器件体积小,占用电路板的空间小,减少了电路板空间和成本。
常见的串行扩展总线接口有单总线(1-Wire )、SPI 串行外设接口以及I 2C (Inter Interface Circuit )串行总线接口,本章介绍这几种串行扩展接口总线的工作原理、特点以及如何进行系统串行扩展的典型设计。
10.1 单总线串行扩展单总线也称1-Wire Bus ,由美国Dallas 公司推出的外围串行扩展总线。
它只有一条数据输入/输出线DQ ,总线上的所有器件都挂在DQ 上,电源也通过这条信号线供给,这种只使用一条信号线的串行扩展技术,称为单总线技术。
单总线系统中各种器件的配置,由Dallas 公司提供的专用芯片实现。
每个芯片都有64位ROM ,厂家对每一芯片都用激光烧写编码,其中存有16位十进制编码序列号,它是器件的地址编号,确保它挂在总线上后,可唯一地被确定。
除了器件的地址编码外,芯片内还包含收发控制和电源存储电路,如图10-1所示。
这些芯片的耗电量都很小(空闲时几µW ,工作时几mW ),工作时从总线上馈送电能到大电容中就可以工作,故一般不需另加电源。
10.1.1 单总线系统的典型应用——DS18B20的温度测量系统 单总线应用典型案例是采用单总线温度传感器DS18B20的温度测量系统。
1. 单总线温度传感器DS18B20简介DS18B20是美国Dallas 公司推出的单总线接口的数字温度传感器,温度测量范围为−55~+128℃,在-10~+85℃范围内,测量精度可达±0.5℃。
DS18B20体积小、功耗低,现场温度的测量直接通过“单总线”以数字方式传输,大大提高了系统的抗干扰性。
文章编号:1672-6197(2004)02-0065-07单总线数字温度传感器与AVR 单片机接口技术及应用赵明波1,张严利2,陈 平1(1.山东理工大学计算机科学与技术学院,山东淄博255049;2.中国电子科技集团公司第五十四研究所河北石家庄050081)摘 要:介绍了Dallas 公司的单总线数字温度传感器DS18B20的特性、工作原理及传输通讯协议.该芯片能够在单总线上进行双向数据传输,并可组网实现多点测温,AVR 单片机具有较为优越的性能.文章给出了单总线数字温度传感器与AVR 系列单片机的接口技术及应用实例.关键词:单总线;数字温度传感器;AVR 单片机中图分类号:TP212文献标识码:AApplication of 12wire digital thermometer based on AVRZHAO Ming 2bo 1,ZHAN G Yan 2li 2,CHEN Ping 1(1.School of Computer Science and Technology ,Shandong University of Technology ,Z ibo 255049,China ;2.No.54Institute ,China Electrical Science Grou p Co.,Shijiazhuang 050081,China )Abstract :The characteristics ,principles and transaction sequence of 12wire digital thermometer (DS18B20)are introduced ,which is produced by Dallas Crop.12wire can transmit data serially to measure multi 2drop temperature ,and AVR single 2chip has better performance.The pro 2grammable resolution is also given based on AVR.K ey w ords :12wire ;digital thermometer ;AVR single 2chip12wire 单总线是Maxim 全资子公司Dallas 的一项专有技术.与目前多数标准串行数据通信方式,如SPI/I 2C/M ICROWIRE 不同,它采用单根信号线,既传输时钟,又传输数据,而且数据传输是双向的.它具有节省I/O 口线资源、结构简单、成本低廉、便于总线扩展和维护等诸多优点.DS18B20是美国DALLAS 半导体公司生产的可组网的一线式数字温度传感器,与其它温度传感器相比,DS18B20具有以下特性:(1)具有3引脚TO -92小体积封装形式.在其内部使用了在板(ON 2BOARD )专利技术,全部传感元件及转换电路集成在形如一只三极管的集成电路内.收稿日期:2003-11-06作者简介:赵明波(1974-),女,讲师,硕士. 第18卷第2期 山 东 理 工 大 学 学 报(自然科学版) Vol.18No.22004年3月 Journal of Shandong University of Technology (Sci &Tech ) Mar.2004 (2)温度测量范围为-55~+125℃,可编程为9位~12位A/D 转换精度,测温分辨率可达010625℃,被测温度用符号扩展的16位数字量方式串行输出.(3)其工作电源既可在远端引入,也可采用寄生电源方式产生(见图3).(4)独特的单线接口方式.DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯.(5)DS18B20支持多点组网功能.多个DS18B20可以并联在唯一的三线上,实现多点测温,可节省大量的引线和逻辑电路.以上特点使DS18B20非常适用于远距离多点温度检测系统.AVR 系列单片机性能较为优越.本文从应用的角度出发,介绍了DS18B20与AVR 单片机的接口技术.1 DS18B20的主要内部结构DS18B20内部结构主要由4部分组成:64位ROM 、温度传感器、非挥发的温度报警触发器TH 和TL 、配置寄存器.每一个DSl8B20包括一个唯一的64位长的序号,该序号值存放在DSl8B20内部的ROM (只读存贮器)中.开始8位是产品类型编码(DSl8B20编码均为28H ),接着的48位是每个器件唯一的序号,最后8位是前面56位的CRC (循环冗余校验)码.ROM 的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的.DS18B20用12位存贮温度值,最高位为符号位.图1[1]为18B20的温度存储方式,负温度S =1,正温度S =01如:0550H 为+85℃,0191H 为25.0625℃,FC90H 为-55℃.bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0L S Byte232221202-12-22-32-4bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8MS Byte S S S S S 262524图1 18B20的温度寄存器2 DS18B20的工作命令和时序2.1 工作命令1)典型的单总线命令序列[2]第一步:初始化;第二步:ROM 操作命令(跟随需要交换的数据);第三步:功能命令(跟随需要交换的数据).每次访问单总线器件,必须严格遵守这个命令序列.如果出现序列混乱,则单总线器件不会响应主机.但是该限制对于搜索ROM 命令和报警搜索命令例外,在执行两者中任何一条命令之后,主机不能执行其后的功能命令,必须返回至第一步.2)ROM 操作命令当主机收到DSl8B20的响应信号后,便可以发出ROM 操作命令之一,这些命令如下: 指令代码 Read ROM (读ROM ) [33H] Match ROM (匹配ROM )[55H]66 山 东 理 工 大 学 学 报 2004年 Skip ROM (跳过ROM )[CCH] Search ROM (搜索ROM )[F0H] Alarm search (告警搜索)[ECH]3)存储器操作命令(功能命令) 指令代码 Write Scratchpad (写暂存存储器) [4EH] Read Scratchpad (读暂存存储器)[B EH] Copy Scratchpad (复制暂存存储器)[48H] Convert Temperature (温度变换)[44H] Recall EPROM (重新调出)[B8H] Read Power supply (读电源)[B4H]2.2 操作时序其工作时序包括初始化时序、写时序和读时序,如图2所示[3].(a )初始化时序(b )写时序(c )读时序图2 DS18B20工作时序图3 DS18B20与AVR 单片机的接口A TM EL 公司把51内核与其擅长的FLASH 制造技术相结合,推出可重复擦写1000次以上低功耗的89C51/52/1051/2051等产品,取代其它8751系列,称霸单片机市场数年.1997年由A 及V 先生共同研发RISC (Reduced Instruction Set CPU )单片机,简称AVR.AVR 单片机吸取PIC 及8051单片机的76第2期 赵明波,等:单总线数字温度传感器与AVR 单片机接口技术及应用优点,并作了重大改进.图3 DS18B20与AVR 单片机接口原理图AVR 单片机片内程序存储器采用Flash 存储器,可反复编程修改上千次,便于新产品开发;程序高度保密,避免非法窃取;速度快,大多数指令仅用1个晶振周期;能采用C 语言编程,从而能高效快速发出目标产品;CMOS 工艺生产,功耗低;有主电源3V 以下的品种,进一步降低功耗,一般只需几mA ;还有多种低功耗方式,在掉电方式下,工作电流小于1uA ;计数器/定时器C/T 有8位和16位,可作比较器,计数器外部中断和PWM (也可当D/A )用于控制输出;有串行异步通讯UAR T ,不占用定时器和SPI 传输功能,因其高速故可以工作在一般标准整数频率,而波特率可达576K.A T90S8515内部程序存储器为8K B ,数据存储器为512B ,另外还有EEPROM 存储器512B ,在该系统中几乎不需要任何外部附加电路即可构成单片机最小系统.[4]由于DS18B20工作在单总线方式,其硬件接口非常简单,仅需利用系统的一条I/O 线与DS18B20的数据总线相连即可,如图3所示[3],因此本文重点介绍DS18B20与AVR 单片机的软件接口技术.以下为DS18B20在A T90S8515中的应用程序.应用中应根据实际晶振调整延迟时间.3.1 初始化及读、写子程序初始化子程序流程图见图4. IN IT : ;初始化子程序 SB I DDRA ,B20D ;将数据线B20D 拉低 LDI R16,180;并延时约500μs RCALL D TB20 CB I DDRA ,B20D;释放B20D 信号(即将PINB7引脚拉高) LDI R16,1;调延时子程序约3μs RCALL D TB20 SB IS PINA ,B20D RJ MP IN IT;若释放3μs 后数据线还没变高则重启或报错IN IT1:SB IC PINA ,B20DRJ MP IN IT1LDI R16,18RCALL D TB20IN IT2:SB IS PINA ,B20DRJ MP IN IT2LDI R16,100RCALL D TB2086 山 东 理 工 大 学 学 报 2004年 RET图4 初始化流程框图W -18B20: ;写18B20子程序LDI R18,8CLCW -B201:CB I DDRA ,B20D;将数据线拉高LDI R16,1;约3μs RCALL D TB20SB I DDRA ,B20D ;将数据线拉低产生;写信号下降沿LDI R16,3;拉低约433=12μs RCALL D TB20ROR R17;将发送数据低位移到 ;进位位发送BRCC W -B202CB I DDRA ,B20D ;将数据线拉高 W -B202:LDI R16,16 ;发送位延时约;1533=45μs RCALL D TB20DEC R18BRN E W -B201CB I DDRA ,B20D;将数据线拉高RETR -18B20: ;读18B20子程序LDI R18,$80R -B201:CB I DDRA ,B20D;将数据线拉高LDI R16,1;拉高约3μs RCALL D TB20SB I DDRA ,B20D;将数据线拉低产生;读信号下降沿NOPCB I DDRA ,B20D;将数据线拉高LDI R16,3RCALL D TB20SECSB IS PINA ,B20DCLCROR R18LDI R16,25RCALL D TB20BRCC R-B20196第2期 赵明波,等:单总线数字温度传感器与AVR 单片机接口技术及应用CB I DDRA ,B20D;将数据线拉高RETD TB20:NOP ;延时子程序每循环约3μs ……RET3.2 读出DS 18B 20的序列号应用程序调试中也可以用此程序测试DS18B20的初始化及读、写子程序是否正确. wd : ;读出DS18B20的序列号,晶振8M.EQU B20D =7;DS18B20的数据线(接A 口的PA7)CL I B20:RCALL IN IT;18B20初始化 LDI R17,$33 ;读ROM (序列号)命令 RCALL W -18B20LDI xL ,$A0RCALLR -18B20ST X +,R18RCALLR -18B20ST X +,R18RCALLR -18B20ST X +,R18RCALLR -18B20ST X +,R18RCALLR -18B20ST X +,R18RCALLR -18B20ST X +,R18RCALLR -18B20ST X +,R18RCALLR -18B20ST X +,R18SEIRET 3.3 获取单个DS 18B 20转化的温度值应用程序 WD2: ;获取单个DS18B20转化的温度值,晶振8M.EQU B20D =7;DS18B20的数据线(接A 口的PA7)CL I;关中断RCALL IN IT;18B20初始化LDI R17,$CC;跳过内部ROM 命令RCALL W -18B20 R -AD :LDI R17,$44;启动A/D 转换命令7 山 东 理 工 大 学 学 报 2004年 RCALL W -18B20RCALL IN IT;18B20初始化LDI R17,$CC;跳过内部ROM 命令RCALL W -18B20 LDI R17,$B E;读RAM 命令RCALL W -18B20RCALL R -18B20;读出温度的低字节并暂存LDI XL ,$ABST -X ,R18RCALL R -18B20;读出温度的高字节并暂存ST -X , R18SEI;开中断RET3.4 多路测量每一片DSl8B20在其ROM 中都存有其唯一的48位序列号,在出厂前已写入片内ROM 中.主机在进入操作程序前必须用读ROM (33H )命令将该DSl8B20的序列号读出.当主机需要对众多在线18B20的某一个进行操作时,首先要发出匹配ROM 命令(55H ),接着主机提供64位序列(包括该18B20的48位序列号),之后的操作就是针对该DSl8B20的.而跳过ROM 命令,即为之后的操作是对所有DSl8B20的.程序可以先跳过ROM ,启动所有DSl8B20进行温度变换,之后通过匹配ROM ,再逐一地读回每个DSl8B20的温度数据.在DSl8B20组成的多点测温系统中,主机在发出跳过ROM 命令之后,再发出统一的温度转换启动码44H ,就可以实现所有DSl8B20的统一转换.再经过1s 后就可以用很少的时间去逐一读取.这种方式使其时间值往往小于传统方式(由于采取公用的放大电路和AD 转换器,只能逐一转换).显然通道数越多这种省时效应就越明显.4 结束语我们已成功地将DS18B20应用于所开发的“锅炉测控系统”及“充电器测控系统”中,其转换精度高,抗干扰能力强,使用时无需标定或调试;与微处理器的接口简单,可方便地实现多点组网测温,给硬件设计工作带来了极大的方便.另外采用DS18B20能有效地降低成本,简化系统设计,缩短开发周期,占用系统I/O 资源少、扩展方便,在多点温度检测中将有极为广泛的应用前景.参考文献:[1]Dallas Corp.DS18B20[EB/OL ].http :// ,2003209211.[2]Maxim 公司.12Wire 单总线的基本原理[EB/OL ].http ://www.maxim /article/1-wire.pdf ,20032092.[3]马云峰,陈子夫,李培全.数字温度传感器DS18B20的原理与应用[EB/OL ].http :///dzkw/200221/9.htm ,2002201212/2003209226.[4]耿德根,宋建国,马 潮,等.AVR 高速嵌入式单片机原理与应用[M ].北京:北京航空航天大学出版社,2001.17第2期 赵明波,等:单总线数字温度传感器与AVR 单片机接口技术及应用。