51微控制器串列埠怎麼樣才能實現全雙工通訊

2021-04-20 08:39:21 字數 2195 閱讀 6232

1樓:匿名使用者

首先要明確bai全雙工通訊方式的du具體含義:全雙工方zhi式需要通dao信雙方連線兩條傳輸

回線(答共地),一條是將資料從甲方送到乙方,另外一條是從乙方送到甲方。就是甲乙雙方各自對應一發一收,51微控制器上是有一個全雙工的序列介面的,可以用兩條傳輸線實現雙向同時傳送。

就你說的問題,我看得不是很明白,但是一個微控制器不能同時兩條線上都是傳送(或接受)的,這點是肯定的。

51微控制器串列埠通訊是全雙工的,但是為什麼又說它的傳送和接受不可以同時進行呢

2樓:仁昌居士

51微控制器串列埠通訊是全雙工的,

傳送和接受可以同時進行。不可以同時進行的是半雙工。

全雙工方式分別由兩根不同的傳輸線傳送資料時,通訊雙方都能在同一時刻進行傳送和接收操作,通訊系統的每一端都設定了傳送器和接收器,因此,能控制資料同時在傳送和接受兩個方向上傳送。

半雙工使用同一根傳輸線既作接收又作傳送,雖然資料可以在兩個方向上傳送,但通訊雙方不能同時收發資料。採用半雙工方式時,通訊系統每一端的傳送器和接收器,通過收/發開關轉接到通訊線上,進行方向的切換,因此,會產生時間延遲。收/發開關實際上是由軟體控制的電子開關。

3樓:匿名使用者

他的意思是說因為cpu不可以同時發出傳送和接受指令,且傳送暫存器只能寫入而接受暫存器只能讀取,所以給這兩個暫存器賦予同一地址。

其實傳送和接收可以同時進行。

4樓:匿名使用者

串列埠有不同的工作方式,方式0不能全雙工,其它的都可以全雙工工作。傳送sbuf和接收sbuf地址是一樣的,但是物理空間是分開的

5樓:匿名使用者

寫這段話的人是不懂裝懂。

收和發用同一個暫存器地址,主要是為了節約地址,8051內部的暫存器地址範圍不多。收和發分別對應讀和寫兩種操作,是完全可以區分開的。而且微控制器讀寫暫存器的速度比串列埠傳送快多了,所以用一個暫存器是完全足夠的。

6樓:**尼奇

全雙工就是可以同時傳送和接受的意思。

你的說法很可能是將全雙工和半雙工搞錯了。

7樓:匿名使用者

收發共用同一個sbuf,同時進行肯定要產生資料衝突的。程式是可以同時執行收發,但資料都衝突了就沒意義了

8樓:匿名使用者

51微控制器在同一時間只可以執行一條程式吧?

9樓:

沒道理,能不能把原話貼出來看看

10樓:2000心安

51的串列埠通訊是全雙工沒錯,但是51的cpu本身沒辦法同時收發資料,簡單說就是它用不上串列埠的全雙工功能。

mcs-51微控制器什麼是全雙工,半雙工,單工序列通訊?

11樓:莫桂蓮

單工只有一根資料線,資訊只能單向傳送。半雙工也只有一根資料線,但資訊可以分時雙向傳送。全雙工有兩根資料線,可以同時雙向傳送。

12樓:匿名使用者

全雙工 的

但 電平 是 ttl 電平

所以 要與 電腦 串列埠 相連,必須 用 max232 做電平轉換

13樓:匿名使用者

2條線,所以是全雙工的

51微控制器中的序列介面和全雙工的uart分別是指什麼

14樓:我是_羅東

序列介面是指資料一位位地順序傳送,常用的有rs232和rs485;

uart是非同步序列介面,即是主從機時脈頻率不同步,通訊是通過設定波特率實現的。

uart其實就是序列介面中的一種。

通訊有序列、並行之分,而序列通訊又有同步、非同步之分。

同步常用協議是spi、iic。非同步就上面說的。

51微控制器全雙工序列通訊傳送和接受為什麼能同時進行?

15樓:匿名使用者

51微控制器是沒有全雙工上的工作模式的,你看會書就知道了,只有單工和半雙工。

16樓:匿名使用者

51微控制器全雙工序列通訊傳送和接受為什麼能同時進行 錯 可以同時進行

17樓:匿名使用者

接收和傳送的sbuf公用一個實體地址,但是其實是兩個不同的暫存器。

51微控制器怎麼通過串列埠傳送小數,51微控制器怎麼通過串列埠傳送小數?

方法多的去了,把數字37.5轉換為字串 37.5 傳送可以,用壓縮bcd碼0x37 0x05傳送也可以,多得是。不一定一定要浮點處理。你自己定一個協議,1次發6個資料,選擇其中的2個作為資料,其他作為驗證碼,另一個微控制器接收到就演算法處理 微控制器不支援浮點運算的,你可以申請兩個變數,把整數和小數...

51微控制器串列埠接收資料十進位制,51微控制器在串列埠問題,我們從串列埠上傳送資料是以16進位制的,在微控制器上接收是10進位制的,

即便是傳送ascii碼形式的字元,也可以傳送數字啊,如1234,mcu將收到4個ascii值,然後在mcu端判斷每個是否 0 9 以確保是數字的ascii碼,如果是就將收到的ascii值減去 0 不就得到它的十進位制值了麼。可以這樣 向微控制器傳送非壓縮bcd碼0x01,0x02,0x03,0x04...

51微控制器,通過串列埠助手向微控制器傳送字串,微控制器將字串逆序傳送回計算機,用C語言程式設計

電腦通過串列埠助手向微控制器傳送字串,微控制器定義一個可以儲存7個字元的陣列,依次儲存接收的字串,當接收到7個字串後,就可以從陣列的最後一個字元向前傳送每一個字元給電腦就可以了。剩下的就是串列埠初始化,串列埠接收和傳送程式了,就比較好寫了。其實,電腦傳送任意的7個字元的字串都可以,微控制器收到後就可...