利用Rapsberry Pi 4建立Adafruit PDM

2024-09-30 06:14:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我对使用Raspberry pi、Adafruit产品和python编码相对较新。我一直在努力设置一个连接到RPI4的Adafruit PDM麦克风,并试图在python 3上运行它。到目前为止,Adafruits教程非常棒,但是我在安装本教程所需的所有模块和库时遇到了一些问题。有没有办法将Adafruit_zeroPDM和Adafruit_zeroDMA安装到python中?我遵循github下载链接,尝试了几种使用pip3安装它们的方法,但是我不断地发现Adafruit的circuit python库中缺少模块的错误。Adafruit PDM话筒是否与RPi不兼容

我一直在使用以下python代码,这些代码直接取自adafruit网站(https://learn.adafruit.com/adafruit-pdm-microphone-breakout/circuitpython):

import time
import array
import math 
import board
import audiobusio

def mean(values):
    return sum(values) /len(values)

def normalized_rms(values):
    minbuf = int(mean(values))
    samples_sum = sum(
        float(sample - minbuf) * (sample - minbuf)
        for sample in values
    )
    
    return math.sqrt(samples_sum / len(values))

#Main program 
mic = audiobusio.PDMIn(board.TX, board.D12, sample_rate=16000, bit_depth=16)
samples = array.array('H', [0] * 160)

while True:
    mic.record(samples, len(samples))
    magnitude = normalized_rms(samples)
    print((magnitude,))
    print("Decible Quired")
    
    time.sleep(10)

我无法解决库和模块问题。我已经下载了Adafruit_Circuit Python库和Adafruit_Blinka库,以及所需的Adafruit_ZeroPDM和Adafruit_ZeroDMA,但是我一直收到以下错误

ModuleNotFoundError: No module named 'audiobusio'

任何帮助都将不胜感激

最好的


Tags: 模块sampleimportboardadafruitlen教程array

热门问题