<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> PLC基礎入門教程 >> 正文

      西門子s7-200PLC CPU自由口通信模式總結,XMT和RCV指令

      作者:佚名    文章來源:本站原創    點擊數:    更新時間:2018/12/31

      西門子S7-200CPU的通信口可以設置為自由口模式。選擇自由口模式后,用戶程序就可以完全控制通信端口的操作,通信協議也完全受用戶程序控制。

          S7-200CPU上的通信口在電氣上是標準的RS-485半雙工串行通信口。此串行字符通信的格式可以包括:

          一個起始位

          7或8位字符(數據字節)

          一個奇/偶校驗位,或者沒有校驗位

          一個停止位

          自由口通信速波特率可以設置為1200、2400、4800、9600、19200、38400、57600或112500。

          凡是符合這些格式的串行通信設備,理論上都可以和S7-200CPU通信。

          自由口模式可以靈活應用。Micro/WIN的兩個指令庫(USS和ModbusRTU)就是使用自由口模式編程實現的。

          在進行自由口通信程序調試時,可以使用PC/PPI電纜(設置到自由口通信模式)連接PC和CPU,在PC上運行串口調試軟件(或者Windows的HyperTerminal-超級終端)調試自由口程序。

          USB/PPI電纜和CP卡不支持自由口調試。

          自由口通信要點

          應用自由口通信首先要把通信口定義為自由口模式,同時設置相應的通信波特率和上述通信格式。用戶程序通過特殊存儲器SMB30(對端口0)、SMB130(對端口1)控制通信口的工作模式。詳見下圖

          CPU通信口工作在自由口模式時,通信口就不支持其他通信協議(比如PPI),此通信口不能再與編程軟件Micro/WIN通信。CPU停止時,自由口不能工作,Micro/WIN就可以與CPU通信。

          通信口的工作模式,是可以在運行過程中由用戶程序重復定義的。

          如果調試時需要在自由口模式與PPI模式之間切換,可以使用SM0.7的狀態決定通信口的模式;而SM0.7的狀態反映的是CPU運行狀態開關的位置(在RUN時SM0.7="1",在STOP時SM0.7="0")

          自由口通信的核心指令是發送(XMT)和接收(RCV)指令。在自由口通信常用的中斷有“接收指令結束中斷”、“發送指令結束中斷”,以及通信端口緩沖區接收中斷。

          與網絡讀寫指令(NetR/NetW)類似,用戶程序不能直接控制通信芯片而必須通過操作系統。用戶程序使用通信數據緩沖區和特殊存儲器與操作系統交換相關的信息。

          XMT和RCV指令的數據緩沖區類似,起始字節為需要發送的或接收的字符個數,隨后是數據字節本身。如果接收的消息中包括了起始或結束字符,則它們也算數據字節。

          調用XMT和RCV指令時只需要指定通信口和數據緩沖區的起始字節地址。

          XMT和RCV指令與NetW/NetR指令不同的是,它們與網絡上通信對象的“地址”無關,而僅對本地的通信端口操作。如果網絡上有多個設備,消息中必然包含地址信息;這些包含地址信息的消息才是XMT和RCV指令的處理對象。

          由于S7-200的通信端口是半雙工RS-485芯片,XMT指令和RCV指令不能同時有效。

          XMT和RCV指令

          XMT(發送)指令的使用比較簡單。RCV(接收)指令所需要的控制稍多一些。

          RCV指令的基本工作過程為:

          在邏輯條件滿足時,啟動(一次)RCV指令,進入接收等待狀態

          監視通信端口,等待設置的消息起始條件滿足,然后進入消息接收狀態

          如果滿足了設置的消息結束條件,則結束消息,然后退出接收狀態

          所以,RCV指令啟動后并不一定就接收消息,如果沒有讓它開始消息接收的條件,就一直處于等待接收的狀態;如果消息始終沒有開始或者結束,通信口就一直處于接收狀態。這時如果嘗試執行XMT指令,就不會發送任何消息。

          所以確保不同時執行XMT和RCV非常重要,可以使用發送完成中斷和接收完成中斷功能,在中斷程序中啟動另一個指令。

          在《S7-200系統手冊》和Micro/WIN在線幫助中關于XMT和RCV指令的使用有一個例子。這個例子非常經典,強烈建議學習自由口通信時先做通這個例子。例程,見下圖


       

          字符接收中斷

          S7-200CPU提供了通信口字符接收中斷功能,通信口接收到字符時會產生一個中斷,接收到的字符暫存在特殊存儲器SMB2中。通信口Port0和Port1共用SMB2,但兩個口的字符接收中斷號不同。

          每接收到一個字符,就會產生一次中斷。對于連續發送消息,需要在中斷服務程序中將單個的字符排列到用戶規定的消息保存區域中。實現這個功能可能使用間接尋址比較好。

          對于高通信速率來說,字符中斷接受方式需要中斷程序的執行速度足夠快。

          一般情況下,使用結束字符作為RCV指令的結束條件比較可靠。如果通信對象的消息幀中以一個不定的字符(字節)結束(如校驗碼等),就應當規定消息或字符超時作為結束RCV指令的條件。但是往往通信對象未必具有嚴格的協議規定、工作也未必可靠,這就可能造成RCV指令不能正常結束。這種情況下可以使用字符接收中斷功能。如下圖


      Tags:s7-200,PLC,XMT和RCV指令  
      責任編輯:admin
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      推薦文章
      最新推薦
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 天天综合天天综合色在线| 亚洲另类激情综合偷自拍图| 亚洲婷婷综合色高清在线| 天天综合天天综合| 婷婷六月久久综合丁香可观看| 国产成人综合亚洲一区| 亚洲综合网站色欲色欲| 亚洲精品欧美综合四区| 狠狠色狠狠色综合伊人| 狠狠色狠狠色很很综合很久久| 国内偷自视频区视频综合| 色噜噜狠狠色综合中文字幕| 狠狠综合久久AV一区二区三区| 国产91色综合久久免费分享| 国产精品亚洲综合一区| 色五月丁香五月综合五月4438| 久久久综合亚洲色一区二区三区| 国产性天天综合网| 久久桃花综合桃花七七网| 色综合天天综合狠狠| 色综合天天综合网国产成人网| 久久综合亚洲色HEZYO国产| 国产成人亚洲综合在线| 日韩亚洲国产综合久久久| 欧美日韩综合一区二区三区| 中文字幕亚洲综合久久2| 亚洲综合视频在线| 色综合中文综合网| 天天久久影视色香综合网| 亚洲综合偷自成人网第页色| 久久香综合精品久久伊人| 色噜噜狠狠色综合日日| 亚洲综合欧美色五月俺也去| 亚洲精品第一国产综合亚AV| 久久综合九色综合久99| 亚洲国产婷婷综合在线精品| 狠狠色色综合网站| 亚洲 欧洲 日韩 综合在线| 国产精品一区二区综合| 亚洲综合无码精品一区二区三区 | 色综合久久久久综合体桃花网|