趙慶平,邵 芬,苗曙光
(淮北師范大學物理與電子信息學院,安徽 淮北 235000)
基于SOPC的射頻模塊控制器的設計*
趙慶平,邵 芬,苗曙光
(淮北師范大學物理與電子信息學院,安徽 淮北 235000)
針對ISM射頻模塊UTC-903SE,提出一種基于嵌入式軟核的設計方法,在FPGA片上系統(tǒng)中構建出UTC-903SE控制器IP核以及嵌入式處理器Nios II軟核。通過FPGA控制無線射頻模塊,可以實現數據的無線收發(fā),并具有實時性,為需要遠距離采集數據的場合提供了方便快捷的方法。
現場可編程門陣列;可編程片上系統(tǒng);Nios;工業(yè)、科學和醫(yī)療頻段
隨著微電子工業(yè)的發(fā)展,現場可編程門陣列(Field Programmable Gate Array,簡稱FPGA)作為可編程邏輯器件得到了越來越廣泛的應用。可編程片上系統(tǒng)(System on a Programmable Chip,簡稱SOPC)是一種片上系統(tǒng)(SOC),它是由單個芯片完成整個系統(tǒng)的主要邏輯功能。作為可編程系統(tǒng),它的設計方式比較靈活,可刪減、擴展、升級[1-4]。
由于無線通信技術的快速發(fā)展,工業(yè)、科學和醫(yī)療頻段(簡稱ISM頻段)前端射頻技術已經是通訊和弱電領域的核心技術,受到了廣泛的關注。ISM頻段具有使用不受限制,收發(fā)設備價格低廉等優(yōu)點[5]。
本文設計采用的主控芯片是ALTERA公司的cyclone II 系列芯片EP2C35F484C8N。該芯片有3 326個可配置邏輯單元和475個用戶引腳,不僅滿足本設計的要求,而且有較大的升級空間。ISM射頻模塊采用杭州威步科技有限公司UTC-903SE模塊。該模塊為UART串行數據接口,操作簡易且適用性廣,實測距離可達1 800~2 000 m,FSK調制,工作頻率可配置在430~440 MHz,適合多節(jié)點的場合。
本文實驗采用兩個相同的上述開發(fā)板(取名為A和B),用來實現數據的無線發(fā)射和接收[6-7]。該實驗是將實時采集的溫度數據通過開發(fā)板A讀取出來,按照已設定的頻率無線發(fā)送出去,最后在開發(fā)板B上接收并顯示出來。方案的總體設計如圖1所示。
2.1 構建SOPC系統(tǒng)
在兩個開發(fā)板的FPGA芯片上構建SOPC硬件系統(tǒng),包括FLASH控制器、SDRAM控制器、UTC-903SE模塊、溫度傳感器控制模塊和FIFO模塊。FLASH用于存儲硬件配置和應用程序, SDRAM用做數據緩存區(qū),UTC-903SE模塊用于控制射頻模塊發(fā)送數據和接收數據。構建的SOPC硬件系統(tǒng)如圖2所示。
圖1 方案的總體設計
圖2 UTC-903SE模塊
圖3 UTC-903SE 模塊引腳定義
2.2 UTC-903SE模塊
UTC-903SE模塊共有7個引腳,定義如圖3所示,表1給出了UTC-903SE模塊的接口定義。UTC-903SE模塊與FPGA的引腳連接如圖4所示。
Nios II處理器的軟件程序設計使用硬件抽象層(Hardware Abstration Layer,簡稱HAL)系統(tǒng)庫。HAI系統(tǒng)庫為程序員提供了應用程序與底層硬件交互的設備驅動接口,簡化了應用程序的開發(fā),同時還為應用程序與底層硬件驅動劃分了一條清晰的分界線,從而大大提高了應用程序的可復用性,使得應用程序不受底層硬件變化的影響,實現系統(tǒng)硬件和應用程序之間的通信。HAI 應用程序接口 (Application Program Interface,簡稱API)集成了ANSI C標準庫,可以使上層程序像訪問C函數庫一樣訪問系統(tǒng)硬件和軟件[8-9]。程序流程如圖5所示。
表1 UTC-903SE引腳說明
圖4 主控芯片與模塊連接示意圖
控制器的發(fā)送代碼為:
void main(void)
{
alt_u8 t[3];
FILE *fp;
while(1)
{
t[0]=IORED_BALTERC_AVDLON_PPO_DETA(WAMDU_D_BCSE);
t[1]=IORED_ELTERA_AVHLON_PIO_DETA(WAMDU_L_BCSE)
fp = fopen("/dev/UTC903SE_UART","r+");
fwrite(t,3,1,fp);
fclose(fp);
圖5 UTC-903C模塊程序流程
}
}
控制器的接收代碼為:
void main(void)
{
aly_u8 r[3];
FILE *fp;
while(1)
{
fp = fopen("/dev/UTC903
SE","r+");
fread(t,3,1,fp);
fclose(fp);
IOWT_ALRERS_AVALOM_PIO_DETA(WENSU_H_BOSE,r[1]);
IOWT_ALRERS_AVALOM_PIO_DETA(WENSU_L_BOSE,r[2]);
printf("r[0]==%xm",r[1]);
printf("r[1]==%xm",r[2]);
}
}
系統(tǒng)啟動后,首先由開發(fā)板A將采集的溫度數據通過UTC-903SE模塊發(fā)送出去,然后由開發(fā)板B的UTC-903SE模塊接收并通過串口顯示在顯示器上。經測試,在上位機中能夠正確顯示出溫度數據,改變發(fā)送溫度和發(fā)送距離后,接收系統(tǒng)均能正確反應,并在上位機上顯示出來,這說明控制器達到了設計要求。
本文設計了一種基于FPGA的SOPC Builder和Nios II軟硬件結合的射頻模塊控制器,實現了數據的無線傳輸。該設計方法簡便快捷,移植性強,適用性廣。實驗結果表明,所設計的無線模塊控制器方案,易于開發(fā),功能正常,可實現無線接收和發(fā)送。
[1]陳文娟,石江宏,陳凌宇.基于SOPC的高速通信接口設計[J].電子測量技術,2010,33(7):117-124.
[2]陳東明,葉玉堂,蒲亮,等. 基于SOPC可重構的圖像采集與處理系統(tǒng)設計[J].電子器件,2011,34(2):232-236.
[3]王培元.基于FPGA的SOPC設計[J].襄樊學院學報,2010,31(8):42-44.
[4]尚媛園,楊新華,徐達維.基于SOPC技術的高速圖像采集控制系統(tǒng)的設計與研究[J].傳感技術學報,2011,24(6):864-869.
[5]黃玉蘭.一種新的ISM頻段低噪聲放大器設計方法[J].電子技術應用,2010(5):60-62.
[6]宗曉萍,劉巍.無線溫濕度采集系統(tǒng)設計[J].河北工業(yè)科技,2010,27(6):500-502.
[7]王智超,翁惠輝.基于無線通信模塊的溫濕度采集系統(tǒng)設計[J].長江大學學報,2010,3(7): 272-274.
[8]石紅曉,吳光敏.基于Nios II處理器的TFT-LCD圖形顯示設計[J].微型機與應用,2010,29(18):37-43.
[9]鄭見靈,原亮,較文成,等.基于Nios II的TFT-LCD控制器的設計與實現[J]. 計算機技術與發(fā)展,2009(4):192-195.
Design of RF module controller based on SOPC
ZHAO Qing-ping, SHAO Fen, MIAO Shu-guang
(SchoolofPhysicsandElectronicInformation,HuaibeiNormalUniversity,Huaibei235000,China)
The paper puts forward a design method using embedded soft core based on ISM RF module UTC-903SE. It constructs UTC-903SE controller IP core and the embedded processor Nios II soft core on a chip system of FPGA. The design can realize real-time wireless transceiver of data. The design provides a convenient and fast method for many remote data acquisition. The design put forward a simple and fast method for many remote data acquisition.
field programmable gate array; system-on-a-programmable-chip; Nios II; ISM
國家自然科學基金資助項目(41275027);安徽高校省級自然科學研究項目(KJ2013Z228)。
2013-09-18
趙慶平(1972-),男,遼寧錦州人,碩士,淮北師范大學物理與電子信息學院講師。
1674-7046(2014)01-0073-04
TP331.2
A