射頻SoC nRF9E5及無線數(shù)據(jù)傳輸系統(tǒng)的實(shí)現(xiàn)
摘要:介紹最新51兼容的射頻SoC(片上系統(tǒng))nRF9E5的系統(tǒng)框架、各個(gè)組成部分、工作方式和配置方法;分析無線數(shù)據(jù)傳輸系統(tǒng)的結(jié)構(gòu)和運(yùn)用nRF9E5進(jìn)行無線數(shù)據(jù)系統(tǒng)設(shè)計(jì)的通信協(xié)議;給出系統(tǒng)的硬件原理圖和程序流程圖;歸納nRF9E5在無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)中的優(yōu)勢(shì)。關(guān)鍵詞:nRF9E5 射頻SoC 數(shù)據(jù)傳輸 無線通信 51系列
引言
nRF9E5是Nordic VLSI公司于2004年2月5日推出的系統(tǒng)級(jí)RF芯片,其內(nèi)置nRF905 433/868/915MHz收發(fā)器、8051兼容微控制器和4輸入10位80ksps A/D轉(zhuǎn)換器,是真正的系統(tǒng)級(jí)芯片,如圖1所示。內(nèi)置nRF905收發(fā)器與nRF905芯片的收發(fā)器一樣,可以工作于ShockBurst(自動(dòng)處理前綴、地址和CRC)方式。內(nèi)置電壓調(diào)整模塊,最大限度地抑制噪音,為系統(tǒng)提供1.9~3.6V的工作電壓,QFN5×5mm封裝,載波檢測(cè)。nRF9E5符合美國(guó)通信委員會(huì)和歐洲電信標(biāo)準(zhǔn)學(xué)會(huì)的相關(guān)標(biāo)準(zhǔn)。由于nRF905功耗低,工作可靠,因此很適用于無線數(shù)據(jù)傳輸系統(tǒng)的設(shè)計(jì)。
圖1
1 nRF9E5功能介紹
1.1 nRF9E5硬件
(1)微控制器
nRF9E5的片內(nèi)微控制器與標(biāo)準(zhǔn)8051兼容,指令時(shí)序與標(biāo)準(zhǔn)8051稍有區(qū)別。典型的區(qū)別是:nRF9E5的片內(nèi)微控制器的指令周期為4到20個(gè)指令周期。中斷控制器支持5個(gè)擴(kuò)展中斷源:ADC中斷、SPI中斷、RADIO1中斷、RADIO2中斷和喚醒定時(shí)器中斷。片內(nèi)控制器還有3個(gè)與8052相同的定時(shí)器。1個(gè)和8051相同的串口,可以用定時(shí)器1和定時(shí)器2來作為異步通信的波特率產(chǎn)生器。此外,還擴(kuò)展了2個(gè)數(shù)據(jù)指針,以方便于從XRAM區(qū)讀取數(shù)據(jù)。微處理器中有256B的數(shù)據(jù)RAM和512B的ROM。上電復(fù)位或軟件復(fù)位后,處理器自動(dòng)執(zhí)行ROM引導(dǎo)區(qū)中的代碼。用戶程序通常是在引導(dǎo)區(qū)的引導(dǎo)下,從EEROM加載到1個(gè)4KB的RAM中,這個(gè)4KB的RAM也可作存儲(chǔ)數(shù)據(jù)用。NRF9E5的大部分寄存器和標(biāo)準(zhǔn)8051相同,只是增加了一些特殊功能寄存器,如RADIO(P2)、ADCCON、ADCDATAH、ADCDATAL、ADCSTATIC、PWMCON、PWMDUTY、RCAP2L、RCAP2H、CKLFCON等。nRF9E5中的P0、P1和P2口寄存器地址和標(biāo)準(zhǔn)8051中的相同,都是0x80、0x90、0xA0,但功能和標(biāo)準(zhǔn)8051中的有所不同。
(2)CKLF時(shí)鐘、RTC喚醒定時(shí)器、GPIO喚醒和WTD
nRF9E5內(nèi)有一個(gè)低頻的時(shí)鐘CKLF,該時(shí)鐘常開。當(dāng)晶振開始工作后,CKLF頻率為4Hz;晶振不工作時(shí),CKLF是一個(gè)低功耗RC晶振器,只要VDD≥1.8V,其連續(xù)工作。RTC喚醒定時(shí)器、WTD(看門狗)和GPIO喚醒全都工作在CKLF頻率,以保證芯片功耗工作時(shí)能夠完成這三個(gè)功能。RTC喚醒定時(shí)器是一個(gè)24位可編程控制的遞減計(jì)數(shù)器,WTD則是一個(gè)16位可編程控制遞減計(jì)數(shù)器。RTC喚醒定時(shí)器和WTD的循環(huán)周期一般在300μs~80ms,默認(rèn)為1ms。RTC喚醒定時(shí)器也能作GPIO的輸出源,也就是說,當(dāng)RTC喚醒定時(shí)器初始化時(shí)間發(fā)生溢出時(shí),能夠產(chǎn)生一個(gè)用作GPIO輸出的程序脈沖。
(3)SPI接口和A/D轉(zhuǎn)換器
SPI(串行外設(shè)接口)的接口引腳有MISO(接收EEPROM的SDO送來的數(shù)據(jù))、SCK(給EEPROM的SCK提供時(shí)鐘信號(hào))、MOSI(送數(shù)據(jù)到EEPROM的SDI)、EEC
[1] [2] [3] [4]