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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 分享A7105無(wú)線模塊調(diào)試點(diǎn)對(duì)點(diǎn)通信的筆記

          分享A7105無(wú)線模塊調(diào)試點(diǎn)對(duì)點(diǎn)通信的筆記

          作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏
          A7105無(wú)線模塊相比nRF2401和nRF24L01的寄存器來(lái)說(shuō),是比較多的,有51個(gè),開(kāi)始比較難看得懂,但編寫(xiě)程序先要先看一些重要的寄存器,和提供的測(cè)試程序,了解其相關(guān)的寄存器的配置和初始化的配置,還是了解其六種相關(guān)的模式,分別是STBY,SLEEP,PLL TX ,RX ,TX FIFO,RX FIFO模式的配置.

          初始化的配置:

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

          1、復(fù)位芯片

          2、寫(xiě)入ID地址(2到4個(gè)字節(jié),可進(jìn)行配置,不過(guò)一般的話(huà)用4個(gè)字節(jié)的地址)

          3、配置相關(guān)的寄存器(除特殊的以外)

          特殊的寄存器,不進(jìn)行配置有:

          // 0x00 mode register, for reset

          // 0x05 fifo data register

          // 0x06 id code register

          // 0x23 IF calibration II, only read

          // 0x32 filter test register

          4、進(jìn)行芯片的校驗(yàn).

          5、配置好信道.發(fā)射與接收相差一個(gè)信道,比如發(fā)送用到5信道的話(huà),6接收就必須用到信道4.

          6、然后進(jìn)入STBY模式.

          發(fā)送數(shù)據(jù)的情況:

          1、將發(fā)送的數(shù)據(jù)選寫(xiě)入TX FIFO,

          2、把模式設(shè)置成TX

          3、等待GDIO1是否由高變低,判斷是否發(fā)送完.發(fā)送完后,芯片會(huì)自動(dòng)進(jìn)入STBY模式.

          接收數(shù)據(jù)的情況:

          1、GDIO1連接到外部中斷引腳,設(shè)為下降沿中斷,同時(shí)打開(kāi)中斷

          2、在主程序中查詢(xún)中斷標(biāo)志位IE0是否為1,為1的話(huà)說(shuō)明接收到數(shù)據(jù).

          3、讀取寄存器的CRC值,是不是正確,正確則接收數(shù)據(jù),不正確測(cè)丟失數(shù)據(jù)不要.

          以上是A7105無(wú)線模塊的調(diào)試點(diǎn)對(duì)點(diǎn)通信的一些大概流程.



          評(píng)論


          技術(shù)專(zhuān)區(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); })();