语音合成模块Demo
耳机插着就行,别戴着,声音真的很大!
Serial1的Write值根据手册中的数据帧格式写的。可以直接用“SYN6658语音合成芯片PC端演示程序”生成。
ESP32-C3的Serial有两个。第0个就是和电脑通信的串口。第1个就是4PIN-UART接口。第1个接口记得是Serial1,不是Serial。
连续发送语音合成命令注意delay值。
void setup() {
// put your setup code here, to run once:
Serial1.begin(115200);
}
void loop() {
// put your main code here, to run repeatedly:
Serial1.write(0xFD);
Serial1.write(0x00);
Serial1.write(0x08);
Serial1.write(0x01);
Serial1.write(0x01);
Serial1.write(0xD2);
Serial1.write(0xBB);
Serial1.write(0xB6);
Serial1.write(0xFE);
Serial1.write(0xC8);
Serial1.write(0xFD);
delay(3000);
}
EEPROM模块Demo
注意写操作之后需要delay。
#include<Wire.h>
#define eepADDR 0x50
void setup() {
// put your setup code here, to run once
Serial.begin(115200);
// 写入操作
Wire.begin();
Wire.beginTransmission(eepADDR);
Wire.endTransmission();
Wire.beginTransmission(eepADDR);
Wire.write(0x00); // 地址高8位
Wire.write(0x0C); // 地址低8位
Wire.write(0x06); // 写入的数据
Wire.endTransmission();
delay(200);
}
void loop() {
// put your main code here, to run repeatedly:
// 读操作
Wire.beginTransmission(eepADDR);
Wire.write(0x00); //地址高8位
Wire.write(0x0C); //地址低8位
Wire.endTransmission();
delay(100);
Wire.requestFrom(eepADDR, 1);
if (Wire.available()) {
int c = Wire.read();
Serial.println(c);
}
delay(1000);
}
DS1307和LED16x16直接看Arduino自带的示例程序吧