国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

有誰(shuí)做過modbustcp 為什么我通過 sendToClient發(fā)給客戶端的內(nèi)容是16進(jìn)制 客戶端收到以后就變了呢?

woshi66

有誰(shuí)做過modbustcp 為什么我通過 sendToClient發(fā)給客戶端的內(nèi)容是16進(jìn)制 客戶端收到以后就變了呢?有做過 modbustcp 工業(yè)物聯(lián)的大神能不能指點(diǎn)一下 有償請(qǐng)教

2107 3 0
3個(gè)回答

yongdao35

你怎么發(fā)送的16進(jìn)制?客戶端收到后變成啥了?代碼怎么寫的。
你把問題說清楚,不然別人怎么給你看?

  • woshi66 2021-03-22

    非常感謝!搞定了 轉(zhuǎn)換進(jìn)制搞錯(cuò)了!目前能正常跑了

woshi66

我詳細(xì)說一下目前一個(gè)網(wǎng)絡(luò)io設(shè)備 wif版的 是用modbustcp協(xié)議傳輸 我建立了tcp的監(jiān)聽 可以接收到設(shè)備發(fā)上來(lái)的 消息 我通過 bin2hex 轉(zhuǎn)16進(jìn)制 可以拿到 00 00 00 00 00 04 01 02 01 00 我解析后可以拿到對(duì)應(yīng)數(shù)值 相當(dāng)于通道已經(jīng)建立 設(shè)備的 通道 Clientid 我存下來(lái)了 現(xiàn)在上位機(jī)需要發(fā)送控制碼給設(shè)備 00 01 00 00 00 08 01 0F 00 64 00 02 01 01 我把指令直接通過 sendToClient 發(fā)給客戶端的時(shí)候 接收到的是如果原封不動(dòng)的發(fā)送過應(yīng)該就行了 但是收到的是 30 30 20 30 31 20 30 30 20 30 30 20 30 30 20 30 38 20 30 31 20 30 46 20 30 30 20 36 34 20 30 30 20 30 32 20 30 31 20 30 31 如果我把命令轉(zhuǎn)成16進(jìn)制再發(fā)送接收到的是 01 08 01 0f 64 02 01 01 我沒搞明白我應(yīng)該怎么解析 或者怎么傳輸 望大神們指點(diǎn)

  • 不敗少龍 2021-03-22

    大神 workerman是怎么監(jiān)聽的modbustcp協(xié)議

  • woshi66 2021-03-22

    我們都理解錯(cuò)了 tcp 是tcp modbus協(xié)議是協(xié)議 你不用管協(xié)議的事情 對(duì)應(yīng)控制碼能發(fā)到指定客戶端就行了 我也是走到誤區(qū)好久

  • woshi66 2021-03-22

    總之最終走的都是tcp

  • 不敗少龍 2021-03-22

    workerman這邊還是發(fā)送的tcp的嗎 不用管modbus協(xié)議嗎?能貼一下你寫的代碼嗎?

  • woshi66 2021-03-22

    不同的設(shè)備控制碼不一樣,接收和發(fā)送用workerman modbus協(xié)議 沒啥研究的 對(duì)應(yīng)上就完事了

  • 不敗少龍 2021-03-22

    是workerman自定義協(xié)議modbus 去處理嗎?

  • woshi66 2021-03-24

    不要糾結(jié)協(xié)議啊 發(fā)送16進(jìn)制就可以了 干嘛要糾結(jié)協(xié)議 協(xié)議也基于tcp不是嘛

woshi66

附一個(gè)轉(zhuǎn)換進(jìn)制方法

for ($i=0; $i < strlen($hex)-1; $i+=2){
$string .= chr(hexdec($hex[$i].$hex[$i+1]));
}

  • 暫無(wú)評(píng)論
年代過于久遠(yuǎn),無(wú)法發(fā)表回答
??