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

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

QQ登錄

只需一步,快速開(kāi)始

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

單片機(jī)智能小車播放音樂(lè)的程序求助

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:709389 發(fā)表于 2020-4-23 14:24 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
在做智能小車時(shí)遇到點(diǎn)問(wèn)題,請(qǐng)教大佬們幫我看看問(wèn)題,我現(xiàn)在要實(shí)現(xiàn)小車按照我設(shè)定的路線行走,同時(shí)還要用蜂鳴器播放音樂(lè),應(yīng)該怎么做呢?另外就是我的按鍵切換到了播放音樂(lè)這個(gè)功能也就是case4的時(shí)候,在按鍵的時(shí)候不能切換到case1,讓音樂(lè)立馬停止應(yīng)該怎么做呢?
  1. void wudao(void)
  2. {
  3.         tingzhi();
  4.   Delay1ms(150);
  5.   qianjin();
  6.   Delay1ms(2000);
  7.         tingzhi();
  8.         Delay1ms(150);
  9.   youzhuan();
  10. Delay1ms(300);
  11.           qianjin();
  12.   Delay1ms(2000);
  13.           zuozhuan();
  14. Delay1ms(300);
  15.                   qianjin();
  16.   Delay1ms(2000);        
  17. }
  18. void music(void)   
  19. {

  20. //   unsigned char t1;
  21.         unsigned char p,m;   //m為頻率常數(shù)變量   
  22.   unsigned char i=0;   
  23.   TMOD&=0x0f;   
  24.   TMOD|=0x01;   
  25.   TH0=0xd8;TL0=0xef;   
  26.   IE=0x82;   
  27.         wudao();        
  28. play:
  29.    while(1)   
  30.     {   
  31.     a:          p=music_tab[i];
  32.        if(p==0x00)       { i=0, delay4(1000); goto play;}     //如果碰到結(jié)束符,延時(shí)1秒,回到開(kāi)始再來(lái)一遍   
  33.        else if(p==0xff)  { i=i+1;delay4(100),TR0=0; goto a;}  //若碰到休止符,延時(shí)100ms,繼續(xù)取下一音符   
  34.             else         {m=music_tab[i++], n=music_tab[i++];}//取頻率常數(shù) 和 節(jié)拍常數(shù)   
  35.                                                         TR0=1;                                             //開(kāi)定時(shí)器1   
  36.            while(n!=0) Beep=~Beep,delay3(m);                         //等待節(jié)拍完成, 通過(guò)P1口輸出音頻(可多聲道哦!)   
  37.        TR0=0;                                             //關(guān)定時(shí)器1   
  38.     }
  39.         }



  40. void main()                               //主程序入口
  41. {

  42.   bit RunFlag=0;                          //定義小車運(yùn)行標(biāo)志位
  43. // LedFlash=3000;                                       //對(duì)閃燈數(shù)據(jù)進(jìn)行初始化
  44. // EX1=1;                                               //同意開(kāi)啟外部中斷1
  45.   IT1=1;                                               //設(shè)定外部中斷1為低邊緣觸發(fā)類型
  46.   EA=1;                                                //總中斷開(kāi)啟
  47.   tingzhi();   
  48.         //初始化小車運(yùn)行狀態(tài)
  49.         
  50.   while(1)                                //程序主循環(huán)
  51.   {
  52.              if(P3_2 == 0)
  53.           {
  54.            delay_nms(10);
  55.            if(P3_2 == 0)
  56.            {
  57.                      temp++;
  58.                   while(!P3_2);
  59.            }
  60.           }
  61.        //   if(temp > 4)
  62.        //   {
  63.        //   temp = 1;
  64.        //   }
  65.           switch(temp)
  66.           {
  67.                     case 1:{Beep=1;tingzhi();TR0=0;break;        }
  68.                                 
  69.                 case 2:{Robot_Avoidance();EX1 = 0;break;}
  70.                 case 3:{EX1 = 1;break;}
  71.                 case 4:{tingzhi();music();EX1=0;break;}
  72.                                         default        :        
  73.                         {
  74.                                 temp=1;                        //恢復(fù)正常模式
  75.                                 break;
  76.                         }
  77.                
  78.           }

  79.   }
  80. }
復(fù)制代碼

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:709389 發(fā)表于 2020-4-23 14:26 | 只看該作者
上面第一個(gè)問(wèn)題沒(méi)說(shuō)明白,就是我現(xiàn)在是他先執(zhí)行的是wudao(),在播放音樂(lè),但是我想要兩個(gè)同時(shí)進(jìn)行應(yīng)該怎么做啊?求大佬們發(fā)表下看法
回復(fù)

使用道具 舉報(bào)

板凳
ID:709389 發(fā)表于 2020-4-24 15:24 | 只看該作者
沒(méi)大佬幫我看看嗎
回復(fù)

使用道具 舉報(bào)

地板
ID:737184 發(fā)表于 2020-4-24 18:08 | 只看該作者
music()是個(gè)死循環(huán)嗎?如果音符有0x00,就會(huì)一直死在里面,出不來(lái)
回復(fù)

使用道具 舉報(bào)

5#
ID:709389 發(fā)表于 2020-4-26 12:57 | 只看該作者
5018 發(fā)表于 2020-4-24 18:08
music()是個(gè)死循環(huán)嗎?如果音符有0x00,就會(huì)一直死在里面,出不來(lái)

0x00是音符的結(jié)束符啊,我現(xiàn)在是在main函數(shù)的case4跳不出來(lái)
回復(fù)

使用道具 舉報(bào)

6#
ID:709389 發(fā)表于 2020-4-26 14:34 | 只看該作者
怎么沒(méi)人啊
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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