我正在寻找Raspberry Pi上ADC的选项。我想知道到目前为止有什么可能。当然简单又便宜是好的。

评论

您需要它做什么?

@Jivings,我正在考虑几个可以用相对较低的采样率实现的项目。

#1 楼

Adafruit有一个很好的教程,介绍如何使用MCP3008($ 3.75)-具有SPI接口的8通道10位ADC控制mp3文件的音量,但它应该为您提供任何模拟到数字项目的良好起点。 />

评论


Arduino和PICAXE都是错误的解决方案。

–亚历山大·张伯伦
2012年7月26日19:40

我不同意Arduino是这里的错误解决方案。 Arduino使用USB,而MCP3008使用SPI。 Arduino已准备就绪,可以立即使用,而MCP3008将需要一些附件并开始工作。 MCP3008较便宜,但是到您添加所需的所有东西时(GPIO断开,安装面包板..),成本差距并没有看上去的那么大。总而言之,如果您想进行实验并快速转向Arduino,则是更好的选择,但是如果您要永久安装,我同意MCP3008的最佳性能。

– Dan B
2012年7月27日在14:58

#2 楼

ADS1115


ADS1113,ADS1114和ADS1115是具有16位分辨率的精密模数转换器(ADC),具有超小尺寸,无铅QFN-10封装或MSOP-10封装。
ADS1113 / 4/5在设计时考虑了精度,功耗和易于实现的问题。 ADS1113 / 4/5具有一个板载基准电压源和振荡器。数据通过I²C兼容串行接口
进行传输;可以选择四个I²C从地址。 ADS1113 / 4/5
用2.0V至5.5V的单电源供电。


首先,您需要确保I²C模块已加载。接下来,如下图所示连接ADS1115。取决于连接到哪个引脚的ADDR,可能有4种不同的地址。这意味着您总共可以将16个通道连接到一条I²C总线。

GND = 0x48,VDD = 0x49,SDA = 0x4A,SCL = 0X4B



您可以看到上一次转换的结果,如下所示

# i2cget -y 0 0x49 0 w
0x0000


由于尚未执行任何转换,因此此处返回默认值0x0000。现在让我们看一下配置寄存器。

# i2cget -y 0 0x49 1 w
0x8385


LSB是第一个,所以它等效于0b1000010110000011

我想在AIN0上进行单端转换,因此我需要将bit [14:12]写入0b100。即0b1100010110000011

# i2cset -y 0 0x49 1 0xC385 w
# i2cget -y 0 0x49 0 w
0xa30b


LSB是第一个,所以它等于2979十进制

评论


这些封装类型难道不是因为引脚尺寸/间距而更难使用吗?特别是对于那些像我这样患有关节炎的人(这限制了我的手巧。

–史蒂夫·罗比拉德
2012年7月28日在21:47

@SteveRobillard,是的,它们很难一起使用,但是绝对比看起来容易。对于MSOP,它具有放大倍数,助焊剂,焊芯和良好的焊台。在您对定位感到满意之前,您可以花很多时间用一些焊锡钉固定MSOP的一个角。小尺寸确实有助于减少电路中的噪声,因此值得一试,您可能会感到惊讶。

– John La Rooy
2012年7月29日在7:53

正是由于这个,我一直在寻找。但是25年来还没有完成字节顺序转换!将不得不摆脱一些生锈。

–Saeven
20-04-19在23:24

@JohnLaRooy为您快速提问。如果我想在A1上进行单端转换,我会写0b010,A2、0b110和A3 0b001吗?

–Saeven
20-04-19在23:38

@Saeven,请参见数据表中的“表8.配置寄存器字段说明”。单端A1为0b101

– John La Rooy
20年4月20日在6:10

#3 楼

只要您的期望使用不需要超高比特率或分辨率,您就可以使用Arduino。 Arduino之所以不错,是因为它们拥有庞大的支持社区,已经存在了一段时间,并且可以通过USB无需GPIO进行通信!

还可以从Raspberry Pi与Arduino通信。以及模拟输入的初学者示例。

#4 楼

与使用Arduino相似,但是将PICAXE设备连接到RPi UART怎么样?这将更小且更便宜。在我看来,Arduino取决于您的实际需求。

#5 楼

一两个月后(由于运往非洲),我将获得一个具有connectionpi支持WiringPi网站的I2C PCF8591开发板,并且该开发板使用3.3v(通常),我在亚马逊亚马逊网站上获得了WaveShare版本。已经读过,PCF8591非常不错,但是直到我把电路板摆在我面前,我不能说它是否好

#6 楼

一个有趣的解决方案:
http://www.theremino.com/en/blog/standalone-applications/#raspberry

不仅ADC,而且任何类型的Raspberry可配置输入输出皮。