• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
MKT-porter
博客园    首页    新随笔    联系   管理    订阅  订阅
语音合成模块

https://item.taobao.com/item.htm?spm=a1z09.2.0.0.18d92e8dUPCAIr&id=577428231876&_u=91qf7bf55821

 

 

 

 

 

 

 

 

 

 

 

 

 

 https://www.107000.com/T-Hex/

 

 

#include <SoftwareSerial.h>


// https://www.107000.com/T-Hex/
SoftwareSerial mySerial(5,4);

//警告
char Voice_jingao[10]={0xBE,0xAF,0xB8,0xE6,0xA1,0xA3};



//超速行驶
char Voice_speedup[10]={0xB3,0xAC,0xCB,0xD9,0xD0,0xD0,0xCA,0xBB,0xA1,0xA3};

//跌倒异常
char Voice_down[10]={0xB5,0xF8,0xB5,0xB9,0xD2,0xEC,0xB3,0xA3,0xA1,0xA3};

//运行正常
char Voice_ok[10]={0xD4,0xCB,0xD0,0xD0,0xD5,0xFD,0xB3,0xA3,0xA1,0xA3};


// 危险警报,请帮帮我。
char Voice_helpme[20]={0xCE,0xA3,0xCF,0xD5,0xBE,0xAF,0xB1,0xA8,0xA3,0xAC,0xC7,0xEB,0xB0,0xEF,0xB0,0xEF,0xCE,0xD2,0xA1,0xA3};





void setup(){
  mySerial.begin(9600);
    //mySerial.write(Chinese_GB23121,,sizeof(Voice_jingao)); println
//  mySerial.println(Voice_jingao);
//  delay(3000);
//
//  mySerial.println(Voice_speedup);
//  delay(3000);
//
//  mySerial.println(Voice_down);
//  delay(3000);
//
//    mySerial.println(Voice_ok);
//  delay(3000);
//
//    mySerial.println(Voice_helpme);
//  delay(4000);
  
}
 
void loop(){

  mySerial.println(Voice_helpme);
  delay(3000);


  

}

  

 

 

void setup()
{
  Serial.begin(115200);
  Serial1.begin(115200);  //TX=PA9,RX=PA10  32的引脚
  Serial2.begin(115200);  //TX=PA2,RX=PA3
  Serial3.begin(115200);  //TX=PB10 黄色语音线 ,RX=PB11 白色语音线
}
void loop()
{
  delay(100);
  Serial.println("Test Serial");
  Serial1.println("Test Serial1");
  Serial2.println("Test Serial2");
  Serial3.println("Test Serial3");
}

  

 

//警告
char Voice_jingao[10]={0xBE,0xAF,0xB8,0xE6,0xA1,0xA3};



//超速行驶
char Voice_speedup[10]={0xB3,0xAC,0xCB,0xD9,0xD0,0xD0,0xCA,0xBB,0xA1,0xA3};

//跌倒异常
char Voice_down[10]={0xB5,0xF8,0xB5,0xB9,0xD2,0xEC,0xB3,0xA3,0xA1,0xA3};

//运行正常
char Voice_ok[10]={0xD4,0xCB,0xD0,0xD0,0xD5,0xFD,0xB3,0xA3,0xA1,0xA3};


// 危险警报,请帮帮我。
char Voice_helpme[20]={0xCE,0xA3,0xCF,0xD5,0xBE,0xAF,0xB1,0xA8,0xA3,0xAC,0xC7,0xEB,0xB0,0xEF,0xB0,0xEF,0xCE,0xD2,0xA1,0xA3};





void setup(){
  Serial3.begin(9600);
    //mySerial.write(Chinese_GB23121,,sizeof(Voice_jingao)); println
//  mySerial.println(Voice_jingao);
//  delay(3000);
//
//  mySerial.println(Voice_speedup);
//  delay(3000);
//
//  mySerial.println(Voice_down);
//  delay(3000);
//
//    mySerial.println(Voice_ok);
//  delay(3000);
//
//    mySerial.println(Voice_helpme);
//  delay(4000);
  
}
 
