91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Modbus通訊和串口通信校驗(yàn)位說明

姚小熊27 ? 來源:網(wǎng)絡(luò)整理 ? 2018-04-18 11:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

串口通訊modbus協(xié)議

串口通訊

常用的有RS232RS485

RS232:

全雙工,電纜最長(zhǎng)15.2m發(fā)送TXD;接收RXD

邏輯1(MARK)=-3V~-15V邏輯0(SPACE)=+3~+15V

RS485:

半雙工,電纜最長(zhǎng)1200m線制:兩線,A、B

多臺(tái)設(shè)備連接:所有A并聯(lián),所有B并聯(lián)

RS485轉(zhuǎn)USB。安裝完驅(qū)動(dòng)后會(huì)多一個(gè)串口(COM口),可在屬性=》高級(jí)中修改串口號(hào)COMN。

串口(及modbus)配置

Modbus通訊和串口通信校驗(yàn)位說明

停止位有校驗(yàn)時(shí)1Bit,無校驗(yàn)時(shí)2Bit其他

TTL(晶體管-晶體管邏輯電平)電平信號(hào)。+5V等價(jià)于邏輯“1”,0V等價(jià)于邏輯“0”

modbus-RTU協(xié)議:

RS485是硬件,modbus-RTU是協(xié)議。一般RS485上跑的也就是modbus-RTU,所以被混為一談。

MODBUS協(xié)議在一根通訊線上使用主從應(yīng)答式連接(半雙工)主機(jī)查詢,從機(jī)回應(yīng)

modbus-RTU幀結(jié)構(gòu)

Modbus通訊和串口通信校驗(yàn)位說明

一般主機(jī)查詢

Modbus通訊和串口通信校驗(yàn)位說明

常用功能碼

Modbus通訊和串口通信校驗(yàn)位說明

數(shù)據(jù) 設(shè)備不同,數(shù)據(jù)位數(shù)不同 起始地址:0001

默認(rèn)情況下先發(fā)地位,后發(fā)高位

錯(cuò)誤校驗(yàn)(CRC) 用串口調(diào)試軟件計(jì)算

有的通訊CRC高字節(jié)在前,有的通訊CRC高字節(jié)在后

Modbus通訊和串口通信校驗(yàn)位

Modbus通訊和串口通信校驗(yàn)位說明

利用Modbus協(xié)議可以實(shí)現(xiàn)設(shè)備間的數(shù)據(jù)交換。Modbus通訊理論上支持4種ModiconPLC地址,即0*、1*、3*和4*四種,分別表示開出(中間線圈)、開入、模入、模出(中間寄存器)等數(shù)據(jù)地址。與西門子或其它設(shè)備中的開入、開出、模入、模出地址完全不對(duì)應(yīng)??梢岳斫鉃?*和1*對(duì)應(yīng)位地址的讀寫操作,3*和4*字地址的讀寫操作。

此處0*、1*、3*和4*表示長(zhǎng)度有的為5位數(shù)字、有的為6位,其實(shí)和Modbus通訊無關(guān),只是和軟件的表示方式有關(guān)。

按照Modbus通訊時(shí)最常用的是RTU讀請(qǐng)求格式:

從站地址(1個(gè)字節(jié))、功能代碼(1個(gè)字節(jié))、從站數(shù)據(jù)起始地址(2個(gè)字節(jié))、讀數(shù)據(jù)長(zhǎng)度(2個(gè)字節(jié))、CRC校驗(yàn)(2個(gè)字節(jié))

可見,只需設(shè)置起始從站數(shù)據(jù)區(qū)起始地址和通訊長(zhǎng)度即可。

特別注意,Modbus地址遵從IEC1的地址標(biāo)準(zhǔn)(最小地址為*1),西門子遵從IEC0的標(biāo)準(zhǔn)(最小地址為0,如M0.0)。因此,不同標(biāo)準(zhǔn)的地址做通訊時(shí)需要做地址變換,即加1的操作。

