转载:http://blog.csdn.net/ayangke/article/details/6883244

作者:冯建,华清远见嵌入式学院讲师。

DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有 LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测 温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领 域。

技术性能描述

1. 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 
        2. 测温范围 -55℃~+125℃,固有测温分辨率0.5℃。 
        3. 支持多点组网功能,多个DS18B20可以并联在唯一的三线上。
        4. 工作电源: 3~5V/DC 
        5. 在使用中不需要任何外围元件 
        6. 测量结果以9~12位数字量方式串行传送

aaarticlea/png;base64,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" alt="" />

DS18B20 引脚功能: GND 电压地 •DQ 单数据总线 •VDD 电源电压 •NC 空引脚

aaarticlea/png;base64,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" alt="" />

DS18B20 工作原理及应用

DS18B20 的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工作周期可分为两个部分,即温度检测和数据处理。在讲解其工作流程之前我们有必要了解 18B20的内部存储器资源。18B20 共有三种形态的存储器资源。它们分别是:

ROM 只读存储器:

用于存放 DS18B20ID 编码,其前 8 位是单线系列编码(DS18B20 的编码是19H) ,后面48 位是芯片唯一的序列号,最后 8位是以上 56的位的 CRC码(冗余校验)。数据在出产时设置不由用户更改。DS18B20 共 64 位 ROM。

RAM 数据暂存器:

用于内部计算和数据存取,数据在掉电后丢失,DS18B20 共9 个字节 RAM,每个字节为 8 位。第1、2
个字节是温度转换后的数据值信息,第 3、4 个字节是用户 EEPROM(常用于温度报警值储存)的镜像。在上电复位时其值将被刷新。第 5
个字节则是用户第 3 个 EEPROM的镜像。第 6、7、8
个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是内部温度转换、计算的暂存单元。第 9 个字节为前 8个字节的
CRC码。EEPROM 非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,
DS18B20共3位EEPROM,并在 RAM 都存在镜像,以方便用户操作。

控制器对 18B20 操作流程:

1、 复位:首先我们必须对 DS18B20 芯片进行复位,复位就是由控制器(单片机)给 DS18B20单总线至少 480uS 的低电平信号。当 18B20 接到此复位信号后则会在 15~60uS 后回发一个芯片的存在脉冲。

2、 存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高,以便于在 15~60uS 后接收存在脉冲,存在脉冲为一个 60~240uS
的低电平信号。至此,通信双方已经达成了基本的协议,接下来将会是控制器与 18B20
间的数据通信。如果复位低电平的时间不足或是单总线的电路断路都不会接到存在脉冲,在设计时要注意意外情况的处理。

3、 控制器发送 ROM 指令:双方打完了招呼之后最要将进行交流了,ROM 指令共有 5条,每一个工作周期只能发一条,ROM指令分别是读
ROM 数据、指定匹配芯片、跳跃 ROM、芯片搜索、报警芯片搜索。ROM 指令为 8 位长度,功能是对片内的 64位光刻
ROM进行操作。其主要目的是为了分辨一条总线上挂接的多个器件并作处理。诚然,单总线上可以同时挂接多个器件,并通过每个器件上所独有的
ID号来区别,一般只挂接单个 18B20芯片时可以跳过 ROM 指令(注意:此处指的跳过 ROM指令并非不发送 ROM
指令,而是用特有的一条“跳过指令” )

4、 控制器发送存储器操作指令:在 ROM 指令发送给 18B20 之后,紧接着(不间断)就是发送存储器操作指令了。操作指令同样为 8
位,共 6 条,存储器操作指令分别是写 RAM 数据、读RAM 数据、将 RAM 数据复制到 EEPROM、温度转换、将
EEPROM中的报警值复制到 RAM、工作方式切换。存储器操作指令的功能是命令 18B20 作什么样的工作,是芯片控制的关键。

