標題: 51單片機串口通信的小問題 [打印本頁]

作者: 放眼天下    時間: 2019-1-28 10:13
標題: 51單片機串口通信的小問題
  就是在串口通信的時候,主機要發(fā)送數(shù)據,先發(fā)一個起始碼,然后是一個8位的數(shù)據,以及終止碼,但是還會有奇偶校驗的問題,那么校驗碼是什么時候發(fā)送的呢,是在數(shù)據之后終止碼之前還是由從機自己去校驗呢,沒弄明白。初學51,請多指教!

作者: 笨笨兔    時間: 2019-1-28 11:03
好好看看串行口工作模式3,書上講的很清楚。
作者: yzwzfyz    時間: 2019-1-28 12:01
【先發(fā)一個起始碼】:準確地說是起始脈沖。
【然后是一個8位的數(shù)據】:再加校驗位(如果需要的話),數(shù)據占用9個脈沖的位置,每個位置有多寬,由波特率決定。
【以及終止碼】:準確地說是1-N個1脈沖,N由格式定義。
你需要細細研讀一下,串口通訊協(xié)議中的波形圖,而后就清楚了,書上說的靠譜。
比如起始脈沖長什么樣子,停止脈沖是不是只有1個高電平……
弄通這些很重要!。

作者: GUELL    時間: 2019-1-28 14:08
串口通信是發(fā)送端以一個字節(jié)一個字節(jié)的從串口發(fā)送,接收端一個字節(jié)一個字節(jié)的接收,每個字節(jié)包含、一位起始碼、8位的數(shù)據碼、一位奇偶校驗碼、一位停止碼,圖中含有一個完整字節(jié)的波形圖。

串口.jpg (15.92 KB, 下載次數(shù): 27)

串口.jpg

作者: 放眼天下    時間: 2019-1-28 15:43
yzwzfyz 發(fā)表于 2019-1-28 12:01
【先發(fā)一個起始碼】:準確地說是起始脈沖。
【然后是一個8位的數(shù)據】:再加校驗位(如果需要的話),數(shù)據 ...

也就是說如果需要校驗,那么校驗碼是跟著數(shù)據的最后一位一起輸出,且在終止碼之前嗎?
作者: 放眼天下    時間: 2019-1-28 15:46
GUELL 發(fā)表于 2019-1-28 14:08
串口通信是發(fā)送端以一個字節(jié)一個字節(jié)的從串口發(fā)送,接收端一個字節(jié)一個字節(jié)的接收,每個字節(jié)包含、一位起始 ...

謝謝,這個圖很好,但是這個圖上沒有顯示校驗碼呢,檢驗碼是在什么時候發(fā)送的




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1