ADSP2189M在船舶自動(dòng)識別系統(tǒng)開發(fā)中的應(yīng)用
摘要:本文介紹了ADSP2189M芯片在AIS船舶自動(dòng)識別系統(tǒng)開發(fā)中的應(yīng)用。分析了ADSP2189M芯片的外部硬件連接和內(nèi)部軟件的設(shè)置,以及各種片上資源的應(yīng)用,針對不同的通訊方式采用不同的連接模式,并實(shí)現(xiàn)了IDMA方式與上位機(jī)完成啟動(dòng)和通訊。
關(guān)鍵詞: ADSP2189M ;AIS系統(tǒng);ITU-R M.1371協(xié)議
引言
AIS系統(tǒng)是海上移動(dòng)VHF波段采用TDMA技術(shù)交換數(shù)據(jù)的一種避碰系統(tǒng),是國際海事組織規(guī)定每條船只必須安裝的設(shè)備之一,產(chǎn)品開發(fā)基于國際海事組織頒布的ITU-R M1371協(xié)議。在開發(fā)中采用ADSP2189M作為其數(shù)據(jù)處理平臺,完成各種數(shù)據(jù)處理,轉(zhuǎn)換,時(shí)隙的劃分,網(wǎng)絡(luò)登陸和維護(hù)等算法,實(shí)現(xiàn)其大部分的主要功能。系統(tǒng)的模式如圖1所示。
由電臺在161.975MHz和162.025MHz的兩個(gè)頻點(diǎn)上接收GMSK信號,經(jīng)GMSK調(diào)制解調(diào)芯片把模擬數(shù)據(jù)轉(zhuǎn)換成數(shù)字信號,數(shù)據(jù)流通過上位機(jī)完成對正確數(shù)據(jù)的判定,并且刪去數(shù)據(jù)段的起始、填充和結(jié)束位,把數(shù)據(jù)通過并行口發(fā)往DSP,DSP完成對接收到數(shù)據(jù)的處理與分析,建立整個(gè)海域的時(shí)隙表,完成TDMA的網(wǎng)絡(luò)登陸、維護(hù),把相關(guān)的數(shù)據(jù)再以不同格式發(fā)送到不同的串口輸出,按照ITU-R M.1371協(xié)議,以ITDMA(增量時(shí)分多址)方式接入網(wǎng)絡(luò),以SOTDMA(自控時(shí)分多址)方式連續(xù)運(yùn)行,從而達(dá)到整個(gè)網(wǎng)絡(luò)的TDMA完整性。因此,信號處理單元在系統(tǒng)中處于重要的位置。
圖1 DSP與外部設(shè)備接口
ADSP2189M芯片
ADSP2189M芯片是一種定點(diǎn)DSP,其指令周期為13.3ns,運(yùn)行速度可達(dá)75MIPS。處理器包括算術(shù)/邏輯單元(ALU),乘法/累加器(MAC)和桶狀移位器。存儲(chǔ)器采用哈佛結(jié)構(gòu),有48K的PRAM和32K的DRAM。兩個(gè)SPORT同步串口,一個(gè)定時(shí)器以及主機(jī)接口可以和主機(jī)處理器直接相連。DMA接口包括內(nèi)部DMA接口(IDMA)和字節(jié)DMA接口(BDMA)。
AIS系統(tǒng)中2189M的硬件設(shè)計(jì)
部分電路如圖2所示。
?芯片外接33M的晶體,其內(nèi)部自動(dòng)倍頻到66M;
?一個(gè)同步串口SPORT與外部的MCU相連,引腳要接上拉電阻;
?把SPORT1設(shè)置成第二種工作模式,并用軟件把I/O口模擬UART,與MAX232芯片連接,數(shù)據(jù)送往簡易顯示;
?采用IDMA方式與MCU相連,16條并口線連接,啟動(dòng)模式設(shè)置為IDMA方式,其4個(gè)MODEA~D設(shè)置分別為1,0,1,0;
?完成IDMA引導(dǎo)裝載的步驟如下;
PWD、EBR、BR、ERSET四個(gè)調(diào)試引腳必須外接上拉電阻;
最后寫PM(0X0000)的值,程序開始自動(dòng)執(zhí)行。
圖2 AIS系統(tǒng)的部分電路圖
圖3 串口接收時(shí)序圖
圖4 時(shí)隙劃分圖
ADSP2189M接口的軟件設(shè)計(jì)
Sport0的設(shè)置
采用同步串口與MCU通訊
DM(0X3FF6)—串口控制寄存器設(shè)置如表1所示。
表1中0~3:接收發(fā)送字長,我們定義為16位字長,設(shè)置為1111。6~7:幀同步信號電平,為0,高電平有效。8~9:幀同步信號源,為1,內(nèi)部產(chǎn)生幀同步信號。10~11:成幀方式,為1,第二成幀方式。12~13:幀同步,為0,發(fā)起通訊必須要幀同步信號,以后不再考慮幀同步信號。14:SCLK的產(chǎn)生方式,為1,內(nèi)部產(chǎn)生串行時(shí)鐘。
DM(0X3FF5)—串口時(shí)鐘分頻系數(shù)寄存器dm(sclkdiv)
在ADSP2189芯片中,采樣率與分頻數(shù)之間的關(guān)系如下式F(sclk)=f(clkout)/(sclkdiv+1)/2
其中,F(xiàn)(sclk)表示運(yùn)行時(shí)鐘,F(xiàn)(clkout)表示外接晶振的輸出時(shí)鐘,sclkdiv表示分頻數(shù),即存儲(chǔ)器應(yīng)該賦予的值。
當(dāng)控制寄存器設(shè)置好以后,串口接收時(shí)序如圖3所示,接收到的數(shù)據(jù)放在接收緩存區(qū),每接收完一組數(shù)據(jù),寫一次接收標(biāo)志位,主程序定期檢測標(biāo)志位,當(dāng)檢測到標(biāo)志位變化時(shí),調(diào)用接收處理子程序。
Sport1和timer的設(shè)置
由于DSP要輸出數(shù)據(jù)到簡易顯示,通過UART口相連接,因此把Sport1設(shè)置為第二種工作模式(如表2所示)。
DM(0X3FFF)—系統(tǒng)控制寄存器(如表3所示)。
表3中,12:SPORT0的使能,設(shè)置為1。11:SPORT1的使能,設(shè)置為1。10:SPOER1的功能選擇,設(shè)置為0。
用I/O口模擬UART,以9600波特率采樣,內(nèi)部定時(shí)中斷產(chǎn)生速率為3
評論