日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

modbus-rtu qt4-serialport3--------micro2440 as device

發布時間:2024/4/14 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 modbus-rtu qt4-serialport3--------micro2440 as device 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

有了前兩文的基礎,當然還要加上更前面的一些知識。
1.設備源碼不貼了。幾點說明。
由于上文的串口類在linux下只能使用poll方式查詢串口。所以需要準備一個定時器去polling,4ms(并且串口類的采集串口時間也設為4ms)
但又由于需要識別modbus的幀結束,所以又準備一個定時器,10ms(這樣就設定modbus的幀間距時間10ms。而第一個定時器的超時時間定的比第二個定時器的超時時間10ms少一點并且保證2x<10ms,所以定了4ms)。
在第一個定時器讀到數據的時候重置第二個定時器。沒讀到就什么也不做(意味著允許第二個定時器超時),然后在10ms之內,第一個定時器有機會可以再一次讀取數據,如果仍然沒有讀到,那么第二個定時器肯定要超時了。
所以在第二個定時器里面就認為是整個modbus幀了,然后分析數據執行命令。

但是modbus規范上定的幀間距時間為3.5個字符(每個字符4bit)。按照115200b/s的波特率,每位的時間是1/115200=8.68e-6 s=8.68e-3 ms,幀間距應該是x3.5x4=1.22e-4 s=0.122 ms。盡管如此,由于大多數上位機采集數據即發送modbus幀的周期都在100ms以上,所以上面設定10ms的幀間距時間已經滿足大多情況下的要求(所以micro2440上第二個定時器也可以省掉。直接使用第一個定時器(比如設為10 ms,串口類的周期也設為10)讀取串口數據,讀到的基本就是一幀的數據----如果有數據的話)

2.測試。
安裝DASMBSerial,主題名配置為micro2440.? 右鍵大圖。采集周期默認1000ms就行.


如下是在excel使用管道(進程間通信)測試,
=DASMBSerial|micro2440!'6' =DASMBSerial|micro2440!'40012'=DASMBSerial|micro2440!'$SYS$UpdateInterval' =DASMBSerial|micro2440!'$SYS$ItemCount' =DASMBSerial|micro2440!'$SYS$ActiveItemCount' =DASMBSerial|micro2440!'$SYS$status' 如圖

然后到診斷頁看看數據質量怎么樣,


由于DASMBSerial也會占用串口,但在激活,如圖,的時候

如果有別的程序已經占用了同相同的串口(或者根本不存在這個串口),DASMBSerial卻不提示如打不開等出錯信息(并還把當前標志置為綠色貌似已經打開)(一般串口程序在打開串口的時候如果發現被其他程序如DASMBSerial占用時會提示的)。--------這是由于DASMBSerial激活的時候并不執行打開操作,只有在有app如excel ,intouch向DASMBSerial索取數據時,DASMBSerial才會去打開對應的串口并去讀數據。
此時需要關閉那個占用串口的程序,并且最好重新激活一次DASMBSerial,然后再打開各個app從DASMBSerial讀數據。
所以測試的順序是
1.確保串口存在并且可用(如果其他app在占用此串口,shut off)
2.激活DASMBSerial
(1,2可以交換一下)
3.打開對應app從DASMBSerial讀取數據。

監視到的串口數據如下,顯示的時間是10ms單位。write是DASMBSerial->micro2440,read是micro2440-->DASMBSerial。看來DASMBSerial基本是800ms采集一次數據,與配置的1000ms差不多。



或者使用intouch測試而不使用excel,建立訪問名如下

轉載于:https://www.cnblogs.com/-song/archive/2011/11/27/3331917.html

總結

以上是生活随笔為你收集整理的modbus-rtu qt4-serialport3--------micro2440 as device的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。