#battery #gauge #fuel #embedded-hal-driver #lithium

no-std max170xx

适用于锂离子(Li+)电池的MAX170xx 1-Cell/2-Cell燃料电池系统(带有ModelGauge),平台无关的Rust驱动程序。兼容MAX17043、MAX17044、MAX17048 MAX17049、MAX17058和MAX17059

3个版本 (1个稳定版)

1.0.0 2024年4月29日
0.1.1 2023年12月11日
0.1.0 2020年7月19日

#234 in 硬件支持

每月22次下载

MIT/Apache

19KB
223

Rust MAX170xx 1-Cell/2-Cell 燃料电池驱动程序

crates.io Docs Build Status Coverage Status Minimum Supported Rust Version

这是一个平台无关的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/MAX17044MAX17048/MAX17049MAX17058/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.0许可证定义),均应按上述方式双许可,不附加任何额外条款或条件。

依赖项

~56KB