CAN自定義通信
CAN自定義數(shù)據(jù)發(fā)送:
如用JS_PLC發(fā)送數(shù)據(jù) CC 00 45 00 00 DD EE 01 至對象機
CAN通信一次最多可以發(fā)送4個16位數(shù)據(jù), 如需要發(fā)送以上8個8位數(shù)據(jù),需要把兩個8位數(shù)拼成了一個16位數(shù)據(jù),
如: 00CC 0045 DD00 01EE, 這里需要注意的是兩位數(shù)拼合在一起的時候,需要掉換位置,然后將十六進制數(shù)00CC ,0045 ,DD00, 01EE轉(zhuǎn)成十進制數(shù) ,轉(zhuǎn)換之后是 204,69,56576,494, 然后將這4個數(shù)據(jù)依次填入連續(xù)的通用寄存器中,
這里我們填入G100,G101,G102,G103,下一步我們添加通信指令如下:

說明:
????當(dāng)M80標志有上升沿信號時, PLC將通過CAN將G100,G101,G102,G103的值發(fā)送出去,
????注: 當(dāng)M80一直處于通狀態(tài),PLC監(jiān)測到G100-G103中的值有變化,也會自動發(fā)送更新后的數(shù)據(jù)。
通信指令說明:
使能標志?M80? ? ? ? ? ? ? ?M80通的情況下, 擴展數(shù)據(jù)有變動將自動發(fā)送,在M80上升沿也會發(fā)送一次。
傳輸方向?發(fā)送? ? ? ? ? ? ? 此條指令為發(fā)送數(shù)據(jù)指令
擴展功能?擴展外部16位寄存?將發(fā)送通用寄存器的數(shù)據(jù)
擴展地址?G100??????????????起始寄存器號G100
匹配STDID?0?????????????? ?與之通信的設(shè)備的sid號
數(shù)據(jù)長度?8/2=4? ? ? ? ? ? ?總共4個寄存器數(shù)據(jù)
錯誤標志?M78? ? ? ? ? ? ? ?錯誤標志,如果此條指令通信錯誤,此標志觸發(fā)為通。