PY学习笔记 发表于 2024-12-15 15:00:14

K10基于micropython的对讲机

K10这块开发板有麦克风和喇叭,于是我做了一个对讲机。
1.行空板K10介绍
行空板K10是一款专为快速体验物联网和学习人工智能而设计的开发学习板,100%采用国产芯片,知识产权自主可控,符合信息科技课程中编程学习、物联网及人工智能等教学需求。该板集成2.8寸LCD彩屏、WiFi蓝牙、摄像头、麦克风、扬声器、RGB指示灯、多种传感器及丰富的扩展接口。凭借高度集成的板载资源,教学过程中无需额外连接其他设备,便可轻松实现传感器控制、物联网应用以及人脸识别、语音识别、语音合成等AI人工智能项目。
主要特点
集成摄像头&内置算法,可进行离线图像检测
集成麦克风&内置算法,可进行离线语音识别
集成扬声器&内置算法,可进行离线语音合成
2.8寸彩色屏幕,数据展示更清晰
集成度高,利于教学
接口丰富,兼容软件多,扩展性好
2.代码
第一块:
from socket import *
import time
from unihiker_k10 import wifi,mic,speaker
wifi.connect(ssid="ssid",psd="psd",timeout=50000) #尝试连接wifi网络。可以不写参数名称。timeout为可选参数,表示连接超时时长,默认超时时间为10000毫秒
# 我电脑的ip
server_addr = "255.255.255.255"
# 随便选一个端口,建议端口范围2000~65535
server_port = 5000
# 1. 创建udp套接字
udp_socket = socket(AF_INET, SOCK_DGRAM)
# 2. 准备服务器收方的地址
dest_addr = (server_addr, server_port)

def creation_udp_client(send_data):
    # 发送数据到指定的设备上
    udp_socket.sendto(send_data, dest_addr)
def udp_read():
    recv,server_addr = udp_socket.recvfrom(4096)
    return recv
while True:
    mic.recode_sys(name="sound.wav",time=1)
    with open("sound.wav","rb") as f:
      send_data = f.read()
    creation_udp_client(send_data)
    msg = udp_read()
    fw = open("shou.wav","wb").write(msg)
    speaker.play_sys_music("shou.wav")
第二块:
from socket import *
import time
from unihiker_k10 import wifi,mic,speaker
wifi.connect(ssid="ssid",psd="psd",timeout=50000) #尝试连接wifi网络。可以不写参数名称。timeout为可选参数,表示连接超时时长,默认超时时间为10000毫秒
# 我电脑的ip
server_addr = "255.255.255.255"
# 随便选一个端口,建议端口范围2000~65535
server_port = 5000
# 1. 创建udp套接字
udp_socket = socket(AF_INET, SOCK_DGRAM)
# 2. 准备服务器收方的地址
dest_addr = (server_addr, server_port)

def creation_udp_client(send_data):
    # 发送数据到指定的设备上
    udp_socket.sendto(send_data, dest_addr)
def udp_read():
    recv,server_addr = udp_socket.recvfrom(4096)
    return recv
while True:   
    msg = udp_read()
    fw = open("shou.wav","wb").write(msg)
    speaker.play_sys_music("shou.wav")
    mic.recode_sys(name="sound.wav",time=1)
    with open("sound.wav","rb") as f:
      send_data = f.read()
    creation_udp_client(send_data)

3.效果
主要因为手头上没有两块行空板,如果有大佬觉得代码有问题或者想拍效果视频的评论区发出来,我会改正代码并将网友的视频效果加上署名放在帖子上的

PY学习笔记 发表于 2024-12-15 15:03:33

大佬们有没有两块K10帮忙拍视频效果或者改一下我的代码,欢迎在评论区留言
页: [1]
查看完整版本: K10基于micropython的对讲机