久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: SYN6288語音播報模塊 求分享代碼 [打印本頁]

作者: 安仔.1999    時間: 2020-12-6 21:39
標題: SYN6288語音播報模塊 求分享代碼
有沒有完整的代碼啊,跪求

作者: angmall    時間: 2022-5-19 19:31
我給你來個程序試試

  1. //main.c
  2. #include <reg52.h>
  3. #include "speaker.h"

  4. void main()
  5. {
  6.         SpeakerInit();
  7.         while(1)
  8.         {
  9.                 Speaker("哈哈");
  10.                 delayMs(2000);
  11.                 Speaker("歡迎使用 TTS 模塊");
  12.                 delayMs(2000);
  13.         }
  14. }

  15. //speaker.h

  16. #ifndef _SPEAKER_H_
  17. #define _SPEAKER_H_

  18. #ifndef uchar
  19. #define uchar unsigned char
  20. #endif

  21. #ifndef uint
  22. #define uint unsigned int
  23. #endif

  24. void SpeakerInit();                                  //語音初始化程序
  25. char Speaker(char * pString);                        //語音播放程序               
  26. void delayMs(uint xms);

  27. #endif

  28. //speaker.c

  29. #include <reg52.h>
  30. #include <string.h>
  31. #include <math.h>
  32. #include "speaker.h"

  33. void delayMs(uint xms)
  34. {
  35.         uint i,j;
  36.         for(i=0;i<xms;i++)
  37.         for (j=0;j<123;j++);
  38. }

  39. //語音模塊初始化
  40. void SpeakerInit()
  41. {
  42.         /**************串口的初始化*****************/
  43.         TL1=0XFA;        //在11.0592MHZ下,設置波特率9600bps,工作方式2
  44.         TH1=0XFA;
  45.         TMOD|=0X20;
  46.         SCON=0X50;  //串口工作方式1,允許接收
  47.         PCON=0X80;
  48.         EA=0;
  49.         REN=1;
  50.         TI=0;                  //發生中斷標志位置零
  51.         RI=0;                //接收中斷標志位置零
  52.         TR1=1;                //定時器1用做波特率發生
  53. }

  54. //語音播報程序
  55. char Speaker(char * pString)
  56. {
  57.         uchar headOfFrame[5];
  58.         uchar length;                        //定義字符串長度
  59.         uchar ecc = 0;                   //定義校驗字節
  60.         uint i=0;

  61.         if (pString == NULL)        //空字符串
  62.         return -1;        

  63.         /*****************發送過程**********************/
  64.         headOfFrame[0]=0XFD;   //構造幀頭FD
  65.         headOfFrame[1]=0X00;   //構造數據區長度的高字節
  66.         length = strlen(pString);                //需要發送文本的長度
  67.         headOfFrame[2]=length+3;//構造數據區長度的低字節
  68.         headOfFrame[3]=0X01;        //構造命令字:合成播放命令
  69.         headOfFrame[4]=0X00;        //構造命令參數:編碼格式為GB2312

  70.         for(i=0;i<5;i++)        //依次發送構造好的5個幀頭字節
  71.         {
  72.                 ecc=ecc^(headOfFrame[ i]); //對發送的字節進行異或校驗
  73.                 SBUF=headOfFrame[ i];
  74.                 while (TI==0){;}                 //等待發送中斷標志置位
  75.                 TI=0;                                         //發送中斷標志位清零
  76.         }

  77.         for(i=0;i<length;i++)       //依次發送待合成的文本數據
  78.         {
  79.                 ecc=ecc^(*pString);
  80.                 SBUF = (*pString);
  81.                 pString ++;
  82.                 while(TI==0){;}
  83.                 TI=0;
  84.         }
  85.        
  86.         SBUF=ecc;
  87.         while(TI==0){;}
  88.         TI=0;
  89.        
  90.         return 0;        //成功返回0
  91. }


復制代碼





歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 免费毛片在线 | 97国产精品 | 黄色片在线免费观看 | 久久艹精品 | 中文字幕麻豆 | 国产福利一区二区三区 | 亚洲成人免费在线观看 | 国产精品久久久久久妇女6080 | 97精品超碰一区二区三区 | 日日骚av | 能看的av| 黄色片免费看 | 欧美一级黄色录像 | 欧美精品日韩少妇 | 草少妇 | 波多野结衣之双调教hd | 高h乱l高辣h文短篇h | 亚洲高清视频在线观看 | 色哟哟一区二区 | 黄色一级片免费看 | 看毛片视频 | 黄色小视频免费看 | 五月激情综合网 | 性免费视频 | 久久久久成人网 | 欧美日韩在线一区二区三区 | 在线看黄色片 | 国产免费a | 国产99精品 | 五月在线视频 | 国产福利在线播放 | a级片久久 | 日韩专区在线 | 欧美日韩成人在线观看 | 国产午夜在线 | 午夜av网站 | xxxxx黄色| 久久精品久久久久久久 | 久久亚洲精品视频 | av免费在线观看网站 | 欧美三级a做爰在线观看 |