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

標(biāo)題: 51單片機(jī)PWM做的wav語音報(bào)時(shí)程序 [打印本頁]

作者: 51黑專家    時(shí)間: 2016-4-18 20:03
標(biāo)題: 51單片機(jī)PWM做的wav語音報(bào)時(shí)程序
stc8051單片機(jī)的PWM做的wav語音報(bào)時(shí)程序


主程序預(yù)覽:
  1. #include <stc12c5a60s2.H>
  2. #include "Myfun.h"
  3. #include  "uart.h"
  4. #include "stdio.h"
  5. #define dian 11
  6. #define fen 12
  7. #define uchar unsigned char
  8. #define uint unsigned int
  9. #define uchar unsigned char
  10. #define uint unsigned int

  11. int UART1_Recv_count;  //接收計(jì)數(shù)

  12. bit UART1_Overflow_Flag;   //緩沖區(qū)滿標(biāo)志



  13.   
  14. void main()
  15. {
  16. // uchar i;  
  17. PWMInit();         //初始化
  18. settimer1(250);                  //約11k讀取   晶振使用30m都可以
  19. P1M0=0x08;
  20. P1M1=0x00;          //1.3強(qiáng)拉輸出
  21. ////////////////////////////////////////////////////
  22. P3M0=0x40;
  23. P3M1=0x00;          //P3.6強(qiáng)拉輸出 led


  24.   
  25.    LED=1;

  26.    uartInit();
  27.    EA=1;  //開總中斷
  28.    ES=1;
  29.    // LED=0;
  30. //transmitString("開始。。。。");
  31.                UART1_Recv_count = 0;            //緩存清零
  32.               UART1_Overflow_Flag=0;        //允許串口繼續(xù)接收數(shù)據(jù)
  33.    while(1)
  34.    {

  35.          
  36.     if (UART1_Overflow_Flag==1)     //串口中斷數(shù)據(jù)接收完畢,開始處理   接收格式言 時(shí)分字符形式:1022就是10點(diǎn)22分

  37.       {  
  38.                  

  39.                   
  40. /////////////////播現(xiàn)在是北京時(shí)間/////////////////////////
  41.         delay1();
  42.                 soundtospeak(13);
  43.         delay1();

  44. /////////////////播時(shí)的"20"語音/////////////////////////

  45.    if((UART1_Recv_BUF[0]-0x30)==2)// 播20語音
  46.               {
  47.                               soundtospeak(2);
  48.                delay1();
  49.                           soundtospeak(10);
  50.                delay1();
  51.                    }
  52. ///////////////////播時(shí)的"10"語音//////////////////////
  53.    if  ((UART1_Recv_BUF[0]-0x30)==1)//小于9大于19點(diǎn)

  54.                           {
  55.                      soundtospeak(10);         //播10語音
  56.              delay1();


  57.                       }

  58. /////////////////////播時(shí)"x"時(shí)語音////////////////////////////////
  59.         if  (((UART1_Recv_BUF[0]-0x30)==1)&&((UART1_Recv_BUF[1]-0x30)>0)||(((UART1_Recv_BUF[0]-0x30)==2)&&(0<(UART1_Recv_BUF[1]-0x30))&&((UART1_Recv_BUF[1]-0x30)<4))||((UART1_Recv_BUF[0]-0x30)==0))//如為整點(diǎn)不報(bào)0語音
  60.             {
  61.             soundtospeak(UART1_Recv_BUF[1]-0x30); //此函數(shù)將讀完一個(gè)數(shù)才退出
  62.        
  63.             delay1();
  64.                 }
  65.    

  66.             soundtospeak(dian);        //播"點(diǎn)"語音
  67.             delay1();

  68. ////////////////以下為分時(shí)間語音//////////////////////////////////////

  69.            if((UART1_Recv_BUF[2]-0x30)==5)// 播50語音
  70.               {
  71.                               soundtospeak(5);
  72.                delay1();
  73.                           soundtospeak(10);
  74.               delay1();
  75.                  if  ((UART1_Recv_BUF[3]-0x30)==0)        //如果分鐘為整分情況下
  76.                     {
  77.                     soundtospeak(fen);        //播"分"語音
  78.             delay1();
  79.                         }
  80.                    }
  81.           if((UART1_Recv_BUF[2]-0x30)==4)// 播40語音
  82.               {
  83.                               soundtospeak(4);
  84.                delay1();
  85.                           soundtospeak(10);
  86.               delay1();
  87.             if  ((UART1_Recv_BUF[3]-0x30)==0)
  88.                     {
  89.                     soundtospeak(fen);        //播"分"語音
  90.             delay1();
  91.                         }
  92.                    }
  93.            if((UART1_Recv_BUF[2]-0x30)==3)// 播30語音
  94.               {
  95.                               soundtospeak(3);
  96.                delay1();
  97.                           soundtospeak(10);
  98.               delay1();
  99.                   if  ((UART1_Recv_BUF[3]-0x30)==0)
  100.                     {
  101.                     soundtospeak(fen);        //播"分"語音
  102.             delay1();
  103.                         }
  104.                    }


  105.            if((UART1_Recv_BUF[2]-0x30)==2)// 播20語音
  106.               {
  107.                               soundtospeak(2);
  108.                delay1();
  109.                           soundtospeak(10);
  110.               delay1();
  111.                 if  ((UART1_Recv_BUF[3]-0x30)==0)
  112.                     {
  113.                     soundtospeak(fen);        //播"分"語音
  114.             delay1();
  115.                         }
  116.                    }

  117.            if  ((UART1_Recv_BUF[2]-0x30)==1)//播10語音
  118.                 {
  119.                      soundtospeak(10);       
  120.              delay1();
  121.                
  122.             if  ((UART1_Recv_BUF[3]-0x30)==0)
  123.                     {
  124.                     soundtospeak(fen);        //播"分"語音
  125.             delay1();
  126.                         }
  127.                 }


  128.          if(((UART1_Recv_BUF[3]-0x30)>0))
  129.           {
  130.            if  ((UART1_Recv_BUF[2]-0x30)==0)//播0語音
  131.                 {
  132.                      soundtospeak(0);       
  133.              delay1();

  134.                 }
  135.           }
  136. /////////////////////播"x"分語音////////////////////////////////
  137.           if ((((UART1_Recv_BUF[2]-0x30)==0)&&((UART1_Recv_BUF[3]-0x30)>0))||((UART1_Recv_BUF[3]-0x30)>0) )
  138.           {
  139.        
  140.                     soundtospeak(UART1_Recv_BUF[3]-0x30); //此函數(shù)將讀完一個(gè)數(shù)才退出
  141.             delay1();
  142.             soundtospeak(fen);        //播"分"語音
  143.             delay1();
  144.            }
  145. //////////////////////////////////////////////////////          
  146.                           
  147.                           
  148.                           
  149.                           
  150.                           
  151.                           
  152.                                 

  153.               UART1_Recv_count = 0;            //緩存清零
  154.               UART1_Overflow_Flag=0;        //允許串口繼續(xù)接收數(shù)據(jù)
  155.       }
  156.    }


  157. }
