機(jī)械社區(qū)

標(biāo)題: 關(guān)于串口通信的若干問(wèn)題 [打印本頁(yè)]

作者: Pa.Galileo    時(shí)間: 2014-8-7 11:24
標(biāo)題: 關(guān)于串口通信的若干問(wèn)題
背景:串口通信的格式由起始位(1位,為0),數(shù)據(jù)位(5到8位),校驗(yàn)位(1位,奇偶校驗(yàn)),停止位(1位或2位,為1)構(gòu)成。
( `: ~7 m3 \1 c) R# m
+ p6 K$ V4 E% x  w$ h問(wèn)題1:在串口通信中,數(shù)據(jù)位中會(huì)出現(xiàn)0或1,那是如何判斷起始位和停止位的(起始位為0,停止位位1)?即如何判斷數(shù)據(jù)開(kāi)始傳輸或者停止。9 x: f  T4 l' g) |! b% d8 I
問(wèn)題2:在PLC通信中,數(shù)據(jù)位可以選擇7位或者8位,那個(gè)數(shù)據(jù)位的選擇是不是隨意的?" ?. S9 X1 i2 W" k; i
問(wèn)題3:在PLC通信中,停止位可以選擇1位或者2位,那個(gè)停止位的選擇是不是隨意的?

3 D1 U. X% p) z" R% N2 f3 j6 n. u1 q
& Y# G. o) c7 H6 g- o提出以上問(wèn)題的哲學(xué)背景:存在就有一定的道理,在使用串口通信時(shí),數(shù)據(jù)位和停止位該如何選擇呢?隨意的嗎?
& u' [: s  K% b; X7 g3 x5 U6 i
作者: 志文168    時(shí)間: 2014-8-7 12:20
拉低數(shù)據(jù)(也就是寫(xiě)0)表示有數(shù)據(jù)開(kāi)始要傳了,講白了就是告訴接收方我要發(fā)信息了,要傳多少位,比如8位,這就是為什么要設(shè)置數(shù)據(jù)位的原因了,傳了8位之后拉高(寫(xiě)1)表示空閑狀態(tài),以便進(jìn)行下一次通信開(kāi)始的判斷。在傳信過(guò)程中,,也就是數(shù)據(jù)位小于8的情況,,無(wú)論是0還是1都是不會(huì)終止通信的。一般情況下,,只要收發(fā)端設(shè)置成一樣就可以,,至于數(shù)據(jù)位8位吧
作者: Pa.Galileo    時(shí)間: 2014-8-7 12:23
志文168 發(fā)表于 2014-8-7 12:20 2 h+ X9 ^6 S8 Z% X3 i6 a! k
拉低數(shù)據(jù)(也就是寫(xiě)0)表示有數(shù)據(jù)開(kāi)始要傳了,講白了就是告訴接收方我要發(fā)信息了,要傳多少位,比如8位,這 ...
/ e2 H5 U1 ^3 u' U8 E7 T
那我在數(shù)據(jù)傳送過(guò)程中,如何判斷0是起始位還是數(shù)據(jù)位?6 N2 X% k! x- e. ]; B

作者: 志文168    時(shí)間: 2014-8-7 12:30
所以就有在上一次通信完畢之后將數(shù)據(jù)線拉高了,只仔細(xì)看一下串口通信的時(shí)序圖吧,,可以加深理解
作者: 志文168    時(shí)間: 2014-8-7 12:31
如果你只是用的話也不用去研究,,直接設(shè)好就可以了,,PLC通信還是比較好弄的
作者: Pa.Galileo    時(shí)間: 2014-8-7 12:39
志文168 發(fā)表于 2014-8-7 12:31
. Y! `8 ?1 `' L3 d+ }  ]如果你只是用的話也不用去研究,,直接設(shè)好就可以了,,PLC通信還是比較好弄的
* C4 R2 r% K# o: L/ f3 N! }3 j
恩,我太會(huì)鉆牛角尖了。比如,我會(huì)糾結(jié)停止位選擇2位好,還是選擇1位好,它們對(duì)傳輸有什么影響?停止位選擇1位,會(huì)不會(huì)傳輸?shù)目煲稽c(diǎn)。
: q: o" j9 }5 X4 d1 S( ?
作者: 志文168    時(shí)間: 2014-8-7 13:12
快慢這個(gè)不用擔(dān)心,,影響可不計(jì),,,主要是解決干擾問(wèn)題和通信穩(wěn)定性,,試試不就知道了么,不用糾結(jié)呀,,搞機(jī)械的搞電子的都一樣,,




歡迎光臨 機(jī)械社區(qū) (http://e-learninguniversity.com/) Powered by Discuz! X3.4