1 个不稳定版本
0.1.0 | 2023年2月3日 |
---|
#1211 在 嵌入式开发
14KB
278 行
MCP346x Sigma-Delta ADC
此crate包含一个针对MCP346[1/2/4] Sigma-Delta ADC的平台无关型驱动程序,使用embedded-hal
traits。
目前,您可以
- 初始化设备
- 配置输入MUX和IRQ拉起
- 设置转换或掉电模式
- 获取测量值
文档
使用方法
单次测量
use mcp346x::*;
let spi_pins = (sck, miso, mosi);
let spi = Spi::new(p.SPI0, spi_pins, Frequency::K500, MODE_0);
let address = 0b01; // This is the default address for most chips
let mut adc = MCP346x::new(spi, address).into_continuous_mode()?;
adc.set_clock_source(mcp346x::ClockSource::Internal)?;
adc.set_irq_internal_pullup(true)?;
let voltage = adc.measure()?;
状态
- 初始化
- 掉电/唤醒/转换
- 进行测量
- 输入MUX配置
- SCAN模式
- 公开其他配置
- 通信CRC校验和
许可
许可协议为以下之一
- Apache License,版本2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义的,您有意提交的任何贡献,都应按上述方式双许可,不附加任何额外条款或条件。
依赖
~800KB
~17K SLoC