復(fù)制代碼




作者: 51黑專家    時(shí)間: 2016-4-18 20:05
這里也有一個(gè)http://www.zg4o1577.cn/mcu/1535.html
作者: dpjdsp    時(shí)間: 2022-1-8 10:47
51黑專家 發(fā)表于 2016-4-18 20:05
這里也有一個(gè)http://www.zg4o1577.cn/mcu/1535.html

666,很好很好!




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 91亚洲精| 国产精品久久精品 | 玖玖视频免费 | 天堂一区二区三区 | 亚洲第一成人影院 | 三级黄色片在线观看 | 最新中文字幕第一页视频 | 国产日韩欧美一区二区 | 免费一级做a爰片久久毛片潮喷 | 久久久美女 | 国产午夜精品理论片a大结局 | av免费网站在线观看 | 草草视频在线免费观看 | 欧一区二区 | 欧美日韩三区 | 日韩欧美在线视频 | 国内成人免费视频 | 国产精品久久久久一区二区三区 | 免费高潮视频95在线观看网站 | 性高朝久久久久久久3小时 av一区二区三区四区 | 国产午夜精品久久久 | 一区二区三区四区av | 亚洲成人免费 | 亚洲精品天堂 | 国产精品久久久久久久久久久免费看 | 91精品欧美久久久久久久 | 久久久久国产一级毛片 | 一本一道久久a久久精品综合 | 成人免费视屏 | 成人av免费在线观看 | 天堂一区二区三区 | 97人人超碰| 亚洲国产一区二区三区 | 日韩av在线一区 | 亚洲成人福利在线观看 | 精品国产青草久久久久福利 | h视频免费在线观看 | 91视频播放| 欧美色综合天天久久综合精品 | 欧美中文字幕在线 | 91久久综合|