MCU與DSP的SPI通信設計
中斷程序如下:
LDP #6
LACC K;K=K+1
ADD #1
SACL K
MAR *,AR2;AR2為存儲單元地址指針
LDP #DP_PF1
LACC SPIRXBUF
AND #00FFH;高位屏蔽掉
SACL *+
LDP #6
LACC K
SUB #1;判斷是否為指令數據
BCND L1,NEQ
LDP #0
LACC #70H
SUB #0
BCND L3,NEQ;不是0則跳到L3
BL2;是0則跳到L2
L1: …;判斷是否是第2個數據
L4: LACCK;判斷數據是否傳送完畢
SUB #05H
BCND L5,EQ
BL2
L5:LDP #0;數據全部發送完畢
LACC 72H
LDP #6
SACL SPEED;賦值給相應變量
……
L3: SPLK K,0;K=0
LDP #0
LAR AR2,#70H;地址指針指回70H
L2: CLRC INTM;開中斷
RET
3 結論
實驗證明,應用SPI通信進行MSP430單片機與DSP之間的串口通信完全滿足伺服系統實時性的要求。同時,由于SPI接口功能比較完善,通信協議清晰,時序簡單,無須外加其他元器件即可方便地實現DSP與主機之間數據的串行通信,簡化了系統設計,增強系統的實時處理能力和應用范圍。結構靈活性強,便于擴展,同時減輕了主CPU負擔,提高了系統的可靠性。
參考文獻
[1] 胡大可.MSP430系列超低功耗16位單片機原理與應用[M].北京:北京航空航天大學出版社,2000.
[2] Texas Instruments.MSP430x1xx Family Users Guide (SLAU049B.pdf),2002.
[3] 劉和平,嚴利平,張學鋒,等.TMS320LF240X DSP結構、原理及應用[M].北京:北京航空航天大學出版社,2002.
[4] 任志斌,車長征.串行外設接口SPI的應用[J] .電子技術應用,2002,29(10):2022.
[5] 魏小龍.MSP430系列單片機接口技術及系統設計實例[M].北京:北京航空航天大學出版社,2002.
評論