<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > 基于Profibus-DP現(xiàn)場總線通信接口設(shè)計

          基于Profibus-DP現(xiàn)場總線通信接口設(shè)計

          作者: 時間:2010-08-11 來源:網(wǎng)絡(luò) 收藏
          只有在Power_on狀態(tài),從站可以接收來自二類主站的“Set_Slave_Address報文,從而改變從站地址,從站應(yīng)具有非易失性存儲器來存儲從站地址。內(nèi)部啟動后,從站進(jìn)入wait_Prm狀態(tài),等待“Wait_Prm”報文。參數(shù)化報文由用戶組態(tài)時給定,包括一些標(biāo)準(zhǔn)的信息,如識別號、同步鎖定能力,還包括了一些用戶特別定義的數(shù)據(jù),另外,在此狀態(tài)從站還可以接收“Get_Cfg”報文、“Slave_Diag”報文,但拒絕處理其他報文,不能進(jìn)行數(shù)據(jù)。如果Set_Prm正確,從站進(jìn)入wait_Cfg狀態(tài),等待“Check_Cfg”報文,該報文規(guī)定主站對它的配置信息,即數(shù)據(jù)交換中的輸入輸出字節(jié)數(shù)。此外,也可接收“Get_Cfg”報文、“Slave_Diag”的報文。當(dāng)參數(shù)化與配置正確,在此狀態(tài),從站可以接收以下報文:Data_Exchange_Ok、Writing_outputs,Reading_Inputs,Global_Control,Slave_Diag,Get_Cfg等。從站接收主站的狀態(tài)請求后,以高優(yōu)先級的診斷報文作為應(yīng)答。診斷信息包括了標(biāo)準(zhǔn)診斷信息和與用戶有關(guān)的信息。

          2 硬件
          本文選用的的通信協(xié)議芯片為SPC3。SPC3集成了全部的協(xié)議。SPC3在DP方式下將完成所有DP-SAP的設(shè)置。SPC3內(nèi)部集成了1.5 KB的雙口RAM,包括參數(shù)寄存器、方式寄存器、狀態(tài)寄存器,中斷控制器等。SPC3內(nèi)部集成的看門狗定時器有3種工作狀態(tài):波特率檢測、波特率控制和從站控制。內(nèi)部的USART可實現(xiàn)并行數(shù)據(jù)流和串行數(shù)據(jù)流的相互轉(zhuǎn)換。微順序控制器控制整個工作過程??臻e定時器直接控制串行的時序。

          本文引用地址:http://www.ex-cimer.com/article/157239.htm


          考慮到Profibus對速率的要求本文選用高速率,低功耗的16位MSP430單片機,采用Intel工作方式。CPU與SPC3電路如圖3所示。對于MSP430單片機而言,SPC3相當(dāng)于它擴(kuò)張的一個外部RAM。單片機可以通過訪問外部RAM的方法訪問SPC3的寄存器。RS 485驅(qū)動器的一端與SPC3相連,另一端通過9針D型插頭與相連。RS 485驅(qū)動器選擇SN75SLS176來滿足高速的數(shù)據(jù)通信。

          3 通信軟件
          軟件是開發(fā)通信接口的一個重要環(huán)節(jié)。由于SPC3集成了完整的DP協(xié)議,因此在進(jìn)行通信時,MSP430單片機不用參與處理DP狀態(tài)機。主要任務(wù)是根據(jù)SPC3產(chǎn)生的中斷,對SPC3接收到數(shù)據(jù)轉(zhuǎn)存,組織要通過SPC3發(fā)給的數(shù)據(jù),并根據(jù)要求組織外部診斷。



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();