基于多處理器技術(shù)的渦街流量計
2.4 PROFIBO-DP通信接口電路
MSP430F149是無外擴總線的微控制器,當(dāng)它與SPC3接口時,可以以Intel模式分配部分I/O口作為SPC3的地址、數(shù)據(jù)及控制總線接口,其接口時序通過編程用軟件實現(xiàn)。MAP430F149與SPC3之間的連接如圖3所示。
MAP430F149作為處理器單元管理通信事務(wù),SPC3協(xié)議芯片則完成數(shù)據(jù)的轉(zhuǎn)換和收發(fā)功能。SPC3在選用Intel芯片模式并工作于同步模式時,內(nèi)部地址鎖存器和解碼電路工作,所以CPU的低8位地址線不經(jīng)過573鎖存器直接與SPC3連接(低8位地址線與8位數(shù)據(jù)線分時共用傳輸線),P4口作為 A/DBUS復(fù)用。CPU的高8位地址線直接與SPC3的AB0~AB7相連,且必須為00000XXX(X表示0、1信號都行)。在此將SPC3的 AB3~AB10接地,AB0~AB2接單片機的P1.6、P1.4、P1.5,作為AB8~AB10地址線。此時片選信號輸入引腳XCS不起作用,接高電平;地址鎖存信號ALE起作用,接處理器P1.7。CPU與SPC3通過SPC3的雙口RAM交換數(shù)據(jù),SPC3的雙口RAM應(yīng)在CPU地址空間統(tǒng)一分配地址,CPU把這片RAM當(dāng)作自己的外部RAM。
由于MSP430F149采用低電源電壓3.3 V供電,而SPC3采用5 V供電,在硬件設(shè)計中要考慮3.3 V邏輯系統(tǒng)和5 V邏輯系統(tǒng)共存。為避免元器件的損壞和數(shù)據(jù)的丟失,此處采用兩片專用的SN74LVCC4245A電平轉(zhuǎn)換芯片,它是一個8位寬度的雙向I/O電平轉(zhuǎn)換器;中斷信號X/INT采用簡單電阻分壓的方法接P1.0。
SPC3與收發(fā)器連接時用于串行通信的四個引腳分別為XCTS、RTS、TXD和RXD。XCTS是SPC3的清除發(fā)送輸入信號引腳,表示允許SPC3發(fā)送數(shù)據(jù),低電平有效,這里始終接低電平。RTS為SPC3請求發(fā)送信號接收發(fā)器的輸出使能端。RXD和TXD分別為串行接收和發(fā)送端口。為提高系統(tǒng)的抗干擾性,SPC3內(nèi)部線路必須與物理接口在電氣上隔離,此處采用速率可達25 Mb/s的HCPL7721高速光耦,收發(fā)器采用sN75ALS176,足以滿足本系統(tǒng)的應(yīng)用。
3 系統(tǒng)軟件設(shè)計
3.1 單片機部分的軟件設(shè)計
單片機部分的任務(wù)是完成參數(shù)設(shè)置、數(shù)據(jù)采樣、為DSP進行Bootloader、數(shù)據(jù)顯示、數(shù)據(jù)傳輸?shù)?。程序按照模塊化設(shè)計思想設(shè)計,主要分為四大模塊:數(shù)據(jù)采樣程序、HPI通信程序、液晶顯示程序、遠傳程序。主程序流程圖如圖4所示。
3.2 DSP部分的軟件設(shè)計
先使DSP工作在HPI模式的Bootloader狀態(tài)下,準(zhǔn)備接收單片機傳輸?shù)某绦虼a,程序傳輸完成后,Bootloader狀態(tài)結(jié)束,DSP進入正常工作,向單片機發(fā)出開啟A/D請求,準(zhǔn)備接收單片機傳來的渦街信號數(shù)據(jù),接收到數(shù)據(jù)后,對接收到的數(shù)據(jù)進行數(shù)字信號處理,將處理結(jié)果通過HPI口傳回單片機。DSP部分的軟件設(shè)計流程圖如圖5所示。
評論