5、
执行或数据读写:一个存储器操作指令结束后则将进行指令执行或数据的读写,这个操作要视存储器操作指令而定。如执行温度转换指令则控制器(单片机)必须等
待 18B20 执行其指令,一般转换时间为 500uS。如执行数据读写指令则需要严格遵循 18B20 的读写时序来操作。

若要读出当前的温度数据我们需要执行两次工作周期,第一个周期为复位、跳过 ROM 指令、执行温度转换存储器操作指令、等待 500uS
温度转换时间。紧接着执行第二个周期为复位、跳过 ROM指令、执行读 RAM 的存储器操作指令、读数据(最多为 9
个字节,中途可停止,只读简单温度值则读前 2 个字节即可)。其它的操作流程也大同小异,在此不多介绍。

关于ds18b20的数据手册网上资源较为丰富,这里不再详细介绍,下面是基于ARM-LINUX的驱动程序,在arm-gcc 编译后测试通过。(华清远见原创,转载请注明出处)

#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/fs.h>
#include <linux/proc_fs.h>
#include <linux/errno.h>
#include <linux/cdev.h>
#include <linux/ioctl.h>
#include <linux/fcntl.h>
#include <linux/sched.h>
#include <linux/poll.h>
#include <linux/version.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/device.h>
#include <linux/mm.h>
#include <linux/spinlock.h>
#include <plat/map.h>
#include <asm/io.h>
#include <asm/delay.h>
#include <asm/memory.h>
#include <asm/uaccess.h>
#include <asm/mach/map.h>
#include <asm/uaccess.h>
#include <mach/regs-gpio.h>
#include <mach/map.h>
MODULE_LICENSE("GPL"); #define GPHCON (*(volatile unsigned int *)S3C2410_GPHCON)
#define GPHDAT (*(volatile unsigned int *)S3C2410_GPHDAT)
#define GPHUP (*(volatile unsigned int *)S3C2410_GPHUP) static int ds18b20_major = ; /*静态申请设备号*/ struct cdev cdev;
struct class *my_class; spinlock_t lock; dev_t dev = ;
int number_of_devices = ; /*配置为输入模式*/
void set_conIN(void)
{
GPHCON &= ~(<<);
GPHCON &= ~(<<);
} /*配置为输出模式*/
void set_conOUT(void)
{
GPHCON |= (<<);
GPHCON &= ~(<<);
} /*引脚置位*/
void set_data(int i)
{
if( i == ){
GPHDAT &= ~(<<);
}else if( i == ){
GPHDAT |= (<<);
}
} /*复位ds18b20*/
unsigned int reset_ds18b20(void)
{
unsigned int retValue;
set_conOUT(); set_data();
__udelay();
set_data();
__udelay();
set_data();
__udelay();
set_conIN();
__udelay();
/*稍做延时后 如果x=0则初始化成功
x=1则初始化失*/
retValue = (GPHDAT >> ) & 0x01;
printk("init is %d\n",retValue);
return retValue;
} /*读取一位温度*/
unsigned int read_bit(void)
{
spin_lock(&lock);
set_conOUT();
//set_data(1);
//__udelay(2);
set_data();
__udelay();
set_conIN();
__udelay();
spin_unlock(&lock);
return ((GPHDAT >> ) & 0x01);
} /*写一位命令*/
void write_bit(char bitValue)
{
spin_lock(&lock);
set_conOUT();
set_data();
__udelay();
if( bitValue == ){
set_data();
}else{
set_data();
}
spin_unlock(&lock);
__udelay();
set_conIN();
__udelay();
} /*写命令*/
void write_cmd(char cmd)
{
unsigned char i;
unsigned char temp; for(i=; i<;i++){
temp = cmd>>i;
temp &= 0x01;
write_bit(temp);
}
//__udelay(10);
}
/*打开设备*/
static int ds18b20_open(struct inode *inode,struct file *filp)
{
printk (KERN_INFO "HEY! device opened\n");
//GPHUP &= ~(1<<9);
GPHUP |= (<<);
spin_lock_init(&lock);
return ;
}
/*读取数据*/
static int ds18b20_read(struct file *filp, char *buffer, size_t count, loff_t *ppos)
{
char lowValue=,highValue=;
unsigned int i;
//float value; if(reset_ds18b20()){
printk("init error\n");
}
__udelay();
set_conOUT();
set_data();
write_cmd(0xCC);
write_cmd(0x44);
__udelay(); if(reset_ds18b20()){
printk("init error\n");
}
__udelay();
set_conOUT();
set_data();
write_cmd(0xcc);
write_cmd(0xBE);
/*读取温度转化数值*/ for(i=; i<; i++){
if( read_bit() ){
lowValue |= (0x01<<i);
}
__udelay();
}
printk("lowValue is %d\n",lowValue);
for(i=; i<; i++){
if( read_bit() ){
highValue |= (0x01<<i);
}
__udelay();
}
printk("highValue is %d\n",highValue);
#if 0
i = highValue;
i <<= ;
i = i|lowValue;
value = i*0.0625;
printk("kernel is %d\n",value);
#endif highValue <<= ;
highValue |= ((lowValue&0xf0)>>) ; /*拷贝内核数据到用户空间*/
copy_to_user(buffer, &highValue, sizeof(highValue));
return ;
}
/*写命令,在此置空*/
static int ds18b20_write(struct file *file, const char *buffer, size_t count, loff_t * ppos)
{
return ;
} static int ds18b20_release(struct inode *inode,struct file *filp)
{
printk (KERN_INFO "device closed\n");
return ;
} static int ds18b20_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg)
{
return ;
} struct file_operations ds18b20_fops ={
.owner = THIS_MODULE,
.open = ds18b20_open,
.read = ds18b20_read,
.write = ds18b20_write,
.ioctl = ds18b20_ioctl,
.release = ds18b20_release,
};
static void ds18b20_setup_cdev(void)
{
int error,devno = MKDEV(ds18b20_major,);
cdev_init(&cdev,&ds18b20_fops);
cdev.owner = THIS_MODULE;
cdev.ops = &ds18b20_fops;
error = cdev_add(&cdev,devno,);
if( error )
printk(KERN_INFO"Error %d adding ds18b20 %d\n",error,);
my_class = class_create(THIS_MODULE,"my_class");
if(IS_ERR(my_class))
{
printk("Err: failed in creating class.\n");
return;
}
device_create(my_class,NULL,devno,NULL,"ds18b20");
}
/*注册设备*/ static int ds18b20_init(void)
{
int result; dev = MKDEV(ds18b20_major,);
if(ds18b20_major)
result = register_chrdev_region(dev,,"ds18b20");
else{
result = alloc_chrdev_region(&dev,,,"ds18b20");
ds18b20_major=MAJOR(dev);
}
if( result < ){
printk(KERN_WARNING"ds18b20:unable to get major %d\n",ds18b20_major);
return result;
}
if(ds18b20_major == )
ds18b20_major = result; ds18b20_setup_cdev();
printk("ds18b20 initialized.\n");
return ;
} static void __exit ds18b20_exit(void)
{
dev_t devno = MKDEV (ds18b20_major, );
device_destroy(my_class,devno);
class_destroy(my_class);
cdev_del (&cdev);
unregister_chrdev_region (devno, number_of_devices); printk("ds18b20_major=%d\n",ds18b20_major);
printk("ds18b20 device uninstalled\n");
} module_init(ds18b20_init);
module_exit(ds18b20_exit);

