4个版本 (1个稳定版)
1.0.0 | 2024年2月8日 |
---|---|
0.2.1 | 2021年1月25日 |
0.2.0 | 2019年3月17日 |
0.1.0 | 2018年10月27日 |
#1593 在 嵌入式开发
650 每月下载量
在 prometheus_sensors_export… 中使用
37KB
513 行
Rust TMP102和TMP112温度传感器驱动程序
这是一个适用于TMP102和TMP112高精度、低功耗数字温度传感器的平台无关Rust驱动程序,使用嵌入式-hal
特质。
此驱动程序允许您
- 切换到单次或连续转换模式。
- 读取温度。
- 启用/禁用扩展测量模式。
- 触发单次测量。
- 读取单次测量结果是否就绪。
- 设置转换率。
- 设置高温/低温阈值。
- 设置故障队列。
- 设置警报极性。
- 设置恒温器模式。
- 读取比较模式警报是否激活。
设备
此驱动程序与TMP102设备和TMP112系列设备兼容,包括TMP112A、TMP112B和TMP112N。
这些温度传感器具有高度线性,无需复杂计算或查找表即可推导出温度。片上12位ADC提供高达0.0625°C的分辨率。
TMP102设备是一个理想的数字温度传感器,适用于需要高精度的NTC/PTC热敏电阻替代品。该设备提供+/-0.5°C的精度,无需校准或外部组件信号调理。
TMP112系列设备是为需要高精度、低功耗NTC/PTC热敏电阻替代品而设计的数字温度传感器。TMP112A和TMP112B提供0.5°C精度,并分别针对3.3V和1.8V操作优化以提供最佳的PSR性能,而TMP112N提供1°C精度。
这些设备具有SMBus、两线和I2C接口兼容性,并允许在一个总线上连接多达四个设备。
数据手册
用法
请在此存储库中查找使用硬件的额外示例: driver-examples
use linux_embedded_hal::I2cdev;
use tmp1x2::{Tmp1x2, SlaveAddr};
fn main() {
let dev = I2cdev::new("/dev/i2c-1").unwrap();
let address = SlaveAddr::default();
let mut sensor = Tmp1x2::new(dev, address);
let temperature = sensor.read_temperature().unwrap();
println!("Temperature: {:.1}ºC", temperature);
}
支持
有关问题、问题、功能请求和其他更改,请在github项目中提交问题。
许可证
许可协议为以下之一
- Apache License, Version 2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 协议 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
供您选择。
贡献
除非您明确声明,否则根据 Apache-2.0 许可证定义的,您有意提交的任何贡献,将按上述方式双许可,不附加任何额外条款或条件。
依赖
~68KB