用Python更改Raspberry Pi卷

2024-05-23 13:24:02 发布

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

硬件

  • 阿杜伊诺·乌诺
  • 电位计
  • 树莓皮3
  • 树莓皮
  • Hifiberry DAC Pro2

设置

电位计在Arduino上运行,我通过USB串行端口向Raspberry Pi发送信号。代码已经完成,并且正在Arduino上工作,我能够获取信号并在Pi上使用python脚本打印它

我已经在Arduino侧重新映射了0-100的信号范围,我希望使用这个值来控制我正在创建的音乐盒的raspberry Pi的音量

问题

我目前正在使用这个答案作为指导。但是,当我运行python脚本时,在终端中出现以下错误

amixer:找不到简单控件“主控”,0

但是,当我运行命令(amixer scocontrols)时,我会显示一个主控件,列出0。见下文

pi@raspberrypi:~$amixer sControl 简单混音器控件“主”,0 简单混音器控制“捕获”,0

为什么脚本没有看到硬件,或者我做错了什么?这是我目前的脚本。一旦我可以改变音量,我就开始做循环,我对python还不熟悉,并试图学习一些东西,但我已经在这方面坚持了几个星期。非常感谢您的帮助

#import serial adapter library and asla audio library
import subprocess
import serial
import alsaaudio

#Variables
ser = serial.Serial('/dev/ttyACM0', 9600)
ser.flush()

volume = ser
command = ["amixer", "sset", "Master", "{}%".format(volume)]
subprocess.Popen(command)


#Imports serial value and prints to monitor
while True:  
    read_serial=ser.readline()
    print(read_serial)

Tags: import脚本硬件信号libraryserialpiarduino