在串口通信中一種簡(jiǎn)單的檢錯(cuò)方式。有四種檢錯(cuò)方式:偶、奇、高和低。當(dāng)然沒有校驗(yàn)位也是可以的。對(duì)于偶和奇校驗(yàn)的情況,串口會(huì)設(shè)置校驗(yàn)位(數(shù)據(jù)位后面的一位),用一個(gè)值確保傳輸?shù)臄?shù)據(jù)有偶個(gè)或者奇?zhèn)€邏輯高位。例如,如果數(shù)據(jù)是011,那么對(duì)于偶校驗(yàn),校驗(yàn)位為0,保證邏輯高的位數(shù)是偶數(shù)個(gè)。如果是奇校驗(yàn),校驗(yàn)位1,這樣就有3個(gè)邏輯高位。高位和低位不真正的檢查數(shù)據(jù),簡(jiǎn)單置位邏輯高或者邏輯低校驗(yàn)。這樣使得接收設(shè)備能夠知道一個(gè)位的狀態(tài),有機(jī)會(huì)判斷是否有噪聲干擾了通信或者是否傳輸和接收數(shù)據(jù)是否不同步。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 串口通信
    +關(guān)注

    關(guān)注

    34

    文章

    1662

    瀏覽量

    58004
  • modbus通訊
    +關(guān)注

    關(guān)注

    0

    文章

    17

    瀏覽量

    1921
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何得到串口接收到字節(jié)的校驗(yàn)位?

    從機(jī)的串口配置為: 9600, 8 , 奇校驗(yàn),1個(gè)停止 當(dāng)主機(jī)用UART3接收到從機(jī)發(fā)來的一個(gè)字節(jié)時(shí),我怎么讀到這個(gè)字節(jié)對(duì)應(yīng)的校驗(yàn)位的值呢? 在MDB協(xié)議中,有一個(gè)模式
    發(fā)表于 01-17 07:39

    基于MODBUS串口通訊軟件(LV實(shí)現(xiàn))

    )思路如下:1)LV與串口通訊步驟:1初始化串口;2讀寫端口;3延時(shí);4關(guān)閉串口;2)基于MODBUS
    發(fā)表于 10-26 16:58

    樹莓派,用python編程串口發(fā)送,偶校驗(yàn),校驗(yàn)位發(fā)送不出去

    最近進(jìn)入一個(gè)新的項(xiàng)目,需要采用串口發(fā)送,協(xié)議是偶校驗(yàn),但是怎樣發(fā)送都沒有應(yīng)答,后來用示波器抓了一下波形,發(fā)現(xiàn)python發(fā)送數(shù)據(jù)的時(shí)候根本沒有發(fā)送校驗(yàn)位,我已經(jīng)把串口參數(shù)設(shè)置了9600
    發(fā)表于 03-27 10:06

    求助大俠stc更改校驗(yàn)位的問題

    小白求助大俠,我用的是stc15f2k60s2,剛剛接觸單片機(jī)不久,東拼西湊了一個(gè)簡(jiǎn)單的代碼程序,現(xiàn)在用的是stc-isp串口助手,現(xiàn)在串口通訊校驗(yàn)位是1
    發(fā)表于 09-14 09:16

    串口接收一組數(shù)據(jù)如何利用校驗(yàn)位

    串口接收一組數(shù)據(jù)(每組是25個(gè)連續(xù)字符,最后有兩個(gè)字符是校驗(yàn)碼),實(shí)現(xiàn)每次中斷都用這些數(shù)據(jù)更新一個(gè)數(shù)組的全局變量,如何實(shí)現(xiàn)啊。如果是從中間開始接受的,如何避免混亂。還有是否要利用,如何利用校驗(yàn)位......謝啦~
    發(fā)表于 04-07 14:12

    STM32F103單片機(jī)串口通信帶奇偶校驗(yàn)位的代碼分享

    STM32F103單片機(jī)串口通信帶奇偶校驗(yàn)位的代碼分享
    發(fā)表于 12-03 06:43

    如何得到串口接收到字節(jié)的校驗(yàn)位?

    從機(jī)的串口配置為: 9600, 8 , 奇校驗(yàn),1個(gè)停止 當(dāng)主機(jī)用UART3接收到從機(jī)發(fā)來的一個(gè)字節(jié)時(shí),我怎么讀到這個(gè)字節(jié)對(duì)應(yīng)的校驗(yàn)位的值呢? 在MDB協(xié)議中,有一個(gè)模式
    發(fā)表于 08-29 08:08

    校驗(yàn)位的小工具

    電子發(fā)燒友網(wǎng)站提供《算校驗(yàn)位的小工具.exe》資料免費(fèi)下載
    發(fā)表于 07-25 16:06 ?2次下載

    DES使用一個(gè)56的密鑰以及附加的8奇偶校驗(yàn)位詳細(xì)資料說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是DES使用一個(gè)56的密鑰以及附加的8奇偶校驗(yàn)位詳細(xì)資料說明。
    發(fā)表于 03-29 14:26 ?4次下載

    單片機(jī)串口分析起始停止奇偶校驗(yàn)位

    串口解析串口配置1.波特率2.停止3.數(shù)據(jù)4.奇偶校驗(yàn)位比特率:通訊的頻率停止
    發(fā)表于 11-20 10:36 ?16次下載
    單片機(jī)<b class='flag-5'>串口</b>分析起始<b class='flag-5'>位</b>停止<b class='flag-5'>位</b>奇偶<b class='flag-5'>校驗(yàn)位</b>

    STM32模擬串口驅(qū)動(dòng)(帶校驗(yàn)位

    是:4800bps /8/N/EVEN。對(duì),是采用偶校驗(yàn)的方式。之前一直習(xí)慣無校驗(yàn)方式,一下子說要采用偶校驗(yàn),所以不得不再深度查閱和了解串口的相關(guān)信息。以下即是所了解的
    發(fā)表于 12-14 19:07 ?2次下載
    STM32模擬<b class='flag-5'>串口</b>驅(qū)動(dòng)(帶<b class='flag-5'>校驗(yàn)位</b>)

    STM32 串口及奇偶校驗(yàn)問題

    背景說明:STM32上對(duì)接一款串口傳感器,該串口采用串口如下波特率:115200停止:1校驗(yàn)位
    發(fā)表于 12-24 18:43 ?9次下載
    STM32 <b class='flag-5'>串口</b>及奇偶<b class='flag-5'>校驗(yàn)</b>問題

    問題筆記:STM32串口數(shù)據(jù)校驗(yàn)位

    問題:STM32移植freemodbus 后測(cè)試時(shí),只能使用無校驗(yàn) ,設(shè)置奇偶校驗(yàn)時(shí)無法與上位機(jī)通訊解決方法如果串口助手使用串口配置為:數(shù)據(jù)
    發(fā)表于 12-24 18:44 ?19次下載
    問題筆記:STM32<b class='flag-5'>串口</b>數(shù)據(jù)<b class='flag-5'>位</b>與<b class='flag-5'>校驗(yàn)位</b>

    串行通信中的波特率、數(shù)據(jù)校驗(yàn)位設(shè)置

    當(dāng)進(jìn)行串行通信時(shí),波特率、數(shù)據(jù)校驗(yàn)位是必須要設(shè)置的參數(shù),以確保發(fā)送端和接收端之間的數(shù)據(jù)傳輸能夠正確進(jìn)行。
    的頭像 發(fā)表于 06-29 18:14 ?9224次閱讀

    串口通信奇偶檢驗(yàn)什么意思 為什么要使用奇偶檢驗(yàn) 怎么使用奇偶檢驗(yàn)

    串口通信奇偶檢驗(yàn)什么意思 為什么要使用奇偶檢驗(yàn) 怎么使用奇偶檢驗(yàn)? 串口通信奇偶檢驗(yàn)是指通過對(duì)串口傳輸數(shù)據(jù)的
    的頭像 發(fā)表于 10-17 16:16 ?7932次閱讀