溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

單片機串行通訊引見

發(fā)布時間:2020-08-10 10:34:43 來源:網絡 閱讀:417 作者:yuw2018 欄目:網絡安全

通訊依照根本類型可以分為并行通訊和串行通訊。并行通訊時數據的各個位同時傳送,可以完成字節(jié)為單元通訊,然則通訊線多占用資本多,本錢高。比方我們前邊用到的 P0 = 0xFE;一次給 P0 的 8 個 IO 口辨別賦值,同時停止旌旗燈號輸入,相似于有 8 個車道同時可以過來 8 輛車一樣,這種方式就是并行的,我們習氣上還稱 P0、P1、P2 和 P3 為 51 單片機的 4 組并行總線。
而串行通訊,就好像一條車道,一次只能一輛車過來,假如一個 0xFE 如許一個字節(jié)的數據要傳輸過來的話,假設低位在前高位在后的話,那發(fā)送方法就是 0-1-1-1-1-1-1-1-1,一位一位的發(fā)送出去的,要發(fā)送 8 次才干發(fā)送完一個字節(jié)。
STC89C52 有兩個引腳是專門用來做 UART 串行通訊的,一個是 P3.0 一個是 P3.1,它們還辨別有別的的名字叫做 RXD 和 TXD,由它們構成的通訊接口就叫做串行接口,簡稱串口。用兩個單片機停止 UART 串口通訊,根本的演示圖如圖 11-1 所示。

單片機串行通訊引見
圖 11-1  單片機之間 UART 通訊表示圖


圖中,GND 表現單片機零碎電源的參考地,TXD 是串行發(fā)送引腳,RXD 是串行接納引腳。兩個單片機之間要通訊,起首電源基準得一樣,所以我們要把兩個單片機的 GND 互相銜接起來,然后單片機 1 的 TXD 引腳接到單片機 2 的 RXD 引腳上,即此路為單片機 1 發(fā)送而單片機 2 接納的通道,單片機 1 的 RXD 引腳接到單片機 2 的 TXD 引腳上,即此路為單片機 2 發(fā)送而單片機 1 接納的通道。這個表示圖就表現了兩個單片機互相收發(fā)信息的進程。
當單片機 1 想給單片機 2 發(fā)送數據時,比方發(fā)送一個 0xE4 這個數據,用二進制方式表現就是 0b11100100,在 UART 通訊進程中,是低位先發(fā),高位后發(fā)的準繩,那么就讓 TXD起首拉低電平,繼續(xù)一段工夫,發(fā)送一位 0,然后持續(xù)拉低,再繼續(xù)一段工夫,又發(fā)送了一位 0,然后拉高電平,繼續(xù)一段工夫,發(fā)了一位 1不斷到把 8 位二進制數字 0b11100100全體發(fā)送終了。這里就觸及到了一個成績,就是繼續(xù)的這“一段工夫”究竟是多久?由此便引入了通訊中的一個主要概念——波特率,也叫做比特率。
波特率就是發(fā)送二進制數據位的速度,習氣上用 baud 表現,即我們發(fā)送一位二進制數據的繼續(xù)工夫=1/baud。在通訊之前,單片機 1 和單片機 2 起首都要明白的商定好它們之間的通訊波特率,必需堅持分歧,收發(fā)單方才干正常完成通訊,這一點人人必定要記清晰。
商定好速度后,我們還要思索第二個成績,數據什么時分是肇端,什么時分是完畢呢?
不論是提早接納照樣延遲接納,數據都邑接納毛病。在 UART 通訊的時分,一個字節(jié)是 8 位,規(guī)則當沒有通訊旌旗燈號發(fā)作時,通訊線路堅持高電平,當要發(fā)送數據之前,先發(fā)一位 0 表現肇端位,然后發(fā)送 8 位數據位,數據位是先低后高的次序,數據位發(fā)完后再發(fā)一位 1 表現中止位。如許原本要發(fā)送一個字節(jié)的 8 位數據,而實踐上我們一共發(fā)送了 10 位,多出來的兩位個中一位肇端位,一位中止位。而接納方呢,本來不斷堅持的高電平,一旦檢測到了一位低電平,那就曉得了要開端預備接納數據了,接納到 8 位數據位后,然后檢測到中止位,再預備下一個數據的接納。我們圖示看一下,如圖 11-2 所示。

單片機串行通訊引見
圖 11-2  串口數據發(fā)送表示圖


圖 11-2 串口數據發(fā)送表示圖,實踐上是一個時域表示圖,就是旌旗燈號跟著工夫變更的對應關系。比方在單片機的發(fā)送引腳上,右邊的是先發(fā)作的,左邊的是后發(fā)作的,數據位的切換工夫就是波特率分之一秒,假如可以了解時域的概念,后邊許多通訊的時序圖就很輕易了解了。


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI