HS-S77-PL TTS-Sprachsynthese-Modul

HS-S77-PL  TTS-Sprachsynthese-Modul

1、Einführung

2、Schemazeichnung

3、Modulparameter

Pinbezeichnung

Beschreibung

G

GND(Spannungsversorgungsminus)

V

VCC(Spannungsversorgungsplus)

RX

Empfangs-Pin

TX

Send-Pin

  • Spannungsversorgung: 3.3V-5V

  • Verbindungsmethode: PH2.0 4P Steckerkabel

  • Montageart: Bausteine fest

4, Platinegröße

5、Arduino Bibliothek hinzufügen

Hier ist der Bezug für die Verwendung der Bibliothek:Bibliothek installieren und verwenden

Bibliothek herunterladen: Klicken Sie zum Herunterladen

米思齐UNO开发板库文件安装步骤(使用代码前先下载安装米思齐库文件):参考链接

6、添加MicroPython环境库文件

米思齐ESP32开发板库文件下载安装步骤(使用代码前先下载安装米思齐库文件):参考链接

7、Arduino IDE Beispielprogramm

Beispielprogramm (UNO-Entwicklungsboard): Klicken Sie zum Herunterladen

#include "VTX316.h"

void setup(){
  VTX316_Init(6,5);

}

void loop(){
  Voice_BOBAO("今天天气晴,适合外出");
  delay(5000);

}

Beispielprogramm(ESP32-Entwicklungsboard):

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('欢迎使用语音合成模块')

8, Mixly-Beispielprogramm (Graphische Sprache)

Beispielprogramm (UNO-Board):2、第二步将UNO开发板的库文件下载后解压在桌面。

示例程序(ESP32开发板):2、第二步将UNO开发板的库文件下载后解压在桌面。

9, Testumgebung aufbauen

Testumgebung für Arduino UNO einrichten

Vorbereiten Sie die Komponenten:

  • UNO-R3 Entwicklungsboard *1

  • UNO-R3 EXP-Erweiterungsplatte *1

  • USB type-c Datenkabel *1

  • HS-S77-PL TTS-Sprachsynthese-Modul *1

  • PH2.0 4P-Doppelkopfsteckerleitung *1

Schaltplan der Leitung:

ESP32 Python Testumgebung Einrichtung

10、Video-Tutorial

Arduino UNO Video-Tutorial:Klicken, um anzuzeigen

ESP32 Python Videoanleitung:

11、Testergebnis

Arduino UNO Testergebnis:

Nach dem Hochladen des Codes habe ich bemerkt, dass das Modul die Sprache immer wieder abspielt.