如何在树莓派上进行模拟读数

介绍:如何在树莓派上进行模拟读数

关于:电子爱好者:喜欢探索应用电子和嵌入式系统领域,并有动力贡献和分享创意。绿色能源爱好者

大家好!在本教程中,我将向您展示如何使用Raspberry Pi直接捕获模拟值。正如我们所知,树莓Pi是一款功能强大的微型计算机模块,深受爱好者和专业人士的欢迎,几乎具备任何电子爱好者想要的所有功能。然而,pi的唯一缺点是缺乏专用的模数转换器硬件,这使得pi不适合直接记录来自任何传感器的模拟值。解决方案是将Arduino与Pi结合使用,或使用专用ADC。对于这个项目,我将使用MCP3204-12位ADC。

供应:

  • 覆盆子派(你可以使用你现有的任何型号)
  • MCP3204或MCP3008 ADC
  • 模拟传感器(我使用10K电位计代替)
  • 电路试验板
  • 跳线

第一步:从Arduino中获取价值,而不是....

获得树莓pi模拟值的一个替代方法是使用arduino,它有一个专用的10位ADC。arduino和树莓派可以通过串口通信来传输信息。这种方法可以用于当您正在试验一些传感器数据,同时您想要利用Pi的处理能力。这种配置的缺点是,您将使用更多的硬件资源,并且还必须为arduino和Pi编写单独的代码。金宝博比分直播手机版

步骤2:使用ADC..

使用Arduino作为ADC的另一种选择是使用专用ADC IC,用于相同的目的。对于这个项目,我将使用MCP3204 IC,这是一个4通道12位ADC,可以使用SPI协议与树莓派通信。我将在10位模式下使用IC。

我已经附上了这个IC的引脚,显示引脚描述。

步骤3:连接树莓派和ADC

现在我们已经对硬件进行了排序,让我们进入ADC和Pi的连接方案。

树莓派有2个SPI接口:SPI0和SPI1。对于我们的应用程序,我们将使用SPI0,我们将使用物理(或硬件)SPI,在那里我们将ADC连接到Pi的特定硬件SPI引脚

我附上了Pi的Pinout和我在项目中使用的电路图

连接方案如下:

  • ADC的VDD(Pin14)和Vref(Pin13)到Pi的5V电源
  • DGND(Pin7)和ADC的AGND(Pin12) to the ground of the Pi
  • ADC的CLK(Pin11)到Pi的GPIO 11(物理引脚23)
  • ADC的Dout(Pin10)到Pi的GPIO 9(物理引脚21)
  • ADC的Din(引脚9)到Pi的GPIO 10(物理引脚19)
  • ADC的芯片选择(引脚8)到Pi的GPIO 8(物理引脚24)

步骤4:最后的安装和代码。

现在,所有的电源和通信连接已经完成,是时候附加任何我们希望看到的传感器了。我使用一个10K电位器作为传感器。

这些代码分为两部分编写,第一部分代码主要是关于设置库、启用SPI通信,然后从MCP3204获取ADC值,然后在python终端上打印出来。

第二种代码更具交互性,可以创建来自传感器的实时数据的图表。

您可以对代码进行修改,使其适合您的需要。

第五步:指导视频

这个视频详细描述了实现这个项目的所有必要步骤。我希望这对你有帮助!

机器人竞赛

参加了
机器人竞赛

第一个分享

    建议

    • 单片机竞赛

      单片机竞赛
    • 自动化竞赛

      自动化竞赛
    • 让它发光比赛

      让它发光比赛

    讨论