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