久久久国产一区二区_国产精品av电影_日韩精品中文字幕一区二区三区_精品一区二区三区免费毛片爱

機械社區

標題: 關于串口通信的若干問題 [打印本頁]

作者: Pa.Galileo    時間: 2014-8-7 11:24
標題: 關于串口通信的若干問題
背景:串口通信的格式由起始位(1位,為0),數據位(5到8位),校驗位(1位,奇偶校驗),停止位(1位或2位,為1)構成。
* `+ V$ K* f* e* B
- ?# y0 e& p: h: F+ ?  A問題1:在串口通信中,數據位中會出現0或1,那是如何判斷起始位和停止位的(起始位為0,停止位位1)?即如何判斷數據開始傳輸或者停止。
+ S! l9 w8 p# N/ C7 X問題2:在PLC通信中,數據位可以選擇7位或者8位,那個數據位的選擇是不是隨意的?- `' V' Y; H& s& N' K  ~& u0 l
問題3:在PLC通信中,停止位可以選擇1位或者2位,那個停止位的選擇是不是隨意的?

4 g& ]7 W& }. q) t. e& \% L$ i3 u. Y( s! Z  \/ R
提出以上問題的哲學背景:存在就有一定的道理,在使用串口通信時,數據位和停止位該如何選擇呢?隨意的嗎?. z% I% `3 B9 |' O' Y) Z& u

作者: 志文168    時間: 2014-8-7 12:20
拉低數據(也就是寫0)表示有數據開始要傳了,講白了就是告訴接收方我要發信息了,要傳多少位,比如8位,這就是為什么要設置數據位的原因了,傳了8位之后拉高(寫1)表示空閑狀態,以便進行下一次通信開始的判斷。在傳信過程中,,也就是數據位小于8的情況,,無論是0還是1都是不會終止通信的。一般情況下,,只要收發端設置成一樣就可以,,至于數據位8位吧
作者: Pa.Galileo    時間: 2014-8-7 12:23
志文168 發表于 2014-8-7 12:20 ) h4 e" C8 F" ^1 t' Y0 ]
拉低數據(也就是寫0)表示有數據開始要傳了,講白了就是告訴接收方我要發信息了,要傳多少位,比如8位,這 ...
. @  T( }9 Y0 s+ J3 K. _, a% ^
那我在數據傳送過程中,如何判斷0是起始位還是數據位?  y4 l# U1 u9 F* p2 ~( ~, R- X

作者: 志文168    時間: 2014-8-7 12:30
所以就有在上一次通信完畢之后將數據線拉高了,只仔細看一下串口通信的時序圖吧,,可以加深理解
作者: 志文168    時間: 2014-8-7 12:31
如果你只是用的話也不用去研究,,直接設好就可以了,,PLC通信還是比較好弄的
作者: Pa.Galileo    時間: 2014-8-7 12:39
志文168 發表于 2014-8-7 12:31 7 K! C% Q/ V+ |1 L: q
如果你只是用的話也不用去研究,,直接設好就可以了,,PLC通信還是比較好弄的
! p; _/ W5 V% k
恩,我太會鉆牛角尖了。比如,我會糾結停止位選擇2位好,還是選擇1位好,它們對傳輸有什么影響?停止位選擇1位,會不會傳輸的快一點。
! R) X. ?4 L) l3 v4 ?
作者: 志文168    時間: 2014-8-7 13:12
快慢這個不用擔心,,影響可不計,,,主要是解決干擾問題和通信穩定性,,試試不就知道了么,不用糾結呀,,搞機械的搞電子的都一樣,,




歡迎光臨 機械社區 (http://www.ytsybjq.com/) Powered by Discuz! X3.5