基于ARM-LINUX的温度传感器驱动-DS18B20的更多相关文章

  1. golang 2行代码在基于arm linux的树莓派、orangepi上运行http web服务

    go语言(golang)简化了跨平台交叉编译步骤,支持在windows系统下交叉编译基于arm+linux平台的应用,运行时无需其它依赖库.以下以一个简单的http server为例,先上源码: ** ...

  2. 基于CC2530/CC2430 的温度采集系统--DS18B20

    DS18B20是常用的温度传感器.CC2530 采集DS18B20 可以实现温度采集系统等等. 模块链接:https://item.taobao.com/item.htm?id=54130861732 ...

  3. 编译基于ARM LINUX的驱动模块的Makefile

    KERNELDIR =/home/wenhao/platform/linux-2.6.34PWD := $(shell pwd)CROSS_COMPILE = /usr/local/arm/4.3.2 ...

  4. 智能开关:orange pi one(arm linux)控制继电器

    大家都知道,继电器是用小电流去控制大电流运作的一种“自动开关”,在我们生活.工作中随处可见.现在的“智能家居”概念,有很多功能模块其实就是“智能开关”,远程开关.定时开关.条件触发开关等等. 下面介绍 ...

  5. learning docker steps(9) ----- arm linux docker 安装

    参考:https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce-1 想要在arm linux上安装docker ...

  6. ARM Linux驱动篇 学习温度传感器ds18b20的驱动编写过程

    ARM Linux驱动篇 学习温度传感器ds18b20的驱动编写过程 原文地址:http://www.cnblogs.com/NickQ/p/9026545.html 一.开发板与ds18b20的入门 ...

  7. 浅析基于ARM的Linux下的系统调用的实现

    在Linux下系统调用是用软中断实现的,下面以一个简单的open例子简要分析一下应用层的open是如何调用到内核中的sys_open的. t8.c 1: #include <stdio.h> ...

  8. 【miscellaneous】【ARM-Linux开发】ARM平台基于嵌入式Linux Gstreamer 使用

    1). 简介 随着ARM平台性能的日益强大和嵌入式设备的发展,对于多媒体处理如音视频播放,摄像头,流媒体处理等需求也日益增多,本文就通过几个基于嵌入式Linux下多媒体应用的示例来简单展示下使用Gst ...

  9. 【DSP开发】【Linux开发】基于ARM+DSP进行应用开发

    针对当前应用的复杂性,SOC芯片更好能能满足应用和媒体的需求,集成众多接口,用ARM做为应用处理器进行多样化的应用开发和用户界面和接口,利用DSP进行算法加速,特别是媒体的编解码算法加速,既能够保持算 ...

