專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> STM32 >> 瀏覽文章

Modbus 通訊協(xié)議幀數(shù)據(jù)之間的時(shí)間停頓間隔 “3.5字符”定義

作者:真誠(chéng)冰雪天涯   來(lái)源:不詳   點(diǎn)擊數(shù):  更新時(shí)間:2014年07月27日   【字體:

Modbus 通訊時(shí)規(guī)定主機(jī)發(fā)送完一組命令必須間隔3.5個(gè)字符再發(fā)送下一組新命令,這個(gè)3.5字符主要用來(lái)告訴其他設(shè)備這次命令(數(shù)據(jù))已結(jié)束,而這個(gè)3.5字符的時(shí)間間隔采用以下方式計(jì)算:

1個(gè)字符包括1位起始位、8位數(shù)據(jù)位(一般情況)、1位校驗(yàn)位(或者沒(méi)有)、1位停止位(一般情況下)
這樣說(shuō)起來(lái)一般情況下1個(gè)字符就包括11位
那么3.5個(gè)字符就是3.5*11=38.5位

還有比如沒(méi)有校驗(yàn)位的
1個(gè)字符包括1位起始位、8位數(shù)據(jù)位(一般情況)、1位停止位(一般情況下)

這樣說(shuō)起來(lái)一般情況下1個(gè)字符就包括10位
那么3.5個(gè)字符就是3.5*10=35位


波特率含義是每秒傳輸?shù)亩M(jìn)制位的個(gè)數(shù)
比如9600bps,意思就是說(shuō)每1秒(也就是1000毫秒)傳輸9600個(gè)位,
反過(guò)來(lái)說(shuō)傳輸9600個(gè)二進(jìn)制位需要1000毫秒
那么傳輸38.5個(gè)二進(jìn)制位需要的時(shí)間就是:
38.5/9.6=4.0104167毫秒
MODBUS RTU要求一幀數(shù)據(jù)起始和結(jié)束至少有大于等于3.5個(gè)字符的時(shí)間
在波特率為9600的情況下,只要大于4.0104167毫秒即可!

關(guān)閉窗口

相關(guān)文章