温度传感器I2C的总线应用及设计

嵌入式ARM 2018-04-07 07:11 次阅读

问题与解答:

*linux自带的驱动怎么用的?

看lm75.c的代码,发现此温度传感器用的是I2C的总线。代码中看到i2c驱动的接口定义如下,和以前做过的字符型驱动的接口不一样。

在linux Device Driver这本书中搜,在此书中无介绍。

www.linuxjournal.com/article/7136,www.linuxjournal.com/article/7252讲得还不错。尤其是后者对路。I2C在读主板上的传感器的应用上应用比较多,但它是在比较新的版本的LINUX内核版本中才加进来的,难怪LDD这本书中没有讲了。

再看上面数据结构中的回调函数,具体干什么就比较清楚了。根据函数内容得知,驱动在加载的时候会自动检测I2C总线上的设备,因此会自动发现温度传感器。lm75_update_device()是对温度传感器进行轮询读数时用的函数。

根据文章指引,看设备的/sys/bus/i2c/。下面已经有了lm75传感器的数据,直接读是有数据的,而且数据会变化,如下:

root:~# cat /sys/bus/i2c/devices/0-0048/temp1_input-31500

*读数为负。什么样的读数才是正常的?在驱动代码里增加了调试信息,打印出传感器上读的寄存器的值,和文件系统上读出的不一样。

看 linux-2.6.20.21/Documentation/hwmon/lm75,了解到lm75是一个工业标准。所以linux里的lm75驱动是支持多种温度传感器的。

看了一下板子上的芯片,是lm75A.在网上下载了一个datasheet,上面显示一共9-bit来控制读数。头位为正负,后面8-bit为值。

在驱动代码里添加调试信息,只打印寄存器值的后8-bit,放到温度实验箱里测试的结果看起来满合理的。

然后把内核的lm75.h的代码修正(只读后面8个比特并根据大小判断正负),测试通过。


热门推荐

原文标题:实例讲解!嵌入式Linux下的I2C温度传感器的应用

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式ARM】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

使用I2C作为通信通道的自举程序的实现的详细中文资料概述

新的PIC16F1XXX增强型内核单片机能够在软件控制下写入自己的程序存储器。这允许单片机在闪存程序....

发表于 06-15 10:27 12次 阅读
使用I2C作为通信通道的自举程序的实现的详细中文资料概述

使用C语言和硬件模块实现8051MCU与I2C串行EEPROM的接口的资料概述

Microchip Technology 的 24XXX 系列串行 EEPROM 支持双向 2 线总....

发表于 06-15 08:27 13次 阅读
使用C语言和硬件模块实现8051MCU与I2C串行EEPROM的接口的资料概述

SHT30-31-35温湿度传感器模块全套资料免费下载

本文档的主要内容介绍的是SHT30-31-35温湿度传感器模块全套资料免费下载包括了;3系保护壳,C....

发表于 06-15 08:00 20次 阅读
SHT30-31-35温湿度传感器模块全套资料免费下载

PCA9306双向I2C总线和SMBus电压电平转换器的详细资料概述

PCA9306是一种双双向I2C总线和SMBus电压电平转换器,具有使能(EN)输入,并且从1 V到....

发表于 06-15 08:00 11次 阅读
PCA9306双向I2C总线和SMBus电压电平转换器的详细资料概述

stm32的总线AMBA、AHB、APB

系统中的各个模块之间相互通信是通过总线,总线的作用,就是把数据和地址从设备A搬运到设备B上。

发表于 06-14 10:13 59次 阅读
stm32的总线AMBA、AHB、APB

请问i2c_loopback_m3例程下载到M3核后如何验证程序跑的正常与否呢?

发表于 06-13 10:46 30次 阅读
请问i2c_loopback_m3例程下载到M3核后如何验证程序跑的正常与否呢?

本文档介绍如何使用PICkitTM串行分析器来操作MCP4728评估板的概述

MCP4728 评估板包含一枚 MCP4728 器件 (4 通道 12 位数模转换器)、连接 PIC....

发表于 06-13 10:27 14次 阅读
本文档介绍如何使用PICkitTM串行分析器来操作MCP4728评估板的概述

如何使用44引脚演示板开发工具在目标电路板上仿真和调试固件的概述

PMBus 是一种开放式标准协议,业界将其定义为一种与电源转换器和其他设备进行通信的方式,从而创立了....

发表于 06-13 09:27 12次 阅读
如何使用44引脚演示板开发工具在目标电路板上仿真和调试固件的概述

请问如何才能成功进行I2C Boot?怎么操作?

发表于 06-13 05:44 17次 阅读
请问如何才能成功进行I2C Boot?怎么操作?

