电竞比分网-中国电竞赛事及体育赛事平台

分享

CC2500應(yīng)用技巧注意事項(xiàng)

 英子電氣 2012-07-17

CC2500應(yīng)用技巧注意事項(xiàng)

SPI 接口時(shí)序注意事項(xiàng):
CC2500通過4線SPI兼容接口(SI,SO,SCLK和CSn)配置。這個(gè)接口同時(shí)用作寫和讀緩存數(shù)據(jù)。SPI接口上所有的地址和數(shù)據(jù)轉(zhuǎn)換被最先在重要的位上處理。
SPI接口上所有的處理都同一個(gè)包含一個(gè)讀/寫位,一個(gè)突發(fā)訪問位和一個(gè)6位地址的頭字節(jié)一起作用。
在地址和數(shù)據(jù)轉(zhuǎn)換期間,CSn腳(芯片選擇,低電平有效)必須保持為低電平。如果在過程中CSn變?yōu)楦唠娖?,則轉(zhuǎn)換取消。
當(dāng)CSn變低,在開始轉(zhuǎn)換頭字節(jié)之前,MCU必須等待,直到SO腳變低。這表明電壓調(diào)制器已經(jīng)穩(wěn)定,晶體正在運(yùn)作中。除非芯片處在SLEEP或XOFF狀態(tài),SO腳在CSn變低之后總會立即變低。
芯片狀態(tài)位注意事項(xiàng)
當(dāng)頭字節(jié)在SPI接口上被寫入時(shí),芯片狀態(tài)字節(jié)在SO腳上被CC2550寫入。狀態(tài)字節(jié)包含關(guān)鍵狀態(tài)信號,對MCU是有用的。第一位s7,是CHIP_RDYn信號。在SCLK的在第一個(gè)正邊緣之前,這個(gè)信號必須變低。CHIP_RDYn信號表明晶體正處于工作中,調(diào)節(jié)數(shù)字供給電壓是穩(wěn)定的。(換句話說,SPI地址或數(shù)據(jù)是否寫入或讀出,可以通過讀SO腳上的狀態(tài)信息來獲取)
6,5和4位由狀態(tài)值組成。這個(gè)值反映了芯片的狀態(tài)。當(dāng)使XOSC空閑并使數(shù)字中心的能量開啟,所有其他模塊處于功率降低狀態(tài)。只有芯片處于此狀態(tài)時(shí),頻率和信道配置才能被更新。
當(dāng)芯片處于接收模式時(shí),RX狀態(tài)是活動的。同樣地,當(dāng)芯片處于傳輸模式時(shí),TX狀態(tài)是活動的。狀態(tài)字節(jié)中的后四位(3:0)包含F(xiàn)IFO_BYTES_AVAILABLE。為了進(jìn)行讀操作,這個(gè)區(qū)域包含可從RX FIFO讀取的字節(jié)數(shù)。為了進(jìn)行寫操作,這個(gè)區(qū)域包含可寫入TX FIFO的字節(jié)數(shù)。當(dāng)FIFO_BYTES_AVAILABLE=15,15或者更多的字節(jié)是可用/自由的。
狀態(tài)字節(jié)表
寄存器訪問注意事項(xiàng):
CC2500配置寄存器位于SPI地址從0x00到0x2F之間。所有的配置寄存器均能讀和寫。讀/寫位控制寄存器是讀或者寫。當(dāng)對寄存器寫時(shí),每當(dāng)一個(gè)待寫入的數(shù)據(jù)字節(jié)傳輸?shù)絊I腳時(shí),狀態(tài)字節(jié)將被送至SO腳。通過在地址頭設(shè)置突發(fā)位,連續(xù)地址的寄存器能高效地被訪問。這個(gè)地址在內(nèi)部計(jì)數(shù)器內(nèi)設(shè)置起始地址。每增加一個(gè)新的字節(jié)(每8個(gè)時(shí)鐘脈沖),計(jì)數(shù)器值增加1。突發(fā)訪問,不管是讀訪問還是寫訪問,必須通過設(shè)置CSn為高來終止。
對0x30-0x3D間的地址來說,突發(fā)位用以在狀態(tài)寄存器和命令濾波之間選擇(如下)。狀態(tài)寄存器只讀。突發(fā)讀取對狀態(tài)寄存器是不可取的,故它們每次只能被讀一個(gè)。
命令濾波訪問注意事項(xiàng)
命令濾波可被視為CC2500的單字節(jié)指令。通過命令濾波寄存器的選址,內(nèi)部序列被啟動。這些命令用來關(guān)閉晶體振蕩器,開啟傳輸模式和電磁波激活等。命令濾波寄存器的訪問和一個(gè)寄存器的寫操作一樣,但沒有數(shù)據(jù)被傳輸。就是說,只有R/W位(置為0),突發(fā)訪問(置為0)和六個(gè)地址位(0x30和0x3D之間)被寫。一個(gè)命令濾波可能在任何其他SPI訪問之后,而不需要將CSn拉至高電平。命令濾波立即被執(zhí)行,當(dāng)CSn高時(shí)SPWD和SXOFF濾波是例外。
FIFO 訪問注意事項(xiàng)
64字節(jié)TX FIFO和64字節(jié)RX FIFO通過0x3F被訪問。當(dāng)讀/寫位為0時(shí),TX FIFO被訪問,當(dāng)讀/寫位為1時(shí),RX FIFO被訪問。
TX FIFO是只寫的,而RX FIFO是只讀的。
突發(fā)位用來決定FIFO訪問是單字節(jié)還是突發(fā)訪問。單字節(jié)訪問方式期望地址的突發(fā)位為0及1數(shù)據(jù)字節(jié)。在數(shù)據(jù)字節(jié)之后等待一個(gè)新的地址,因此,CSn繼續(xù)保持低。突發(fā)訪問方式允許一地址字節(jié),然后是連續(xù)的數(shù)據(jù)字節(jié),直到通過設(shè)置CSn為高來關(guān)斷訪問。
如下頭字節(jié)訪問FIFO:
0x3F :單字節(jié)訪問TX FIFO
0x7F :突發(fā)訪問TX FIFO
0xBF :單字節(jié)訪問RX FIFO
0XFF :突發(fā)訪問RX FIFO
當(dāng)對TX FIFO寫時(shí),狀態(tài)字節(jié)對每個(gè)SO腳上的新數(shù)據(jù)字節(jié)是輸出量。這個(gè)狀態(tài)位能用來偵測對TX FIFO寫數(shù)據(jù)時(shí)的下溢。注意,狀態(tài)字節(jié)包含在寫入字節(jié)到TX FIFO的過程前空閑的字節(jié)數(shù)。當(dāng)最后一個(gè)適合TX FIFO的字節(jié)被傳送至SI腳后,被SO腳接收的狀態(tài)位會表明在TX FIFO中只有一個(gè)字節(jié)是空閑的。
傳輸FIFO可能會通過發(fā)布一個(gè)SFTX命令濾波而被淹沒。相似地,一個(gè)SFRX命令濾波會淹沒接收FIFO。當(dāng)進(jìn)入休眠狀態(tài)時(shí),兩個(gè)FIFO都被清空。
PATABLE 訪問
0x3E地址用來訪問PATABLE。PATABLE用來選擇PA能量控制設(shè)置。在接收此地址之后,SPI等待至少8個(gè)字節(jié)。通過控制PATABLE,能實(shí)現(xiàn)可控的PA能量上升和下降,減少的帶寬的ASK調(diào)制整型也如此。PATABLE是一個(gè)8字節(jié)表,定義了PA控制設(shè)置,為8個(gè)PA功率值(由FRENDO.PA_POWER的3個(gè)位的值所選擇)的每一個(gè)所使用。這個(gè)表從最低位(0)到最高位(7)可讀和寫,一此一位。一個(gè)索引計(jì)數(shù)器用來控制對這個(gè)表的訪問。每讀出或?qū)懭氡碇械囊粋€(gè)字節(jié),計(jì)數(shù)器就加1。當(dāng)CSn為高時(shí),計(jì)數(shù)值置為最小值。當(dāng)達(dá)到最大值時(shí),計(jì)數(shù)器由零重新開始計(jì)數(shù)。
對PATABLE的訪問是單字節(jié)或者突發(fā)訪問,由突發(fā)位決定。當(dāng)使用突發(fā)訪問時(shí),索引計(jì)數(shù)器的值增加;達(dá)到7時(shí)重新從0開始。讀/寫位控制訪問是寫訪問(R/W=0)或者讀訪問(R/W=1)。
如果一字節(jié)被寫入PATABLE,且這個(gè)值將要被讀出,那么,為了設(shè)置索引計(jì)數(shù)器的值重為0,CSn必須在讀訪問之前置為高。
注意,當(dāng)PATABLE進(jìn)入休眠狀態(tài)時(shí),所存儲的內(nèi)容會丟失,特別是第一個(gè)字節(jié)(索引為0)。

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多