首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python使用MCP3008采样频率

Python使用MCP3008采样频率
EN

Stack Overflow用户
提问于 2021-02-22 19:08:47
回答 1查看 46关注 0票数 -1

我正在尝试做可见光通信的项目。目前,我使用一个经典的发光二极管作为发送部分和BPW21光电二极管与MCP3008 AD转换器作为接收部分。这两个部分都可以在带有Python3.7.3的RasPi4上运行。然而,我在RX部分使用OOK调制接收比特时遇到了问题。

代码语言:javascript
运行
复制
import busio
import digitalio
import board
import time
import adafruit_mcp3xxx.mcp3008 as MCP
from adafruit_mcp3xxx.analog_in import AnalogIn

spi = busio.SPI(clock=board.SCK, MISO=board.MISO, MOSI=board.MOSI)
cs = digitalio.DigitalInOut(board.D5)
mcp = MCP.MCP3008(spi, cs)
channel_0 = AnalogIn(mcp, MCP.P0)

def evaluateSensorValue():

    bits = ""

    sensor_value = channel_0.value
    channel_voltage = channel_0.voltage

    if channel_voltage < 3.0:
        bits = "1"
        print("1")
    else:
        bits = "0"
        print("0")

while True:
    evaluateSensorValue()
    time.sleep(0.05)

我正在读取来自MCP3008的通道0的输入。然而,在20赫兹的低频率下,我不能“捕捉”所有的比特。BPW21在1.5us的下降和上升时间内对光有快速的响应时间。我认为MCP3008的速度足够快,可以捕获频率为10 kHz的所有比特,而不仅仅是低于20 Hz的比特。如何才能在RX端更快地接收更高频率的数据?感谢您的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-01 20:45:45

这个答案已经解决了!问题出在AD转换器的采样频率非常高。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66314560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档