随机推荐

  1. 【转】17种常用的JS正则表达式 非负浮点数 非负正数.

    <input type='text' id='SYS_PAGE_JumpPage' name='SYS_PAGE_JumpPage' size='3' maxlength='5' onkeyup ...

  2. github上所有项目的受欢迎程度排名,包括超大型项目

    直接打开如下网址: https://github.com/search?l=Java&q=+stars%3A%3E0&ref=searchresults&type=Reposi ...

  3. CentOS7 network

  4. InfiniBand

    Mellanox InfiniBand卡线缆性能延迟性测试程序源码,C源码实现操作mysql库,实现简单的增删改查,代码当前用的是增插入20000条数据 具体见源码 #include <mysq ...

  5. 第二百一十一天 how can i 坚持

    参与感.做项目要有激情. 睡觉.

  6. Codeforces Round #368 (Div. 2) C. Pythagorean Triples(数学)

    Pythagorean Triples 题目链接: http://codeforces.com/contest/707/problem/C Description Katya studies in a ...

  7. java 常用concurrent类

    1.CountDownLatch 它的作用主要是当多个(数量等于初始化CountDownLatch时count参数的值)线程到达了预期状态或完成预期工作时触发事件,其他线程可以等待这个事件来触发自己后 ...

  8. USB的四种传输类型

    USB协议规定了4种传输类型:批量(bulk)传输,等时传输(同步传输),中断传输和控制传输.

  9. 用keyword实现Editor.GetSelection的退出功能

    有时候我们在使用 GetSelection 功能让用户选择实体时,可能会给用户提供一些 keyword 选项,要接收用户选择的 keyword 选项,需要用到 PromptSelectionOptio ...

  10. thinkphp,ajax返回结果

    thinkphp 在Action中 利用dump输出的是<pre>success</pre> 利用echo输出的是 success 1.html eventResize: fu ...