modbus初始化程序沒有問題,要理解西門子200modbus通訊的難點(diǎn)就是要理解mbus_msg各管腳的具體含義。
其中:
en:通訊使能端用SM0.0
first:激活指令端,需要用沿觸發(fā)
slave:連接的從站地址,必須與變頻器設(shè)置的從站地址對(duì)應(yīng)一致
rw:讀、寫,=0是讀;=1是寫
addr:從站數(shù)據(jù)區(qū)地址,這個(gè)是難點(diǎn),需要和從站的modbus數(shù)據(jù)格式,類型等考慮
count:讀取或?qū)懭霐?shù)據(jù)的個(gè)數(shù)
datapt:參與通訊的本方數(shù)據(jù)暫存區(qū),就是讀取或?qū)懭氲綇恼咀冾l器上的數(shù)據(jù)都存放在這個(gè)地址區(qū),這個(gè)區(qū)是你用戶自定義的,需要與count管腳配合。通訊個(gè)數(shù)是以bit或word的方式進(jìn)行的。當(dāng)通訊是以bit單位時(shí),必須是以8的整數(shù)倍形式。
done:讀取、寫入完成標(biāo)志位,完成后置位一個(gè)周期
error:故障代碼,當(dāng)通訊出現(xiàn)故障時(shí),方便用戶根據(jù)故障字節(jié)值判斷問題的所在