void loop(){

  
  Serial3.println(Voice_jingao);
  delay(4000);
}

  

 

stm32 超声波 语音  显示屏 光敏控灯

 

 

#include <Adafruit_SSD1306.h>
#include <Adafruit_Sensor.h>
 
Adafruit_SSD1306 display = Adafruit_SSD1306(128, 64, &Wire);

 

//警告
char Voice_jingao[10]={0xBE,0xAF,0xB8,0xE6,0xA1,0xA3};
// 障碍物警告
char Voice_jingao1[30]={0xD5,0xCF,0xB0,0xAD,0xCE,0xEF,0xBE,0xAF,0xB8,0xE6,0xA1,0xA3};
//  超声波
#define trigPin PA4 //引脚Tring 连接 IO D2
#define echoPin PA5 //引脚Echo 连接 IO D3
   
float aver[3];
 
float measure() {
  digitalWrite(trigPin, LOW);
  delayMicroseconds(5);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(15);
  digitalWrite(trigPin, LOW);
  pinMode(echoPin, INPUT);
  float duration = pulseIn(echoPin, HIGH);
  float distance = duration *0.034 / 2;  //测距过程
  if(distance>400){distance=400;}
  if(distance<0)distance=0;


  
  return distance;
}
 
float measure3(){
    for (int i=0;i<=2;i++) {  
      float distance=measure();              
      aver[i]=distance;           
      delay(50);          
    }
    float distanceall=(aver[0]+aver[1]+aver[2])/3;  //取三次测量平均
    return distanceall;
  }
 
 
 
void setup(){
  Serial.begin(9600);
  Serial3.begin(9600);
  
  
  
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(PA0, INPUT_ANALOG);
  pinMode(PA1, OUTPUT);
  digitalWrite(PA1, LOW);  

  // SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally
  if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3C for 128x32
    //Serial.println(F("oled allocation failed"));
    for (;;)
      ; // Don't proceed, loop forever
  }
  display.display();
  delay(500); // Pause for 2 seconds
  display.setTextSize(1);
  display.setTextColor(WHITE);
  display.setRotation(0);

  
  

   
}

int alram=0;
long int told = millis();
long int tcur = millis();
String ledstate="close";
void loop(){

  int light_value=4095-analogRead(PA0);
  if(light_value<500){
    ledstate="open";
    digitalWrite(PA1, HIGH);  

    }
   else{
    ledstate="close";
    digitalWrite(PA1, LOW);  

    }
  
  float distanceall=measure3();
  if(distanceall<50){ //厘米
     alram=1;
     
    }
   else{
     alram=0;
     //told = millis();
    }
  //Serial.println(distanceall);



    
  display.clearDisplay();
  display.setCursor(0, 0);



  String Lightmsg="light:"+String(light_value);
  display.println(Lightmsg);
  display.println(" ");
  String ledmsg="led:"+String(ledstate);
  display.println(ledmsg);
  display.println(" ");


  String alrammsg="alram:"+String(alram);
  display.println(alrammsg);
  display.println(" ");

  String chaomsg="distance:"+String(distanceall)+"cm";
  display.println(chaomsg);
  display.println(" ");

  Serial.println(chaomsg+"  "+alrammsg+"   "+Lightmsg+"   "+ledmsg+"   "); // 有利于减少死机
  
    if(alram==1){
    //String msg="前方有障碍物,请绕行,距离:"+String(distanceall);
    //Serial.println(msg);
    tcur = millis();
    long int timecost=tcur-told;
    
    if(timecost>3000){
       
       
       Serial3.println(Voice_jingao1);
       told=millis();
     }
  }



  display.display();
  delay(100);



  
 
}

  

 

posted on 2023-03-09 18:13  MKT-porter  阅读(72)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3