8位PIC单片机上的温度传感器模块工作原理以使用的详细资料概述

有些应用需要测量单片机的内部温度。要确保单片机在热降额限值范围内工作,监视其内部温度十分有用。在封闭....

发表于 06-12 11:27 22次 阅读
8位PIC单片机上的温度传感器模块工作原理以使用的详细资料概述

8位PIC单片机上具有硬件协议加速功能的I2C其特性和基本功能的概述

在图 1 中,控制单元包含用于主 / 从工作模式的主器件模块和从器件模块以及用于监视模块状态的中断控....

发表于 06-12 09:28 22次 阅读
8位PIC单片机上具有硬件协议加速功能的I2C其特性和基本功能的概述

MCP9800温度传感器PICtail演示板的详细中文资料概述

MCP9800 温度传感器 PICtail 演示板也可以做为单独的模块,快速地在现有的应用中增加温度....

发表于 06-12 09:27 13次 阅读
MCP9800温度传感器PICtail演示板的详细中文资料概述

如何将MCP2210评估工具包作为开发工具使用的详细中文资料概述

本文档介绍如何将 MCP2210 评估工具包作为开发工具使用。 CP2210 评估工具包 (ADM....

发表于 06-11 17:28 18次 阅读
如何将MCP2210评估工具包作为开发工具使用的详细中文资料概述

LoRa传感云技术应用于室内温湿度监测实验

发表于 06-11 14:37 123次 阅读
LoRa传感云技术应用于室内温湿度监测实验

MGC3030和MGC3130 GestIC库的详细中文资料介绍

本文档介绍了 MGC3030/3130 GestIC 库 用途本文档是 MGC3X30 的 Ges....

发表于 06-11 09:28 10次 阅读
 MGC3030和MGC3130 GestIC库的详细中文资料介绍

请问I2C总线回环模式时从机无法接收数据是什么原因?如何解决?

发表于 06-11 04:17 31次 阅读
请问I2C总线回环模式时从机无法接收数据是什么原因?如何解决?

TM4c123x I2C配置信息解析

发表于 06-11 02:18 36次 阅读
TM4c123x I2C配置信息解析

请问采集卡连接了温度传感然后用DAQ助手进行运行显示的数据是温度的实际值吗?

发表于 06-10 18:43 159次 阅读
请问采集卡连接了温度传感然后用DAQ助手进行运行显示的数据是温度的实际值吗?

18b20温度传感器做的51水温检测系统

发表于 06-10 17:39 156次 阅读
18b20温度传感器做的51水温检测系统

大佬们能帮我看看,温度控制系统,proteus仿真不正常,大佬们帮帮忙,我的论文啊~

发表于 06-08 21:08 118次 阅读
大佬们能帮我看看,温度控制系统,proteus仿真不正常,大佬们帮帮忙,我的论文啊~

MCP9902温度传感器评估板的介绍和应用的详细资料概述

本文档介绍了如何使用 MCP9902 温度传感器评估板作为开发工具在目标电路板上仿真和调试固件。 ....

发表于 06-08 15:28 29次 阅读
MCP9902温度传感器评估板的介绍和应用的详细资料概述

总结一些在LwIP移植的时候体会

之前做了很多linux驱动开发,也了解到RT-Thread是类linux的一种RTOS,也怪自己太直....

的头像 电子发烧友网 发表于 06-08 09:33 733次 阅读
总结一些在LwIP移植的时候体会

MCP9902远程温度传感器

本视频将通过2通道温度传感器MCP9902向大家介绍Microchip提供的远程温度传感器功能。

的头像 EE techvideo 发表于 06-07 13:46 81次 观看
MCP9902远程温度传感器

Microchip温度传感器系列产品

Microchip是业界能提供最丰富温度传感器产品的供应商之一。本视频就Microchip各类温度传....

的头像 EE techvideo 发表于 06-07 13:46 154次 观看
Microchip温度传感器系列产品

I2C信号一般需要外接上拉电阻,如果主控内部有上拉电阻,是否可以省略外部上拉?

发表于 06-07 10:01 277次 阅读
I2C信号一般需要外接上拉电阻,如果主控内部有上拉电阻,是否可以省略外部上拉?

液晶显示模块RSCG12864和U-PD2使用手册以及字符编码应用程序免费下载

本文档的主要内容介绍的是液晶显示模块RSCG12864和U-PD2使用手册以及字符编码-CN应用程序....

发表于 06-07 08:00 41次 阅读
液晶显示模块RSCG12864和U-PD2使用手册以及字符编码应用程序免费下载

MPLAB代码配置器实验5

数字电源入门工具包(Digital Power Starter Kit,产品编号:DM330017)....

的头像 EE techvideo 发表于 06-06 13:46 130次 观看
MPLAB代码配置器实验5

PIC32用于同其他外设或单片机器件进行通信的串行接口的I2C模块的概述

I 2C™模块是用于同其他外设或单片机器件进行通信的串行接口。这些外设可以是串行EEPROM、显示驱....

发表于 06-06 13:29 33次 阅读
PIC32用于同其他外设或单片机器件进行通信的串行接口的I2C模块的概述

请问如何使用CC1310的硬件I2C去驱动一个地磁传感器?

发表于 06-06 02:58 26次 阅读
请问如何使用CC1310的硬件I2C去驱动一个地磁传感器?

PCIe总线中的链路初始化与训练

前面的文章中介绍过,PCIe收发的都是差分信号,有的时候Link两端的设备的对应信号的极性可能是相反....

的头像 电子技术应用ChinaAET 发表于 06-05 09:06 274次 阅读
PCIe总线中的链路初始化与训练

STM32F030中I2C 的配置和 AT24C16驱动

I2C_AutoEnd_Mode,顾名思义,操作length字节后自动添加STOP。 I2C_Sof....

发表于 06-04 07:34 98次 阅读
STM32F030中I2C 的配置和 AT24C16驱动

MSP430硬件I2C实现 SMBus 源程序

MSP430硬件I2C实现 SMBus 源程序。

发表于 05-29 09:13 44次 阅读
MSP430硬件I2C实现 SMBus 源程序

三分钟带你了解MSP430F249硬件I2C查询法读写AT24C02

必须注意多字节数据读取时,发送停止位需要在最后一个字节读取之前否则数据读取后,停止位发送容易失败,导....

发表于 05-27 11:16 179次 阅读
三分钟带你了解MSP430F249硬件I2C查询法读写AT24C02

I2C基本的传输方式知识整理

当I2C不工作时,SDA和SCL一样都处于高位HIGH,SCL保持为HIGH,SDA由HIGH变LO....

的头像 嵌入式ARM 发表于 05-25 15:09 553次 阅读
I2C基本的传输方式知识整理

PCIe总线实现了一种叫做Quality of Service(QoS)的机制

PCIe驱动程序(配置软件)通过修改VC资源控制寄存器(VC Resource Control Re....

的头像 电子技术应用ChinaAET 发表于 05-25 09:21 472次 阅读
PCIe总线实现了一种叫做Quality of Service(QoS)的机制

深度剖析RS-485组网问题及总线测试

RS-485总线优点众所皆知,并且为保证通信的稳定性,都会使用隔离RS-485模块进行信号隔离。但在....

的头像 ZLG致远电子 发表于 05-25 09:08 1494次 阅读
深度剖析RS-485组网问题及总线测试

LM48557 Boomer 单桥,桥绑负载,陶瓷扬声器驱动器与I2C音量控制和复位

LM48557的高级点击和POP抑制消除了电源上/下和关机期间的可听瞬变。

发表于 05-24 10:37 76次 阅读
LM48557 Boomer 单桥,桥绑负载,陶瓷扬声器驱动器与I2C音量控制和复位

Flow Control机制可以显著地提高总线的传输效率

PCIe Spec规定,PCIe设备的每一个端口(Ports)都必须支持Flow Control机制....

的头像 电子技术应用ChinaAET 发表于 05-24 09:26 356次 阅读
Flow Control机制可以显著地提高总线的传输效率

PCIe总线必须要先完成Flow Control初始化

由于VC0是默认使能的,所以当Flow Control初始化开始时,其会被自动的初始化。其他的Vir....

的头像 电子技术应用ChinaAET 发表于 05-24 09:18 475次 阅读
PCIe总线必须要先完成Flow Control初始化

LM48824 G类耳机放大器的I2C音量控制

该LM48824是一个G类,地面参考立体声耳机放大器设计的便携式设备。

发表于 05-24 08:55 49次 阅读
LM48824 G类耳机放大器的I2C音量控制

用于功率晶体管的AN-446A动态安全区域保护采用峰值温度限制

通过限制其峰值结温度可以为大功率晶体管提供安全区域保护。

发表于 05-23 14:57 35次 阅读
用于功率晶体管的AN-446A动态安全区域保护采用峰值温度限制

Microchip EMC118x系列温度传感器的简单介绍

EMC118x系列温度传感器是针对最新智能手机/平板/电脑芯片组的温度传感器,兼容1.8V SMBu....

的头像 EE techvideo 发表于 05-23 14:47 431次 观看
Microchip EMC118x系列温度传感器的简单介绍

1999年八月模拟应用学报

模数转换器(ADC)和数模转换器(DAC)在数据采集系统的设计中起着重要的作用。

发表于 05-23 08:37 38次 阅读
1999年八月模拟应用学报

凌力尔特 温度监视器产品在仪器仪表方面的应用

热管理是系统设计的关键部分。 FPAG 和处理器通常需要散热器和风扇,当出现某些故障情况 (风扇停转....

的头像 EE techvideo 发表于 05-22 13:44 908次 观看
凌力尔特 温度监视器产品在仪器仪表方面的应用

TLV320AIC12/13/14/15 勘误表

当设备的编程模式改变为除I2C模式以外的任何模式时,设备失去同步。

发表于 05-22 11:16 41次 阅读
TLV320AIC12/13/14/15 勘误表

TAS5518C 勘误表

如果在连续的I2C操作中更新DRC1控制寄存器(0x96)和DRC2控制寄存器(0x97)的值,则可....

发表于 05-22 10:46 36次 阅读
TAS5518C 勘误表

TAS5414/24 I2C的读写错误

如果发生以下两种情况,I 2 C状态机都会发生争用条件: 1.SCL的上升沿和振荡器时钟的上升沿对....

发表于 05-22 10:16 48次 阅读
TAS5414/24 I2C的读写错误

小外形精确LMT70模拟温度传感器设计

技术进步已允许将温度传感器集成电路(IC)用于人体温度测量(常见于可佩戴式保健带和医疗设备中)等精密....

的头像 电子设计 发表于 05-22 09:08 971次 阅读
小外形精确LMT70模拟温度传感器设计

详解SiP1205和SiP11206的中间总线转换器

中间总线电源架构正在迅速受到人们的青睐。根据Darnell Group的研究,预计未来几年中间总线转....

发表于 05-22 07:18 139次 阅读
详解SiP1205和SiP11206的中间总线转换器

单总线制多机通讯系统的总线设计

本设计实现的多机呼叫系统的主要功能是:分机呼叫主机,利用单片微机向主机发送数字呼叫信息,主机响应后,....

发表于 05-22 06:12 121次 阅读
单总线制多机通讯系统的总线设计

10个任何人都可以做的Arduino项目!

在规划阶段,您只需要一个电源、像Arduino Pro micro 5v这样的微控制器和两个组件:P....

的头像 玩转单片机 发表于 05-21 17:25 1686次 阅读
10个任何人都可以做的Arduino项目!

TI芯片LM20于远程系统的小型温度传感器的应用

这些曲线将硅温度传感器的温度传递函数与NTC热敏电阻的电压传递函数进行比较。热敏电阻的非线性可以用查....

发表于 05-21 10:24 42次 阅读
TI芯片LM20于远程系统的小型温度传感器的应用

消息总线和消息队列的区别是什么?

消息队列的clientAPI大都面向协议、通信实现,面向可用性以及高性能,如果归类一下那就是面向技术....

发表于 05-21 10:18 259次 阅读
消息总线和消息队列的区别是什么?

总线的含义是什么?又有什么特性?

Altium Content团队很高兴地向您宣布,我们发布了1850个新元件,从而更新了FTDI目录....

发表于 05-21 10:18 228次 阅读
总线的含义是什么?又有什么特性?

一文详解存储器访问和总线

这一篇主要来介绍存储区,总线,以及IO设备等其他几大组件,来了解整个计算机是如何工作的。 这些东西都....

发表于 05-21 07:18 209次 阅读
一文详解存储器访问和总线

认识一下这款名叫“CAN总线存储器”的神器

CAN总线数据不能及时查看怎么办?CAN总线数据过多没时间处理怎么办?想要回看CAN总线历史数据又怎....

的头像 广成CAN总线 发表于 05-20 08:08 1538次 阅读
认识一下这款名叫“CAN总线存储器”的神器

一种利用两种不同温度系数材料来实现温度传感器的技术的概述

传统的嵌入式温度传感器利用三极管和 ADC 来实现,本文提出了一种利用两种不同温度系数材料作为传感,....

的头像 集成电路应用杂志 发表于 05-19 10:33 736次 阅读
一种利用两种不同温度系数材料来实现温度传感器的技术的概述

用于远程系统的微型模拟输出温度传感器的详细资料概述

LM20、LM45、LM50、LM60、LM61和LM62都是模拟输出温度传感器。它们具有不同的输出....

发表于 05-18 17:29 44次 阅读
用于远程系统的微型模拟输出温度传感器的详细资料概述

通过I2C主控软件实现TSP60250的MSP430接口

TPS60250是一种高效率、恒频电荷泵DC/DC转换器,它可以驱动多达五个白色LED用于主显示器和....

发表于 05-18 14:33 38次 阅读
通过I2C主控软件实现TSP60250的MSP430接口