時間:2008-08-14 10:27:00來源:ronggang
(BRR為波特率選擇寄存器的十六位值)
在本系統的串行通信過程中,波特率設為9600bit/s,八位數據位,一個停止位,奇校驗。為了實現通訊,PC機與TMS320LF2407之間必須采用相同的通信協議。
5 串行通信硬件接口電路及軟件編程
5.1 硬件接口電路
PC機串行口使用的是標準RS-232-C電平,低電平“0”在+5V~+15V之間,高電平“1”在-5V~-15V之間。而TMS320LF2407的電源為3.3V,低電平“0”在+0.4V~+0.8V之間,高電平“1”在+2.4V~+2.8V之間。為了使二者電平匹配,在DSP與PC機之間必須進行電平邏輯轉換,本系統中采用的是MAXIM公司的MAX232集成芯片。具體硬件接口電路如圖所示。
[align=center]
圖2 DSP與PC機串行通信硬件接口圖[/align]
DSP中通信程序設計
DSP的SCI模塊使用中斷來接收PC機所傳送來的參數,供控制算法主程序調用,DSP中串行數據接收流程圖如圖3所示。
[align=center]
圖3 DSP串行數據接收流程圖[/align]
DSP接收的數據為十六位,所以需要對高八位和低八位分別進行接收,高八位左移八位加上低八位,就是所要的十六位數據,接收的數據依次保存在首地址為4002h的連續單元中。下面為SCI模塊初始化和接收中斷兩部分的匯編語言源程序。
SCI初始化程序如下:
LDP #0E1h
SPLK #0003h, MCRA
; 選中SCI輸入輸出引腳
LDP #0E0h
SPLK #27h, SCICCR
; 1個停止位,八位數據,奇校驗,
; 空閑線方式,禁止自測試
SPLK #0003h, SCICTL1
; 允許TX,RX和內部SCICLK
; 禁止RXERR,SLEEP,TXWAKE
SPLK #0002h, SCICTL2
; 允許RX中斷,禁止TX中斷
SPLK #0002h, SCIHBAUD
SPLK #0008h, SCILBAUD
; 40MHz SYSCLK下,波特率為9600bps
SPLK #0023h, SCICTL1
; 放棄復位SCI
LAR AR0, #SCITXBUF
LAR AR1, #SCIRXBUF
; 載入兩個緩沖器的地址
LDP #0
SPLK #04002h, RTB
; 定義接收數據的首地址
SPLK #01h, NUM
; 設置判別高8位還是低8位的變量
SPLK #0, RTD
; 接收數據寄存器
串行數據接收中斷程序如下:
SCI_INT:
LDP #0
LACC #02h
SUB NUM
BCND high, GT
; 判斷是否為高8位數據
MAR *, AR1
LACC *, AR1
ADD RTD
SACL RTD
LACC RTB
TBLW RTD
ADD #1
SACL RTB
SPLK NUM
high:
; 讀高8位數據
MAR *, AR1
LACC *, AR1
SACL RTD
LACC RTD, 8
SACL RTD
SPLK #02h, NUM
PC機中通信程序設計
在PC機中,串口通信的程序是用Visual Basic 6.0開發的,調用的是Microsoft 公司提供的 MSComm 控件。
MSComm 控件為應用程序提供了通過串行接口收發數據的簡便方法,在VB、VC、Delphi等語言中均可使用。它提供兩種處理通信的方式:事件驅動方式和查詢方式。在這里我們采用的是事件驅動方式,這種方式是處理串行端口交互作用的一種非常有效的方法,其優點是程序響應及時,可靠性高。在程序中可以利用該控件的OnComm事件來捕獲并處理發送和接收等通信事件;OnComm事件還可以檢查和處理通信錯誤。MSComm 控件的主要屬性及其功能如表1所示。
表1 MSComm 控件的主要屬性及功能
圖4 上位機通信程序界面[/align]
6 結論
在減搖水艙試驗臺架控制系統中,采用PC機和DSP的主從式結構。為了提高實時控制的效果,需要進行上位機與下位機之間的串行通信。本文設計的串行通信方法,簡便可靠,并且在實際應用中取得了良好的效果。
參考文獻
[1]劉和平,等. TMS320LF240XDSP 結構、原理及應用. 北京:北京航空航天大學出版社,2002.
[2]清源科技. TMS320LF240XDSP 應用程序設計教程. 北京:機械工業出版社,2003.
[3]仵浩,等. Visual Basic串口通信工程開發實例導航. 北京:人民郵電出版社,2003.
標簽:
上一篇:先進成熟的專用軍工靶場測試...
傳動網版權與免責聲明:凡本網注明[來源:傳動網]的所有文字、圖片、音視和視頻文件,版權均為傳動網(www.cdcst56.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-09-08
華為昇騰Atlas800iA2 910B服務器Deepsee...
2025-09-04
2025-08-06
2025-07-08
2025-06-30
2025-06-16