
TTS 语音合成模块内置语音合成芯片,通过串口接收主控设备(如单片机)的文本数据,经芯片分析处理、调用语音库与算法,转成语音信号,放大后驱动扬声器发声 。将文字信息转换成语音输出。

| 引脚名称 | 描述 |
|---|---|
| G | GND(电源输入负极) |
| V | VCC(电源输入正极) |
| RX | 接受引脚 |
| TX | 发送引脚 |
供电电压: 3.3V-5V
连接方式:PH2.0 4P端子线
安装方式:积木固定

不会使用库文件的参考这里:库文件安装使用
库文件下载:点击下载
米思齐UNO开发板库文件安装步骤(使用代码前先下载安装米思齐库文件):参考链接
米思齐ESP32开发板库文件下载安装步骤(使用代码前先下载安装米思齐库文件):参考链接
示例程序(UNO开发板):点击下载
#include "VTX316.h"
void setup(){
VTX316_Init(6,5);
}
void loop(){
Voice_BOBAO("今天天气晴,适合外出");
delay(5000);
}
示例程序(ESP32开发板):
from machine import UART, Pin
import time
class VTX316:
def __init__(self, tx_pin: int, rx_pin: int, baudrate=115200, uart_id=2):
"""初始化 VTX316 语音模块"""
self.uart = UART(uart_id, baudrate=baudrate, tx=Pin(tx_pin), rx=Pin(rx_pin))
time.sleep_ms(200)
def _send_bytes(self, data: bytes):
"""发送原始字节"""
self.uart.write(data)
def _send_text(self, text: str):
"""发送字符串文本"""
self.uart.write(text.encode('gbk'))
def bobo(self, message: str):
if not message:
return
msg_bytes = message.encode('gbk')
length = len(msg_bytes)
frame_head = bytes([0xFD, 0x00, length + 2, 0x01, 0x05])
self._send_bytes(frame_head)
time.sleep_ms(2)
self._send_bytes(msg_bytes)
time.sleep_ms(length + 50)
def yinliang(self, level: int):
if level < 0:
level = 0
elif level > 10:
level = 10
frame = bytes([
0xFD, 0x00, 0x06,
0x01, 0x01,
0x5B, 0x76,
0x30 + level,
0x5D
])
self._send_bytes(frame)
time.sleep_ms(100)
def zanting(self):
cmd = bytes([0xFD, 0x00, 0x01, 0x03])
self._send_bytes(cmd)
def huifu(self):
cmd = bytes([0xFD, 0x00, 0x01, 0x04])
self._send_bytes(cmd)
def fayanren(self, idx: int):
if idx < 1 or idx > 7:
idx = 1
cmd_str = f"[m5{idx}]"
msg_bytes = cmd_str.encode('gbk')
length = len(msg_bytes)
frame_head = bytes([0xFD, 0x00, length + 2, 0x01, 0x05])
self._send_bytes(frame_head)
time.sleep_ms(2)
self._send_bytes(msg_bytes)
time.sleep_ms(50)
voice = VTX316(tx_pin=17, rx_pin=16)
voice.yinliang(6)
voice.bobo('欢迎使用语音合成模块')
示例程序(UNO开发板):点击下载

示例程序(ESP32开发板):点击下载

Arduino UNO 测试环境搭建
准备配件:
电路接线图:

ESP32 Python 测试环境搭建
Arduino UNO视频教程:点击查看
ESP32 Python视频教程:
Arduino UNO测试结论:
上传代码后,发现模块一直循环播放语音。
