树莓派python串口语音输出输出_树莓派通过语音模块下发指令点亮小灯泡

树莓派通过语音模块下发指令点亮小灯泡

使用的语言是Python。语音模块使用串口连接树莓派,RGB灯连接在树莓派23、24、25号引脚上。

语音模块设置关键词,识别关键词串口通信控制树莓派点亮对应颜色的LED灯。

树莓派3代B+引脚图

语音模块

代码

import serial # 导入串口库

import time # 导入时间库

import RPi.GPIO as GPIO 导入树莓派引脚控制库

GPIO.setmode(GPIO.BCM) # (强制的)指定一种编号规则

GPIO.setwarnings(False) # 禁用警告

GPIO.setup(23, GPIO.OUT) # 初始化设置23引脚为输出

GPIO.setup(24, GPIO.OUT) # 初始化设置24引脚为输出

GPIO.setup(25, GPIO.OUT) # 初始化设置25引脚为输出

GPIO.output(23, GPIO.LOW) # 初始化设置23引脚为低电平输出(有些树莓派默认高电平输出)

GPIO.output(24, GPIO.LOW) # 初始化设置24引脚为低电平输出(有些树莓派默认高电平输出)

GPIO.output(25, GPIO.LOW) # 初始化设置25引脚为低电平输出(有些树莓派默认高电平输出)

ser = serial.Serial("/dev/ttyUSB0",9600) # 打开树莓派串口 ttyUSB0,波特率是9600

ser.flushInput()

# ser.write("play,001,$")

def main():

while True:

count = ser.inWaiting() # 读取串口缓存数据大小

if count !=0: # 如果串口缓存数据量不为0

print(count) # 打印一下有多少

recv = int.from_bytes(ser.read(count), byteorder='big', signed=False) # 把读到的byte字节流转换为int赋值给recv

print(recv)

print(type(recv))

if(recv == 2): # 如果recv等于2

GPIO.output(23, GPIO.HIGH) # 23号引脚输出高电平

GPIO.output(24, GPIO.LOW) # 24号引脚输出低电平

GPIO.output(25, GPIO.LOW) # 25号引脚输出低电平

print("hong deng")

if(recv == 3):

GPIO.output(23, GPIO.LOW)

GPIO.output(24, GPIO.LOW)

GPIO.output(25, GPIO.HIGH)

print("lv deng")

if(recv == 4):

GPIO.output(23, GPIO.LOW)

GPIO.output(24, GPIO.HIGH)

GPIO.output(25, GPIO.LOW)

print("lan deng")

ser.flushInput()

time.sleep(0.1)

if __name__ == '__main__':

main()

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用:工作模式 普通模式:直接说话,模块直接识别。 按键模式:按键触发开始ASR进程。 口令模式:需要一级唤醒词(类似于苹果手机中的唤醒Siri,“嗨,Siri”。) 引用:第二部分是一个很好用的图灵机器人,需要付费,但是如果简单的开发语音是非常方便的,可以买一个turling。创建一个turling.py的python文件 # coding: utf-8 import requests import json import sys import importlib importlib.reload(sys) def Tuling(words): Tuling_API_KEY = "e63ae466836f4b82bf0f634bcf5b796d这个得填自己的" body = {"key":Tuling_API_KEY,"info":words.encode("utf-8")} url = "http://www.tuling123.com/openapi/api" r = requests.get(url,body,verify=True) if r: date = json.loads(r.text) print(date["text"]) return date["text"] else: return None 引用:这是我之前在csdn上看到的一个版本的语音交互项目,但是原作的版本是py2的,现在我的版本是py3的,经过本人的研究修改绝对可用,用来造福更多做语音项目的朋友们。 根据提供的引用,有一个很好用的语音识别模块python树莓派语音识别模块。你可以使用该模块进行语音交互和语音识别的开发。参考引用中的示例代码,您可以通过连接到图灵机器人API来实现语音交互功能。只需将您自己的图灵API KEY填入代码中,并使用requests库发送GET请求获取图灵机器人的回复信息。这个模块是基于Python 3开发的,您只需根据您的需求进行适当的修改即可使用。在您的树莓派上导入该模块并调用相关函数,您就可以开始使用语音识别功能了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值