介紹了最新的51兼容射頻SoC(片上系統(tǒng))nRF9E5的系統(tǒng)框架、組成、工作方式和配置方法。分析了無線數(shù)據(jù)傳輸系統(tǒng)的結構和利用nRF9E5設計無線數(shù)據(jù)系統(tǒng)的通信協(xié)議;給出了系統(tǒng)的硬件原理圖和程序流程圖??偨YnRF9E5在無線數(shù)據(jù)傳輸系統(tǒng)設計中的優(yōu)勢。
介紹
NRF9E5是Nordic VLSI于2004年2月5日推出的系統(tǒng)級射頻芯片。它內置nRF905 433/868/915MHz收發(fā)器、8051兼容微控制器和4輸入10位80ksps A/D轉換器,是一個真正的片上系統(tǒng),如圖1所示。內置的nRF905收發(fā)器和nRF905芯片的收發(fā)器一樣,可以工作在ShockBurst(自動前綴、地址和CRC處理)模式。內置電壓調節(jié)模塊,可最大限度降低噪音,為系統(tǒng)提供1.9~3.6V工作電壓,QFN5 & TImes5毫米封裝,載體檢測。NRF9E5符合美國通信委員會和歐洲電信標準協(xié)會的相關標準。NRF905功耗低、運行可靠,非常適合無線數(shù)據(jù)傳輸系統(tǒng)的設計。圖11 nrf9e 5功能介紹
1.1 nRF9E5硬件
(1)微控制器
nRF9E5的片內微控制器兼容標準8051,指令時序與標準8051略有不同。典型的區(qū)別是nRF9E5的片內微控制器的指令周期是4到20個指令周期。中斷控制器支持五種擴展中斷源:ADC中斷、SPI中斷、RADIO1中斷、RADIO2中斷和喚醒定時器中斷。片內控制器還有三個與8052相同的定時器。1與8051相同的串行端口、定時器1和定時器2可用作異步通信的波特率發(fā)生器。此外,擴展了兩個數(shù)據(jù)指針,以便于從XRAM區(qū)域讀取數(shù)據(jù)。微處理器中有256B數(shù)據(jù)RAM和512B ROM。上電復位或軟件復位后,處理器自動執(zhí)行ROM引導區(qū)中的代碼。用戶程序通常在引導區(qū)的引導下從EEROM加載到一個4KB RAM中,這個4KB RAM也可以用來存儲數(shù)據(jù)。NRF9E5的大部分寄存器與標準8051的相同,只是增加了一些特殊功能寄存器,如RADIO(P2)、ADCCON、adcatah、ADCDATAL、adcstat、PWMCON、PWMDUTY、RCAP2L、RCAP2H、CKLFCON等。nRF9E5中P0、P1、P2的寄存器地址與標準8051中的相同,都是0x80、0x90、0xA0,但功能與標準8051中的不同。(2)CKLF時鐘、RTC喚醒定時器、GPIO喚醒和WTD
nRF9E5中有一個低頻時鐘CKLF,一直開著。晶振開始工作時,CKLF頻率為4hz;晶振不工作時,CKLF是低功耗RC晶振,只要VDD & ge;1.8V,連續(xù)工作。RTC喚醒定時器、WTD(看門狗)和GPIO喚醒都工作在CKLF頻率,保證芯片工作在功耗時這三個功能能夠完成。RTC喚醒定時器是一個24位可編程遞減計數(shù)器,而WTD是一個16位可編程遞減計數(shù)器。RTC喚醒定時器和WTD的周期一般為300μsS ~ 80 ms,默認為1 ms,RTC喚醒定時器也可以作為GPIO的輸出源,即當RTC喚醒定時器的初始化時間溢出時,可以產生一個程序脈沖用于GPIO輸出。
(3)SPI接口和模數(shù)轉換器
SPI(串行外設接口)的接口引腳包括MISO(從EEPROM的SDO接收數(shù)據(jù))、SCK(向EEPROM的SCK提供時鐘信號)、MOSI(向EEPROM的SDI發(fā)送數(shù)據(jù))和EECSN(向EEPROM的CSN發(fā)送使能信號)。SPI端口的MISO、SCK和MOSI與P1端口的低3位一起重用,功能之間的替換由寄存器SPI_CTRL控制。SPI硬件不產生任何片選信號,可以使用GPIO端口進行片選。通常,當系統(tǒng)上電時,SPI會自動連接到片外25320。程序加載后,MISO(P1.2)和MOSI(P1.0)可用于其他目的,如其他SPI器件或GPIO。
nRF9E5的芯片上有10位ADC,可以通過軟件在AREF和1.22V(內部基準電壓)之間設置A/D轉換基準電壓。A/D轉換器的四路輸入可以通過軟件選擇。通道0 ~ 3可以分別將相應引腳AIN0~AIN3上的電壓值轉換成數(shù)字值。通道4用于監(jiān)控nRF9E5的工作電壓。A/D轉換器默認工作在10位模式,通過軟件可以使其工作在6位、8位或12位模式。圖3 (4)射頻收發(fā)器
NR9E5收發(fā)器通過內部并口或內部SPI口與其他模塊通信,功能與單芯片射頻收發(fā)器nRF905相同。收發(fā)器通過片內MCU的并口或SPI口與微控制器通信,數(shù)據(jù)就緒,載波檢測和地址匹配信號可作為微控制器和中斷。
NRF905工作在ISM頻段433/868/915mhz。收發(fā)器由一個成品頻率合成器、一個功率放大器、一個調節(jié)器和兩個接收器組成。輸出功率、通道和其它RF參數(shù)可以通過對特殊功能寄存器RADIO(0xA0)進行編程來控制。發(fā)射模式下的射頻功耗為11mA,接收模式下為12.5mA。為了節(jié)約能源,收發(fā)器的開/關可以由程序控制。
1.2 nRF9E5收發(fā)器模式
與nRF401和nRF903不同,nRF9E5使用SPI接口進行MCU和無線模塊之間的數(shù)據(jù)傳輸。這部分是在nRF9E5芯片中的8051內核和nRF905射頻收發(fā)器之間完成的。在NR9E5芯片中的8051內核和nRF905射頻收發(fā)器之間完成。在nRF905芯片中的8051內核和nRF905射頻收發(fā)器之間完成。nRF9E5的收發(fā)器有三種工作模式:ShockBurst接收(RX)模式、ShockBurst發(fā)送(TX)模式和空空閑模式。當收發(fā)器處于空空閑模式時,微控制器仍在運行。
NRF9E5利用北歐VLSI公司ShockBurst的特性進行高速數(shù)據(jù)傳輸。與射頻數(shù)據(jù)相關的協(xié)議由nRF9E5芯片中的nRF9E5收發(fā)器自動處理。NR9E5只能通過簡單的SPI接口與nRF9E5進行數(shù)據(jù)傳輸,數(shù)據(jù)傳輸?shù)乃俣热Q于SPI接口的速度,可以在nRF9E5芯片的8051內核中進行配置。ShockBurst實現(xiàn)了低速數(shù)據(jù)輸入和高速數(shù)據(jù)輸出,從而降低了系統(tǒng)的平均能耗。在ShockBurst接收模式下,當接收到具有有效地址的RF數(shù)據(jù)包時,地址匹配寄存器位(AM)和數(shù)據(jù)就緒寄存器位(DR)通知片內MCU讀出數(shù)據(jù)。在ShockBurst傳輸模式下,nRF9E5會自動為要傳輸?shù)臄?shù)據(jù)添加前綴和CRC校驗。發(fā)送數(shù)據(jù)時,數(shù)據(jù)就緒寄存器位(DR)將通知MCU數(shù)據(jù)已經處理完畢。
當系統(tǒng)沒有傳輸和任務時,進入空空閑模式,nRF9E5在空空閑模式下有任務要處理時,可以在短時間內進入ShockBurst接收模式和ShockBurst發(fā)送模式??赵诳臻e模式下,晶振仍然工作,配置字中的內容不會丟失。
1.3載波檢測
在ShockBurst接收模式下,當nRF9E5工作通道的射頻載波出現(xiàn)時,載波檢測引腳(CD)置高,可以很好的避免相同工作頻率下不同發(fā)射機數(shù)據(jù)包之間的碰撞。當收發(fā)器準備好發(fā)送數(shù)據(jù)時,它首先進入接收模式,并檢測工作信道是否空空閑。載波檢測的標準一般比靈敏度低5dB,比如靈敏度為-100dBm,載波檢測功能檢測載波低至-105dBm。也就是說,如果載波低于-105dBm,載波檢測信號為低(一般為0)高于-95dBm,載波檢測信號為高(一般為VDD),在-105到95dBm之間,載波檢測信號可能為低也可能為高。
2無線數(shù)據(jù)傳輸系統(tǒng)
2.1系統(tǒng)組成
有三種無線數(shù)據(jù)傳輸系統(tǒng):點對點、點對多點和多點對多點。由于實際應用的需要,該系統(tǒng)由一臺PC機、一臺主接收機和若干數(shù)據(jù)終端組成。主接收機和數(shù)據(jù)終端之前的數(shù)據(jù)傳輸通過nRF9E5進行,構成一個點對多點的無線數(shù)據(jù)傳輸系統(tǒng)。在整個系統(tǒng)中,PC機與數(shù)據(jù)終端之間的無線通信采用433MHz作為載波頻率。為了避免同頻干擾問題,系統(tǒng)采用TDMA(時分多址)通信技術。主接收器通過逐一掃描檢測各數(shù)據(jù)終端是否收發(fā)通信請求或其他任務;終端使用中斷方式處理主接收器發(fā)送的地址信息,如果與本地地址匹配則執(zhí)行命令。這樣,上位機與數(shù)據(jù)終端之間的通信就轉化為主接收機與數(shù)據(jù)終端之間的通信,以及PC機與主接收機之間通過串口(USB或UART)的通信。整個無線數(shù)據(jù)傳輸系統(tǒng)的結構如圖2所示。
2.2通信協(xié)議
通信協(xié)議是雙方為實現(xiàn)信息交換而制定的規(guī)則。該系統(tǒng)采用時分多址通信技術,將點對多點的通信轉化為點對點的通信,因此在信源和信宿建立通信連接時必然會涉及到地址匹配問題。因為主接收器和數(shù)據(jù)終端之間的通信可能受到其他數(shù)據(jù)終端或外部環(huán)境的干擾,所以可能發(fā)生錯誤。因此,需要通信協(xié)議來保證數(shù)據(jù)傳輸?shù)目煽啃浴?/p>
nRF9E5只有一種協(xié)議格式,其中前綴是數(shù)據(jù)。設備地址包括本地計算機的地址和主接收器的地址。CRC校驗可以用8位或16位進行。
無線數(shù)據(jù)傳輸系統(tǒng)的實現(xiàn)
3.1系統(tǒng)硬件
圖3是無線數(shù)據(jù)傳輸系統(tǒng)中主接收機的硬件示意圖。終端的硬件原理與圖3類似,只是沒有與PC連接的串口,GPIO口與A/D轉換slogan對應的數(shù)據(jù)輸入端連接,如溫度傳感器、中斷信號等。ANT1和ANT2是天線連接引腳,可以使用PCB環(huán)形差分天線。晶體振蕩器的工作頻率為16MHz。2Aa320是EEPROM。nRF9E5上電后,系統(tǒng)根據(jù)引導程序將25AA320中和程序代碼復制到nRF9E5的4KB RAM中。LM1117是電源管理模塊,它將5V電平轉換為nRF9E5可用的3.3V。MAX3232CSE是一款用于nRF9E5串口與PC串口通信的電平轉換芯片。從圖3可以看出,用nRF9E5設計無線數(shù)據(jù)傳輸系統(tǒng)非常方便。NR9E5的外形尺寸很小,在外形尺寸要求非常嚴格的情況下更多使用NR9E5。
3.2系統(tǒng)軟件
無線數(shù)據(jù)傳輸主要由無線數(shù)據(jù)終端、主接收機和PC機組成,PC機通過串口與主接收機通信。整個系統(tǒng)的所有部分都服務于無線數(shù)據(jù)傳輸?shù)哪康?。因此,在整個系統(tǒng)的軟件設計中,無線數(shù)據(jù)傳輸是最重要的部分。如圖4和圖5所示,是無線數(shù)據(jù)傳輸?shù)氖瞻l(fā)流程。軟件應根據(jù)通信協(xié)議進行設計,并考慮數(shù)據(jù)的糾錯。錯誤檢測可以采用CRC校驗8位或16位模式。在圖4和圖5中,TRX_CE發(fā)送和接收使能寄存器位,DR是數(shù)據(jù)準備寄存器位,AM是地址匹配寄存器位,AUTO_RETRAN是自動重傳寄存器位。
結論4
利用nRF9E5片上射頻無線系統(tǒng),很容易實現(xiàn)體積小、穩(wěn)定性高的無線數(shù)據(jù)傳輸系統(tǒng),并可根據(jù)使用需要選擇433/868/915MHz三個工作頻段。nRF9E5芯片上的UART便于與PC進行串行通信,芯片上的A/D轉換器便于數(shù)據(jù)采集。借助nRF9E5的ShockBurst技術和電源監(jiān)控技術,無線數(shù)據(jù)傳輸系統(tǒng)的功耗更低,在設計中編寫更少的程序代碼來省電。
中承科技為客戶提供世界領先的無線射頻測試、無線綜合測試儀、通信測試儀表、無線通信測量、WiFi6e測試儀、藍牙綜測儀等解決,幫助客戶提高產品質量、降低生產成本、提升綜合競爭力。