找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2662|回復: 2
打印 上一主題 下一主題
收起左側

單片機串口通信更新音樂數組的問題?

[復制鏈接]
跳轉到指定樓層
樓主
ID:129083 發(fā)表于 2017-4-14 10:53 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我通過串口向單片機發(fā)送數組,然后存儲在單片機數組內,在通過音樂播放程序調用該數組進行播放但出現有些時候音樂發(fā)生不正常,有時候又發(fā)聲正常,請問這是什么原因。(歌曲播放過程中有寫段是好的有些段播放不正確)
  1.         if(W==0&&biaozhi==1)//數據接收完畢可以播放該歌曲
  2.                 {  
  3.                         T=W;
  4.                         write_com(0x81);
  5.                          write_zfc("shishangzhiyou");
  6.                         write_com(0xc4);
  7.                          write_zfc("mamahao");
  8.                 for(i=0;i<80;i=i+3)
  9.                     {         //音樂數組長度 ,唱完從頭再來
  10.                         
  11.                
  12.                     k=table[i]+7*table[i+1]-1;//去音符振蕩頻率所需數據//table數組用于存放串口數據
  13.                     Timer0_H=FREQH[k];
  14.                     Timer0_L=FREQL[k];
  15.                     Time=table[i+2];          //節(jié)拍時長
  16.                    // i=i+3;
  17.                     Song();
  18.                                 if(T!=W)
  19.                                         break;
  20.                 }
  21.                 }
  22.                 else
  23.                 {
  24.                         W=1;
  25.                 }
復制代碼


這是我用來播放通信歌曲的程序段,哪位大神幫忙看看,為什么會這樣
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:189542 發(fā)表于 2017-4-14 14:52 | 只看該作者
#include<reg51.h> #include<string.h> #define addr 0x02//從機2的地址 #define _SUCC_ 0x0f//數據傳送成功 #define _ERR_ 0xf0//數據傳送失敗 unsigned char aa=0xff;//主機與從機之間通信標志 unsigned char Buff[20];//數據緩沖區(qū) //串口初始化函數 void serial_init() { TMOD=0x20; //定時器1工作于方式2 TH1=0xfd; TL1=0xfd; //波特率為9600 PCON=0; SCON=0xd0; //串口工作于方式3 TR1=1; //開啟定時器 TI=0; RI=0; } //接收數據函數 unsigned char RECE_data(unsigned char *Buff) { unsigned char i,temp; unsigned char lenth; unsigned char check; RI=0; //接收數據長度 while(!RI); if(RB8==1) //若接收到地址幀,則返回0xfe return 0xfe; lenth=SBUF; RI=0; check=lenth; for(i=0;i<lenth;i++) //接收數據
回復

使用道具 舉報

板凳
ID:129083 發(fā)表于 2017-4-16 08:40 | 只看該作者
XIN_XIN 發(fā)表于 2017-4-14 14:52
#include #include #define addr 0x02//從機2的地址 #define _SUCC_ 0x0f//數據傳送成功 #define _ERR_ 0xf ...

不懂…………
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表