<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DIY之樂:基于PIC32的以太網(wǎng)音箱設(shè)計(jì)案例,硬件框圖、器件選型、數(shù)據(jù)結(jié)構(gòu)、軟件流程

          DIY之樂:基于PIC32的以太網(wǎng)音箱設(shè)計(jì)案例,硬件框圖、器件選型、數(shù)據(jù)結(jié)構(gòu)、軟件流程

          作者: 時(shí)間:2014-05-09 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/256940.htm

          4軟件設(shè)計(jì)

          本系統(tǒng)的整個(gè)設(shè)計(jì)包括以太網(wǎng)音響終端設(shè)備軟件設(shè)計(jì)和PC服務(wù)器軟件設(shè)計(jì)。以太網(wǎng)音響終端設(shè)備實(shí)現(xiàn)了UDP數(shù)據(jù)通信,MP3軟解碼和DAC 驅(qū)動(dòng)。而PC服務(wù)器軟件實(shí)現(xiàn)了對(duì)MP3文件的初步分析,分析提取MP3幀;通過TCP/IP的socket,以MP3幀為最小單位,按每秒26耗描勻速發(fā)送給以太網(wǎng)音響終端設(shè)備。

          4.1PC服務(wù)器軟件設(shè)計(jì)

          4.1.1通信數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)

          PC服務(wù)器利用非連接UDP和以太網(wǎng)音響終端設(shè)備通信,因此在應(yīng)用上傳輸?shù)臄?shù)據(jù)大小不宜超過數(shù)據(jù)鏈路層上的最大數(shù)據(jù)單元。因?yàn)?,如果超過數(shù)據(jù)鏈路層的上最大數(shù)據(jù)單元,會(huì)造成數(shù)據(jù)在數(shù)據(jù)鏈路層上被拆分,而且由于數(shù)據(jù)在UDP上的不可靠性,會(huì)導(dǎo)致由于整批數(shù)據(jù)中的一個(gè)分段丟失導(dǎo)致了整個(gè)數(shù)據(jù)錯(cuò)誤,因此應(yīng)用上傳輸?shù)淖畲髷?shù)據(jù)大小應(yīng)小于數(shù)據(jù)鏈路層上的最大數(shù)據(jù)單元。

          上面就是發(fā)送的數(shù)據(jù)結(jié)構(gòu)。usDataHeader是數(shù)據(jù)包頭部分,其高4為該數(shù)據(jù)的類型:0x1表示該數(shù)據(jù)的為MP3幀,0x03表示該數(shù)據(jù)為MP3最后一幀;第27位到第20位為數(shù)據(jù)序號(hào);第19位到第16位為保留字段;低16位為MP3幀數(shù)據(jù)大小。ucDataBuffer為MP3數(shù)據(jù)幀。

          4.1.2應(yīng)用程序界面設(shè)計(jì)

          圖9展示了PC程序的主界面,其分別有服務(wù)器設(shè)置,設(shè)置IP地址、端口和音頻文件。音頻屬性中顯示了選中音頻的相關(guān)信息。以太網(wǎng)音響信息,會(huì)顯示終端設(shè)備的IP地址和它的端口號(hào)。播放控制和現(xiàn)實(shí)中現(xiàn)實(shí)了播放間隔和相應(yīng)的數(shù)據(jù)包長度,并且可以控制是否發(fā)送數(shù)據(jù)和停止。

          圖9 PC程序界面

          4.1.3應(yīng)用程序設(shè)計(jì)

          PC服務(wù)器可以配置綁定本機(jī)網(wǎng)卡地址和端口號(hào)。然后選擇MP3音頻節(jié)目,等待以太網(wǎng)終端設(shè)備發(fā)起數(shù)據(jù)請(qǐng)求。當(dāng)收到終端設(shè)備發(fā)來的連接請(qǐng)求時(shí),將其IP地址和發(fā)送數(shù)據(jù)的端口號(hào)記錄下來,作為向終端設(shè)備發(fā)送數(shù)據(jù)的地址并將該信息現(xiàn)實(shí)到PC程序的界面上。

          圖10PC服務(wù)器主程序

          圖11PC服務(wù)器等待請(qǐng)求線程

          圖12PC服務(wù)器發(fā)送數(shù)據(jù)定時(shí)器中斷

          PC服務(wù)器在開啟時(shí)候會(huì)運(yùn)行主界面程序(其流程圖如圖9所示)和接收終端設(shè)備請(qǐng)求線程(其流程圖如圖10所示)。當(dāng)用戶播放數(shù)據(jù)之后,程序會(huì)運(yùn)行定時(shí)器終端程序,定時(shí)發(fā)送MP3數(shù)據(jù)幀。

          DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY


          模擬信號(hào)相關(guān)文章:什么是模擬信號(hào)


          數(shù)字通信相關(guān)文章:數(shù)字通信原理




          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();