成人做爰免费视频免费看_成人a级高清视频在线观看,成人a大片在线观看,成人a大片高清在线观看,成人av在线播放,一a一级片,一级黄 中国色 片,一级黄 色蝶 片,一级黄色 片生活片

| 注冊| 產品展廳| 收藏該商鋪

行業產品

當前位置:
湖南嶸晟時代自動化科技有限公司>>技術文章>>GP擴展SIO口通訊編程范例

GP擴展SIO口通訊編程范例

閱讀:1364        發布時間:2021-1-12

             GP擴展SIO口通訊編程范例

 Pro-face的GP2000系列(除GP2301,2501,2401H和2301H)觸摸屏有一個擴展串行接口(COM2) ,這個擴展串口通過D腳本程序的編寫可以方便的實現GP與一些特殊設備間的通訊(RS232) 。
    下面是一個擴展串口通訊的實例。這里我們進行通訊的設備是GP-2500S與CHK-8D型電池巡檢儀(以下簡稱巡檢儀)。
    1.通訊要求
    我們的目的是通過觸摸屏讀出巡檢儀檢測到的電池電壓信息。
    2.通訊設置
    巡檢儀有一個RS-485口,支持多種波特率。它的通訊格式為:異步,一位起始碼,八位數據位,一位停止位,無校驗,半雙工方式。
    首先,我們在GP的擴展SIO設置中選擇和巡檢儀的通訊設置一樣的參數。設置方法如下:同時按住GP的任意三個角,進入OFFLINE狀態,依次進入INITIALIZE,SETUP I/O,SETUP SIO,這里有GP的通訊設置,把它們設置成與巡檢儀相應的格式即可。
    3.報文交換格式(代碼各項均為1字節HEX碼)
    上位機下發命令:
    EB 90 EB 90 巡檢儀機號 上位機號 03 00 C1 00 00 90 EB
    巡檢儀回復:
    EB 90 EB 90 上位機號 巡檢儀機號 報文長度(L)報文長度(H) C2
    電池組電壓(1)電池組電壓(2)1#電池電壓(1) 1#電池電壓(2)
    2#電池電壓(1)2#電池電壓(2) …………N#電池電壓(1)
    N#電池電壓(2)代碼和(L) 代碼和(H) 90 EB
    巡檢儀機號: 即機器的地址編號,在CHK-8D型巡檢儀上設定,我們這里把它設為1號
    電池的節數N: 根據實際的電池節數,在CHK-8D型巡檢儀上設定,我們這里設為103節
    4.D腳本語句說明
    4.1 接收功能
    下面的命令被用于讀從擴展口接收到的數據
    格式 IO_READ([p:EXT_SIO], LS Storage Address, Transer Byte)
    例子 IO_READ([p:EXT_SIO],[w:LS0100], 10)
    [p:EXT_SIO]表示接收數據
    [w:LS0100]這是存放接收數據的起始地址,接收數據的大小存放在LS0100,接收的數據從LS0101開始存,10表示有10個字節存放在LS區(大傳送字節是6095)。
    4.2 發送功能
    下面的命令表示把要發送的數據寫到擴展口
    格式 IO_WRITE_EX([p:EXT_SIO], LS Storage Address, Transer Byte)
    例子 IO_WRITE_EX([p:EXT_SIO], [w:LS0100], 10)
    [w:LS0100]是要發送的數據開始地址,10表示要發送10個數據。
    *注意:每一個傳送的是字節,也就是說傳送的是每一個字的低八位,同樣接收的數據也是一樣的。
    4.3 控制
    增加控制變量去清除發送和接收緩存器以及錯誤狀態,這個變量的屬性是只能寫的。
    格式
    位 [c:EXT_SIO_CTRL**] **:00到15
    字 [c:EXT_SIO_CTRL]
    例如:控制字的內容
    位 [c:EXT_SIO_CTRL00]=1
    字 [c:EXT_SIO_CTRL]=0x0007
    當控制字的內容被確定以后,它的處理過程按照這樣的次序來完成的,先清除錯誤狀態,然后清除接收緩存,再清除發送緩存。
    15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
   
   
   
    位 內容
    04-15 保留
    03 1:清除接受延時
    02 1:清除錯誤狀態
    01 1:清除接收緩存
    00 1:清除發送緩存
   
   
    4.4 狀態
    增加[EXT_eSIO_ISTAT]作為狀態變量,這個變量的屬性是只讀的。
    格式
    位 [s:EXT_SIO_STAT**] **:00到15
    字 [s:EXT_SIO_STAT]
    例如
    位 if([s:EXT_SIO_STAT00]==1)
    字 if(([s:EXT_SIO_STAT]&0x0000)<>0)
    字的內容描述如下
    15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
   
   
   
   
    位 內容
    15 0:沒有常規SIO協議
    1:有常規SIO協議
    14 0:沒有擴展SIO協議
    1:有擴展SIO協議
    04-13 保留
    03 0:正常
    1:接收錯誤
    02 0:沒有接收到數據
    1:接收到數據
    01 0:正常
    1:發送錯誤
    00 0:發送緩存有數據
    1:發送緩存沒有數據
   
   
    4.5 接收數據的大小
    這個屬性也是只讀的。
    格式 [r:EXT_SIO_RECV]
    例如 if([r:EXT_SIO_RECV]>=10)
    5.通訊實現
    5.1 硬件連接
    由于巡檢儀的通訊口是RS485,這里我們需要一個485/232的轉換器。9針的COM2口的管腳定義如下:
    針號 信號名
    1 CD 載波檢測
    2 RD 接收數據
    3 SD 發送數據
    4 ER 允許接收
    5 SG 信號地
    6 DR 數據準備好
    7 RS 請求發送
    8 CS 清除發送
    9 RI/VCC 響鈴指示,+5V+5%,0.25A
   
    5.2 軟件設計
    首先,新建一個PRO/PB工程,PLC類型選擇Memory Link SIO type, 協議選擇Extend SIO Script,如下圖所示
    然后新建一個畫面,放置一些鍵盤輸入顯示,地址設為收到的電池電壓的地址。我們計算了總接受報文長度為221個字節,準備放置到7000到7220的地址中。GP發送報文總長度為13個字節,準備放置在6000到6012的地址中 。
    這些準備完成后,下面就可以開始D腳本編程了。如下所示:
    一個程序:每30秒發送一次報文給巡檢儀
   
    第二個程序:初始化
    其中[s:EXT_SIO_STAT14]為擴展SIO狀態字的第14位,當其值為1時表示擴展SIO協議準備好了。[c:EXT_SIO_CTRL]為擴展SIO控制字,它的00,01,02位為1時分別清發送緩存,接收緩存,錯誤信息。
    [b:020000]到[b:020004]為通訊步驟,當初始化完成觸發[b:020001],執行下一步。
    第三個程序:發送準備
    這一步主要是把發送到巡檢儀的報文儲存到6000開始的13個連續地址中去。完成后[b:020001]清零,[b:020002]置1,執行下一步。
    第四個程序:發送子程序
    _ldcopy(databuf0, [w:6000], 13)是把6000開始的13個地址中的數據放到databuf0這個串中。
    [s:EXT_SIO_STAT00]等于1表示發送緩存區為空。
    IO_WRITE_EX([p:EXT_SIO], databuf0, 13)為把databuf0的開始13個數據通過擴展口發送。
    第五個程序:接收子程序
    [s:EXT_SIO_STAT02]等于1表示接收數據準備完畢。
    [r:EXT_SIO_RECV ]為接收數據長度,為了保證完整接收巡檢儀傳過來的報文,我們首先判斷接收數據的長度是否大于221。
    IO READ ( [p:EXT_SIO ], databuf1, 221)表示接收221個字節的數據放到databuf1中。
    _dlcopy ([w:7000], databuf1, 0, 221)是將databuf1中0位開始的221個字節數據存放到[w:7000]開始的地址中去。
    第六個程序:主程序
    [b:020002]等于1時開始發送報文,發送完畢[b:020003]置1開始接收數據。接收完判斷數據是否正確,正確的話[b:020004]置1,一次通訊完成。不正確的話[b:020003]重新置1,再收。
    這樣一個擴展串口通訊程序就完成了,此后再對接收的數據進行一些處理,即可得到我們所需的數據了。這是擴展口通訊的一個實際應用,大家可以參照此中的參數設置和思路,編寫自己的擴展口通訊程序。

