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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > EZMacTM媒體接入控制軟件(07-100)

          EZMacTM媒體接入控制軟件(07-100)

          —— EZRadio IA442x收發(fā)器的EZMacTM媒體接入控制軟件
          作者:Integration公司 時(shí)間:2009-03-03 來(lái)源:電子產(chǎn)品世界 收藏

            休眠模式

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

            初始化之后,MAC層處于“休眠”模式。在這種模式下,射頻硬件是完全關(guān)閉的,僅消耗不到0.3uA的電流。在開(kāi)始發(fā)射或接收之前,至少需要5ms來(lái)喚醒MAC。這5ms是晶體振蕩器達(dá)到穩(wěn)定所需的最長(zhǎng)時(shí)間。

            空閑模式

            使用喚醒命令喚醒收發(fā)器后,MAC就切換到“空閑”模式。在這種模式下,MAC等待進(jìn)一步的指令。雖然收發(fā)器中的晶振已經(jīng)在運(yùn)行,但射頻的各個(gè)模塊還是處于禁用狀態(tài),芯片的電流消耗大約是0.6mA。MAC系統(tǒng)始終處于該模式中,直到接收到下一個(gè)接收、發(fā)射或休眠指令為止。

            因?yàn)镋ZMac僅支持半雙工通信,所以不能同時(shí)發(fā)射和接收。

            發(fā)射模式

            發(fā)送發(fā)射指令之前,數(shù)據(jù)會(huì)和它的目標(biāo)地址一起裝載到MAC對(duì)應(yīng)的寄存器中。發(fā)射指令發(fā)送后,MAC開(kāi)始發(fā)射。芯片的電流消耗激增到26mA(在最大輸出功率的情況下,但實(shí)際的消耗電流取決于輸出功率的設(shè)定)。完成發(fā)射任務(wù)后,如果MAC還處在激活狀態(tài),它會(huì)自動(dòng)回到空閑模式或直接進(jìn)入休眠模式。

            接收模式

            在“空閑”模式中,如果MAC接收到接收指令,它會(huì)改變到“接收”模式。收發(fā)器的消耗功率增加到大約15mA左右。MAC掃描可用的頻率,以有效地實(shí)現(xiàn)數(shù)據(jù)的傳輸。

            一旦接收到一個(gè)有效的數(shù)據(jù)包,而且該數(shù)據(jù)包通過(guò)了所有激活的錯(cuò)誤檢測(cè)和地址過(guò)濾,MAC就把收發(fā)器工作模式改為節(jié)電模式,等待更高層的軟件讀出接收數(shù)據(jù)。讀出數(shù)據(jù)之后,MAC也會(huì)進(jìn)入“空閑”模式,或者直接進(jìn)入“休眠”模式。

            EZMac的包過(guò)濾方法

            EZMac具備智能化的包過(guò)濾功能。過(guò)濾器可由幾種選項(xiàng)來(lái)配置,以便能很好地滿足處于更高的軟件層(應(yīng)用層)的需求。

            EZMac被配置好后,更高層將只需發(fā)射和接收有效數(shù)據(jù)。EZMac則執(zhí)行所有的打包和拆包的任務(wù)。EZMac自動(dòng)運(yùn)行CRC,上層僅得到?jīng)]有錯(cuò)誤的數(shù)據(jù)包。

            圖2是數(shù)據(jù)包過(guò)濾的流程圖。

           

            圖2 數(shù)據(jù)包過(guò)濾的流程圖

            實(shí)時(shí)操作

            數(shù)據(jù)包的過(guò)濾在接收過(guò)程中實(shí)時(shí)進(jìn)行。這就意味著,當(dāng)接收到一段(字節(jié))數(shù)據(jù)包報(bào)頭時(shí),過(guò)濾器就會(huì)對(duì)數(shù)據(jù)包進(jìn)行檢查。如果相應(yīng)的過(guò)濾器檢測(cè)到數(shù)據(jù)包報(bào)頭的任何一部分有錯(cuò)誤時(shí),都會(huì)終止數(shù)據(jù)包的接收。

            這種技術(shù)使EZMac在接收進(jìn)程剛開(kāi)始的階段不去理會(huì)意外出現(xiàn)的無(wú)效數(shù)據(jù)包。終止數(shù)據(jù)包的接收后,EZMac會(huì)及時(shí)報(bào)告錯(cuò)誤并跳到下一個(gè)可用的頻率上,繼續(xù)搜尋有效的數(shù)據(jù)包。

            實(shí)時(shí)的數(shù)據(jù)包過(guò)濾節(jié)約了各種資源(處理器的消耗功率和電池的使用壽命), 而且,因?yàn)闊o(wú)需處理無(wú)效的數(shù)據(jù)包,所以減少了資源浪費(fèi)而達(dá)到了顯著提升系統(tǒng)性能的目標(biāo),同時(shí)也避免了其它頻率上的重要數(shù)據(jù)包的丟失。

            客戶ID過(guò)濾

            CID是使用EZMac協(xié)議的用戶的唯一ID號(hào)。雖然是否使用CID是可由用戶自選的,但是強(qiáng)烈推薦用戶使用CID,以避免安裝在同一區(qū)域的、均使用EZMac的不同系統(tǒng)之間出現(xiàn)意外的交互。如果使用了CID,CID會(huì)緊跟在前導(dǎo)和同步碼后發(fā)射出去。這就意味著在先入先出的算法中CID是第一個(gè)被讀到的字節(jié)。

            因此,數(shù)據(jù)包接收一開(kāi)始,EZMac就能識(shí)別出接收包的開(kāi)始,繼而確定它是否為系統(tǒng)內(nèi)的數(shù)據(jù)包。如果不是,MAC就會(huì)取消接收,并跳轉(zhuǎn)到下一個(gè)頻率,繼續(xù)搜索有效數(shù)據(jù)包。用戶可以從公司處得到CID。

            發(fā)射包過(guò)濾

            EZMac通過(guò)檢測(cè)接收包的報(bào)頭中的發(fā)送者ID字段來(lái)對(duì)接收的數(shù)據(jù)包進(jìn)行過(guò)濾。如果發(fā)射包過(guò)濾器啟用的話,MAC將僅從特定的某一節(jié)點(diǎn)或者某群節(jié)點(diǎn)處接收數(shù)據(jù)包

            群組是通過(guò)數(shù)據(jù)包報(bào)頭的發(fā)送方ID(SID)中的重要位和SFLT寄存器中的相同數(shù)位的掩碼運(yùn)算來(lái)定義的。如果出現(xiàn)以下情況,數(shù)據(jù)包才算通過(guò)過(guò)濾:

            SFLT & SMSK == SID & SMSK

            Where:

            &: Bitwise AND operator

            SID: 發(fā)送方ID號(hào)在接受到的數(shù)據(jù)包的報(bào)頭中。)

            如果把SMSK設(shè)置成0xFF時(shí),群過(guò)濾器的選項(xiàng)就不可用了,這時(shí)MAC只能從有SFLT地址的節(jié)點(diǎn)處接收數(shù)據(jù)包。

            目的地址過(guò)濾

            目的地址包濾包括3種地址過(guò)濾,這三種方式都要檢測(cè)接受數(shù)據(jù)包報(bào)頭的DID字節(jié):

            自綁定地址過(guò)濾

            多播地址過(guò)濾

            廣播地址過(guò)濾

            自綁定地址過(guò)濾器始終是可用的,但是多播地址和廣播地址的啟用和停用是各自獨(dú)立的。只要數(shù)據(jù)包能通過(guò)上述任何一個(gè)過(guò)濾器,就能通過(guò)目的地址過(guò)濾器。

            自綁定地址過(guò)濾

            只用通過(guò)自綁定地址(SFID)才能在通信網(wǎng)絡(luò)中識(shí)別EZMac。也只有那些報(bào)頭中DID字段顯示SFID的數(shù)據(jù)包才能通過(guò)自綁定地址過(guò)濾。

            多播地址過(guò)濾

            多播地址負(fù)責(zé)檢測(cè)接受包是否為一組組節(jié)點(diǎn)所專用,以及EZMac是否是該群組的一部分。多播定址有兩個(gè)方法:

            定義一個(gè)稱為多播地址(MCA)的專用地址。只有報(bào)頭中的DID字段等于MCA的那些數(shù)據(jù)包才能通過(guò)多播過(guò)濾器。

            在自綁定地址過(guò)濾中定義并使用多播屏蔽(MCM):

            DID & MCM == SFID & MCM

            where & is the bitwise AND operator

            其中&是逐位進(jìn)行的AND運(yùn)算。

            只能在同一時(shí)間激活MCA過(guò)濾和MCM過(guò)濾中的一個(gè)。實(shí)際的模式可通過(guò)PFCR寄存器的A/nM比特位來(lái)選擇到底使用哪一種過(guò)濾。

            廣播地址過(guò)濾

            廣播地址有專用的地址:0xFF。

            只有報(bào)頭中的DID字段是0xFF的數(shù)據(jù)包才能通過(guò)廣播地址過(guò)濾。

            注:整個(gè)目的地址過(guò)濾由數(shù)據(jù)包過(guò)濾控制寄存器的DFEN位來(lái)確定是否啟用。

            如果這個(gè)比特被清除,目的地址過(guò)濾將不可用,具有任何目地地址的數(shù)據(jù)包都可以被接收。

            包長(zhǎng)度過(guò)濾器

            這個(gè)過(guò)濾器用于檢測(cè)動(dòng)態(tài)變化的數(shù)據(jù)包長(zhǎng)度(參見(jiàn)“主控寄存器”一節(jié))。如果該過(guò)濾器可用,長(zhǎng)度超過(guò)最大容許接收長(zhǎng)度的數(shù)據(jù)包將無(wú)法通過(guò)。最大容許長(zhǎng)度可在MPL寄存器中設(shè)置。

            混雜模式

            若通過(guò)設(shè)置PCFR寄存器的PREN位來(lái)啟用混雜模式,則所有的地址過(guò)濾器和包長(zhǎng)度過(guò)濾器都被忽略。

            CRC過(guò)濾器

            CRC過(guò)濾器是唯一不能被忽略的過(guò)濾器。它對(duì)數(shù)據(jù)包的所有字節(jié)執(zhí)行CRC(包括報(bào)頭)。如果接收包沒(méi)有通過(guò)CRC,EZMac將報(bào)告出錯(cuò)并忽略該數(shù)據(jù)包。



          關(guān)鍵詞: Integration EZMacTM

          評(píng)論


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