Silicon Labs無線收發(fā)器SI446x的應(yīng)用技巧
Silicon Labs的無線Sub-G產(chǎn)品Si446x現(xiàn)在已經(jīng)越來越多的用于表計(jì)產(chǎn)品,如氣表、電表等。由于在表計(jì)類老產(chǎn)品中TI的CC1101系列應(yīng)用非常廣泛,所以客戶使用Si446x時(shí),就會(huì)遇到和CC1101兼容問題,本文檔將解決此問題。
本文引用地址:http://m.butianyuan.cn/article/270377.htmSi446x 具有硬件CRC、Whitening和軟件CRC、Whitening,因?yàn)椴皇褂肅RC、Whitening和Manchester 時(shí),Si446x和CC1101通信配置比較簡(jiǎn)單,可以參照Si446x works with CC1101_v1.11.pdf文檔,本文檔只討論CRC、Whitening和Manchester同時(shí)使能時(shí)配置方法。
Si446x 提供軟件CRC、Whitening算法支持和CC1101兼容,需要將寄存器PKT_WHT_BIT_NUM 0x1205的SW_WHT_CTRL和SW_CRC_CTRL位置1,使能SW whitening和SW CRC。為了確保Si446x開啟SW whitening特性可以和CC1101通信,寄存器PKT_WHT_SEED_15_8 0x1203和PKT_WHT_SEED_7_0 0x1204需要都設(shè)置為0xFF。
Si446x最為發(fā)送端時(shí),包格式需配置如下:
由于已經(jīng)開啟SW CRC和SW Whitening,所以必須關(guān)閉硬件CRC和Whitening,以免重復(fù)計(jì)算CRC和Whitening,寄存器 PKT_FIELD_1_CONFIG的PN_START和WHITEN位都清零,寄存器PKT_FIELD_1_CRC_CONFIG也配置為 0x00。關(guān)閉了硬件CRC,為了發(fā)送由軟件CRC計(jì)算出的2個(gè)字節(jié)CRC的值,發(fā)送數(shù)據(jù)時(shí)需要多發(fā)送兩個(gè)字節(jié)給TX FIFO作為CRC字節(jié),并且配置Field1的長(zhǎng)度時(shí),也需要額外增加2個(gè)字節(jié)。比如發(fā)送數(shù)據(jù)為7個(gè)字 節(jié),PKT_FIELD_1_LENGTH_12_8和PKT_FIELD_1_LENGTH_7_0則配置成0x00,0x09。下圖是數(shù)據(jù)長(zhǎng)度為7的 示意圖,其中最后兩個(gè)字節(jié)可以是任意值。
Si446x最為接收端時(shí),包格式需配置如下:
由 于已經(jīng)開啟SW CRC和SW Whitening,所以必須關(guān)閉硬件CRC和Whitening,以免重復(fù)計(jì)算CRC和Whitening,寄存器 PKT_FIELD_1_CONFIG的PN_START和WHITEN位都清零,寄存器PKT_FIELD_1_CRC_CONFIG也配置為 0x00。關(guān)閉了硬件CRC,為了發(fā)送由軟件CRC計(jì)算出的2個(gè)字節(jié)CRC的值,發(fā)送數(shù)據(jù)時(shí)需要多發(fā)送兩個(gè)字節(jié)給TX FIFO作為CRC字節(jié),并且配置Field1的長(zhǎng)度時(shí),也需要額外增加2個(gè)字節(jié)。比如發(fā)送數(shù)據(jù)為7個(gè)字 節(jié),PKT_FIELD_1_LENGTH_12_8和PKT_FIELD_1_LENGTH_7_0則配置成0x00,0x09。下圖是數(shù)據(jù)長(zhǎng)度為7的 示意圖,其中最后兩個(gè)字節(jié)可以是任意值。
Si446x最為接收端時(shí),包格式需配置如下:
同 樣由于使能了SW CRC和SW Whitening,需要將寄存器PKT_FIELD_1_CONFIG的PN_START和WHITEN位都清零,寄存器 PKT_FIELD_1_CRC_CONFIG也配置為0x00,關(guān)閉硬件CRC和Whitening。如果配置了寄存器PKT_CONFIG1 0x1206的PH_FIELD_SPLIT位,則TX和RX的寄存器分開配置,需要將寄存器PKT_RX_FIELD_X_CONFIG (X = 1, 2)的PN_START 和WHITEN位清零,寄存器PKT_RX_FIELD_X_CRC_CONFIG (X = 1, 2)設(shè)置為0x00。由于禁止了硬件CRC,接收數(shù)據(jù)時(shí)就不會(huì)自動(dòng)接收CRC字節(jié),并且接收的Field2的長(zhǎng)度只包含了Address和Data。為了 能夠從空中接收CRC字節(jié),則需要告訴IC多接收2個(gè)字節(jié),這2個(gè)字節(jié)就是CRC字節(jié),所以需要調(diào)整接收端的包的長(zhǎng)度,分以下兩種情況配置。
網(wǎng)線測(cè)試儀相關(guān)文章:網(wǎng)線測(cè)試儀原理
評(píng)論