欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 11657|回復(fù): 3
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)控制syn6288播放漢語音程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:3721 發(fā)表于 2015-1-5 22:09 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
  1. //注意:51單片機(jī)使用12M晶振串口發(fā)送數(shù)據(jù)會(huì)有誤差而不能工作
  2. //                所以只能使用11.0592M的晶振

  3. #include <reg51.h>            
  4. #include <string.h>
  5. #include "uart.h"

  6. void syn6288(char*  tex,unsigned  char changdu);
  7. /****************************************************************************
  8. * 函  數(shù):void  main(void)
  9. * 功  能:主函數(shù)
  10. * 參  數(shù):無
  11. * 返回值:無
  12. * 更  新:無
  13. * 備  注:無
  14. ****************************************************************************/
  15. void  main(void)
  16. {        
  17. /****************需要發(fā)送的文本**********************************/
  18.         char code text[] =  {"[v10][m10]湖北"};
  19.         char code hubei[] =  {"[v9][m9]ok"};
  20. /****************串口的初始化************************************/
  21.         
  22.         uartinit();
  23.         syn6288(text,sizeof(text));
  24.         uart_delay(2000);                  //延時(shí)很重要

  25.         syn6288(hubei,sizeof(hubei));
  26.         uart_delay(1000);                  //延時(shí)很重要
  27.        

  28.         while(1)
  29.         ;
  30. }
  31. /****************************************************************************
  32. * 函  數(shù):void syn6288(char*  tex,unsigned  char changdu)
  33. * 功  能:語音讀取字符串
  34. * 參  數(shù):tex--------字符串的地址
  35. *         changdu----字符串tex的長(zhǎng)讀
  36. * 返回值:無
  37. * 更  新:無
  38. * 備  注:無
  39. ****************************************************************************/
  40. void syn6288(char*  tex,unsigned  char changdu)
  41. {       
  42.         unsigned  char  headOfFrame[5];
  43.     unsigned  char  length;  
  44.         unsigned  char  ecc  = 0;                          //定義校驗(yàn)字節(jié)
  45.         unsigned  int i=0;
  46.         length =changdu;                         //需要發(fā)送文本的長(zhǎng)度

  47.         /*****************發(fā)送過程**************************************/           
  48.         headOfFrame[0] = 0xFD ;                         //構(gòu)造幀頭FD
  49.         headOfFrame[1] = 0x00 ;                         //構(gòu)造數(shù)據(jù)區(qū)長(zhǎng)度的高字節(jié)
  50.         headOfFrame[2] = length + 3;                 //構(gòu)造數(shù)據(jù)區(qū)長(zhǎng)度的低字節(jié)
  51.         headOfFrame[3] = 0x01 ;                         //構(gòu)造命令字:合成播放命令
  52. /*****************帶背景音樂**************************************/                   
  53.         headOfFrame[4] = 0x21 ;                         //構(gòu)造命令參數(shù):編碼格式為GBK

  54. /*****************不帶背景音樂**************************************/                   
  55.         //headOfFrame[4] = 0x01 ;                         //構(gòu)造命令參數(shù):編碼格式為GBK

  56.         for(i = 0; i<5; i++)                                   //依次發(fā)送構(gòu)造好的5個(gè)幀頭字節(jié)
  57.         {  
  58.             ecc=ecc^(headOfFrame[i]);                 //對(duì)發(fā)送的字節(jié)進(jìn)行異或校驗(yàn)       
  59.             SBUF = headOfFrame[i];
  60.             while (TI== 0) {;}                           //等待發(fā)送中斷標(biāo)志位置位
  61.             TI = 0;                                                 //發(fā)送中斷標(biāo)志位清零
  62.         }

  63.         for(i = 0; i<length; i++)                   //依次發(fā)送待合成的文本數(shù)據(jù)
  64.         {  
  65.             ecc=ecc^(tex[i]);                                 //對(duì)發(fā)送的字節(jié)進(jìn)行異或校驗(yàn)       
  66.             SBUF = tex[i];
  67.             while (TI== 0) {;}
  68.             TI = 0;
  69.                 //uart_delay(10);                               
  70.         }
  71.         //uart_delay(1000);
  72.         SBUF=ecc;                                                        //最后發(fā)送校驗(yàn)字節(jié)
  73.         while(TI== 0)
  74.                 ;
  75.         TI=0;        


  76. }
復(fù)制代碼
完整代碼下載: syn6288_2_ok.rar (50.03 KB, 下載次數(shù): 290)

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:86401 發(fā)表于 2015-7-27 10:01 | 只看該作者
這個(gè)的原理能不能講講
回復(fù)

使用道具 舉報(bào)

板凳
ID:97870 發(fā)表于 2015-12-1 17:54 | 只看該作者
為啥我把你的程序復(fù)制粘貼了下編譯有錯(cuò)啊?能幫我看看嗎
回復(fù)

使用道具 舉報(bào)

地板
ID:85865 發(fā)表于 2016-4-28 19:52 | 只看該作者
下來學(xué)習(xí)一下
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表