收藏該商鋪

登錄 后再收藏

提示

您的留言已提交成功!我們將在第一時間回復您~
二維碼 意見反饋
在線留言
主站蜘蛛池模板: 水蜜桃亚洲一二三四在线| 性生交大片免费看A片直播| 自偷自拍亚洲综合精品第一页| 国产日韩厂亚洲字幕中文| 久操高清有无码av| 国产欧美日韩精品一区二区| 久久久久久久精品影院| 亚洲综合AV在线在线播放| YY4408理论无码私人青苹果影院| 国产精品人妻久久无码不卡| 色噜噜AV亚洲色一区二区| 五月色丁香综合成人网| 伴娘被按在车内强行摸胸猥亵| 欧美激情一区二区三区视频| 久久成人黄色网址| 国产熟妇搡BBBB搡BBBB| 丁香五月亚洲春色| 亚洲天堂啊啊啊| 日韩欧美成人亚洲| 色婷婷AV99XX| 67194人妻中文字幕| 久久精品国产亚洲av久试看| 日韩A片中文字幕视频免费| 国产亚洲精品久久久久久老妇| 纯肉腐文高H| 巜被社长侵犯的人2中文在线| 国产精品18久久久久久欧美| 日韩精品午夜视频一区二区三区| 欧美本精品男人aⅴ天堂| 中文字幕人妻搭讪自宅中出| 在线看免费无码A片视频| 国产人妻人伦精品一区二区| 强奷乱码欧妇女中文字幕熟女| 欧美 日韩 带色| 又大又黄又爽免费看A片| 欧美日韩精品专区黑人| 国产综合有码无码中文字幕| 亚洲av日韩精品久久久久| 在线观看午夜亚洲一区| 国产一及毛片| 黑人巨粗进入警花疼哭A片|