基于MSP430單片機的Profibus-DP通信接口的開發
考慮到Profibus對速率的要求本文選用高速率,低功耗的16位MSP430單片機,采用Intel工作方式。CPU與SPC3接口電路如圖3所示。對于MSP430單片機而言,SPC3相當于它擴張的一個外部RAM。單片機可以通過訪問外部RAM的方法訪問SPC3的寄存器。RS 485驅動器的一端與SPC3相連,另一端通過9針D型插頭與總線相連。RS 485驅動器選擇SN75SLS176來滿足高速的數據通信。
本文引用地址:http://www.104case.com/article/173254.htm軟件設計是開發Profibus-DP通信接口的一個重要環節。由于SPC3集成了完整的DP協議,因此在進行通信時,MSP430單片機不用參與處理DP狀態機。主要任務是根據SPC3產生的中斷,對SPC3接收到數據轉存,組織要通過SPC3發給的數據,并根據要求組織外部診斷。

主程序流程圖如圖4所示,在SPC3正常工作之前,需要進行初始化,以配置需要的寄存器,包括設置協議芯片的中斷允許,寫入從站識別號和地址,設置SPC3方式寄存器,設置診斷緩沖區,配置緩沖區,地址緩沖區,初始化長度,并根據以上初始值得出各個緩沖區的指針和輔助緩沖區的指針。根據確定輸出緩沖區、輸入緩沖區及指針,初始化流程圖如圖5所示,初始化包括:SPC3硬件復位、硬件模式、設置SPC3中斷屏蔽寄存器、SPC3內部看門狗、設備標識號、緩沖區初始化。
中斷程序流程圖如圖6所示,在Profibus-DP中最主要處理以下的中斷事件:新的參數報文事件,全局控制命令報文事件,進入或退出數據交換狀態事件,新的配置報文事件,新的地址設置報文事件,檢測到波特率事件,看門狗事件。
4 結語
選用的MSP430單片機具有高速率、低功耗的特點,SPC3芯片則集成了Profibus-DP全部協議內容,整系統功能相對完善,使用方法簡單。本方案用于Profibus-DP通信接口的開發,可以減少開發周期,實現開發的簡化。
評論