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

          新聞中心

          EEPW首頁(yè) > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 基于nRF401芯片的多路消防栓無水監(jiān)測(cè)系統(tǒng)設(shè)計(jì)

          基于nRF401芯片的多路消防栓無水監(jiān)測(cè)系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2009-12-25 來源:網(wǎng)絡(luò) 收藏

          由于無線通信的特殊性,外部干擾使得誤碼率較高。因此,軟件首先要保證能夠識(shí)別噪聲和有效數(shù)據(jù),通信協(xié)議的就顯得十分重要。中采用如下通信協(xié)議:
          (1)數(shù)據(jù)發(fā)送使用查詢方式,接收使用中斷方式。
          (2)數(shù)據(jù)幀包含幀首、幀尾、地址、數(shù)據(jù)及校驗(yàn)部分,數(shù)據(jù)幀的格式如圖4所示。幀首采用雙字節(jié)0x55和0xAA,幀尾使用0x01結(jié)束;地址是用雙字節(jié)地址,共16b,地址分配上,各個(gè)電流采集模塊地址不相連,使其保持一定的容錯(cuò)性;數(shù)據(jù)部分為一個(gè)字節(jié);地址部分和數(shù)據(jù)部分使用16進(jìn)制ASCII送;幀的校驗(yàn)部分使用CRC4校驗(yàn)。

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

          (3)接收方檢測(cè)到連續(xù)的0x550xAA字節(jié),表示接收到有效的數(shù)據(jù)幀,如果幀校驗(yàn)通過,接收方根據(jù)命令請(qǐng)求后發(fā)送相應(yīng)數(shù)據(jù),若該幀結(jié)構(gòu)非法,則丟棄該幀,不做任何處理。
          (4)發(fā)送方在發(fā)送查詢請(qǐng)求后,將啟動(dòng)監(jiān)控定時(shí)器并等待接收應(yīng)答,如果在規(guī)定的時(shí)間內(nèi)沒有收到相應(yīng)的數(shù)據(jù)應(yīng)答,發(fā)送方將重新發(fā)送請(qǐng)求,并進(jìn)行錯(cuò)誤計(jì)數(shù),以免數(shù)據(jù)丟失。如果錯(cuò)誤計(jì)數(shù)達(dá)到一定值,發(fā)送方停止發(fā)送請(qǐng)求,進(jìn)入錯(cuò)誤處理。
          信息采集模塊軟件設(shè)計(jì),當(dāng)從機(jī)收到自己的地址并向主機(jī)應(yīng)答后,轉(zhuǎn)為接收模式。如隨后一段時(shí)間內(nèi)再?zèng)]有收到主機(jī)的查詢信號(hào),則認(rèn)為主機(jī)已經(jīng)正確接收到該從機(jī)發(fā)送回的應(yīng)答信號(hào),完成一次正確通信,從機(jī)轉(zhuǎn)為接收模式。信息采集模塊部分流程圖如圖5所示。


          4 結(jié) 語(yǔ)
          充分考慮了環(huán)境對(duì)通信的干擾,在調(diào)試中發(fā)送數(shù)據(jù)時(shí),應(yīng)首先嘗試不斷發(fā)送0X55AA,以檢驗(yàn)數(shù)據(jù)收發(fā)的誤碼率,如果誤碼率校大,應(yīng)對(duì)電路進(jìn)行重新設(shè)計(jì)。由于采用無線通信,進(jìn)行多點(diǎn)數(shù)據(jù)采集十分方便、快捷。尤其適合對(duì)廠房、倉(cāng)庫(kù)等復(fù)雜場(chǎng)所控制。


          上一頁(yè) 1 2 3 下一頁(yè)

          評(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); })();