3个版本 (1个稳定版)
1.0.0 | 2024年4月29日 |
---|---|
0.1.1 | 2023年12月11日 |
0.1.0 | 2020年7月19日 |
#234 in 硬件支持
每月22次下载
19KB
223 行
Rust MAX170xx 1-Cell/2-Cell 燃料电池驱动程序
这是一个平台无关的Rust驱动程序,用于便携式和手持式设备中锂离子(Li+)电池的超紧凑、低成本主机端燃料电池系统,使用embedded-hal
特性。
它与MAX17043、MAX17044、MAX17048、MAX17049、MAX17058和MAX17059兼容。
此驱动程序允许您
- 获取状态电量。见:
soc()
。 - 获取电池电压。见:
voltage()
。 - 软件复位。见:
reset()
。 - 快速入门。见:
quickstart()
。 - 获取IC版本。见:
version()
。 - 仅在MAX17048/MAX17049上
- 获取充电/放电速率。见:
charge_rate()
。
- 获取充电/放电速率。见:
- 仅在MAX17048/MAX17049/MAX17058/MAX17059上
- 设置表寄存器。见:
set_table()
。
- 设置表寄存器。见:
设备
这些设备是便携式和手持式设备中锂离子(Li+)电池的超紧凑、低成本主机端燃料电池系统。有单或双锂电芯组配置的型号。
这些设备使用一种复杂的锂离子电池建模方案,称为ModelGauge™,以跟踪电池在广泛变化的充电/放电曲线上的相对状态电量(SOC)。与传统燃料电池不同,ModelGauge算法消除了电池再学习周期和外部电流检测电阻的需求。应用中可以实现温度补偿,并且与μC和设备之间交互最小。
通信通过I2C接口完成。
数据表:MAX17043/MAX17044,MAX17048/MAX17049,MAX17058/MAX17059
使用方法
要使用此驱动程序,请导入此包和embedded_hal
实现,然后实例化设备。
请在此存储库中查找使用硬件的附加示例:driver-examples
use linux_embedded_hal::I2cdev;
use max170xx::Max17043;
fn main() {
let dev = I2cdev::new("/dev/i2c-1").unwrap();
let mut sensor = Max17043::new(dev);
loop {
let soc = sensor.soc().unwrap();
let voltage = sensor.voltage().unwrap();
println!("Charge: {:.2}%", soc);
println!("Voltage: {:.2}V", voltage);
}
}
支持
有关问题、问题、功能请求和其他更改,请在此github项目中提交问题。
最低支持的Rust版本(MSRV)
此包保证在稳定版Rust 1.62及更高版本上编译。它可能可以在较旧版本上编译,但可能会在任何新的补丁版本中更改。
许可证
许可如下
- Apache许可证第2版(LICENSE-APACHE或https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证(LICENSE-MIT或http://opensource.org/licenses/MIT)
任选其一。
贡献
除非您明确声明,否则任何有意提交以包含在您的工作中的贡献(根据Apache-2.0许可证定义),均应按上述方式双许可,不附加任何额外条款或条件。
依赖项
~56KB