基于CAN總線與RS485的DSP通信接口設計
1.概述
現(xiàn)場總線是一種開放式、數(shù)字化、多點通信的控制系統(tǒng)局域網絡,是當今自動化領域中最具有應用前景的技術之一 ,CAN總線是現(xiàn)場總線中的應用熱點。由于CAN總線具有通信速率高、開放性好、報文短、糾錯能力強以及控制簡單、擴展能力強、系統(tǒng)成本低等特點,越來越 受到人們的關注。
TI公司的TMS320LF2407型DSP微控制器以其處理能力強,外設功能模塊集成度高及存儲器容量大等特點廣泛應用于數(shù)字化控制與通信領域。CAN 總線控制器與TMS320LF2407微控制器連接,可以實現(xiàn)CAN總線的通信。TMS320LF2407微控制器內嵌的異步串行口(SCI)支持CPU 與其它使用標準格式的異步外設之間的數(shù)字通訊,通過RS-485接口可以方便地進行DSP之間或DSP與PC機之間的異步串行通信。
RS-485是一種多發(fā)送器的接口標準,它擴展了RS-422A的性能,允許雙絞線上一個發(fā)送器驅動32個負載設備,負載設備可以是被動發(fā)送器、接收器或 收發(fā)器,RS-485最大傳輸距離為1200m,最大傳送速率可達10Mb/s。因此,RS-485在遠程通信和多機總線系統(tǒng)中具有很大的吸引力,在實際 設計中得到了廣泛應用。
本設計以PC機為主機,以TMS320LF2407為從機,實現(xiàn)了主從機之間的基于RS-485的串行通信,以及TMS320LF2407與CAN總線的 通信。其中PC機與TMS320LF2407的RS-485通信,采用MAXIM公司生產的MAX48X/49X系列收發(fā)器芯片,完成RS-485標準接 口通信。由于PC機上提供的是標準的RS-232C串行接口,因此,需要RS-232C/RS-485轉換器進行接口轉換。如圖1所示。應用 TMS320LF2407內嵌的CAN模塊和總線接口芯片PCA82C250,實現(xiàn)了TMS320LF2407與CAN總線的串行通信。
2.TMS320LF2407的RS-485通信設計
TMS320F2407有較強的串行通信能力,設計到的控制類寄存器較多,這使系統(tǒng)設計比較靈活。設計時,首先對控制類寄存器進行初始化,包括數(shù)據格式、 中斷使能、中斷優(yōu)先級、波特率等參數(shù)的設置。初始化完成以后,就可以發(fā)送和接收數(shù)據了。如果要發(fā)送數(shù)據,只要把數(shù)據寫入SCITXBUF即可,由串行通信 SCI模塊自動完成發(fā)送數(shù)據。如果要接收數(shù)據,只要把SCIRXBUF的內容讀出即可(從引腳SCIRXD/IO移位來的信息由串行通信SCI模塊本身自 動去掉起始位、停止位、校驗位,并將數(shù)據放到SCIRXBUF中)。代碼如下:
初始化TMS320LF2407的SCI模塊
評論