51微控制器串列埠通訊波特率問題,51微控制器串列埠波特率問題

時間 2021-08-31 20:06:21

1樓:anyway中國

usb轉串列埠上的晶振12mhz,對波特率的準確度有一定影響。但是,微控制器通訊的波特率設定,還是得採用與微控制器相連的11.0582mhz晶振進行計算。

11.0592mhz設定的的大部分波特率理論誤差為零,但是,串列埠轉usb會有為了減小誤位元速率,可按照12mhz晶振波特率設定表中計算的理論誤差,選擇誤差較小的波特率試試。一般來說,波特率較低的,誤差也較小。

2樓:

那個 12mhz的晶振是用來驅動 usb2302的,跟你的微控制器沒有一點關係,你把那個usb2302和12mhz晶振看做是一體的,看做是電腦上的串列埠就行了,與你的微控制器沒有關係.\

現在的電腦已經很少有串列埠了,尤其是筆記本,更是沒有串列埠,所以通常我們會買usb轉串列埠來做開發.

我們買的usb轉串列埠,裡面用的是pl2303作的轉換,而pl2303需要乙個12mhz的晶振,現在你明白了嗎?那個usb2302和12mhz晶振就相當於乙個usb轉串列埠,只不過是做到板子上了,不用你另外買,這是開發板廠家考慮到現在電腦沒有串列埠,因此給你的電腦增加了個串列埠而已.

所以,那個12mhz晶振與你的微控制器沒有絲毫的關係,你用11.0592就行了.

3樓:一萬光年

肯定是微控制器相連的晶振。

12m和微控制器的波特率無關。

4樓:匿名使用者

既然是要跟微控制器通訊,那當然是要用11.0592mhz的

在網上隨便找個 「51波特率初值設定軟體」 就能用了

51微控制器串列埠波特率問題

5樓:百度文庫精選

內容來自使用者:nzmsjy

51系列的微控制器中都有兩個定時器t0和t1,網上的資料挺多的,52微控制器比51微控制器的資源多了乙個定時器t2和128位元組的ram。定時器t2的功能比t1、t0都強大,但描述它的資料不多,可能是使用得比較少的緣故吧。它是乙個16位的具有自動重灌和捕獲能力的定時/計數器,它的計數時鐘源可以是內部的機器週期,也可以是p1.

0輸入的外部時鐘脈衝。t2的控制暫存器的功能描述如下:

t2con(t2的控制暫存器),位元組位址0c8h:

符號tf2 exf2 rclk tclk exen2 tr2 c/t2 cp/rt2

各位的定義如下:

tf2:定時/計數器2溢位標誌,t2溢位時置位,並申請中斷。只能用軟體清除,但t2作為波特率發生器使用的時候,(即rclk=1或tclk=1),t2溢位時不對tf2置位。

exf2:當exen2=1時,且t2ex引腳(p1.0)出現負跳變而造成t2的捕獲或重灌的時候,exf2置位並申請中斷。exf2也是只能通過軟體來清除的。

rclk:序列接收時鐘標誌,只能通過軟體的置位或清除;用來選擇t1(rclk=0)還是t2(rclk=1)來作為序列接收的波特率產生器

tclk:序列傳送時鐘標誌,只能通過軟體的置位或清除;用來選擇t1(tclk=0)還是t2(tclk=1)來作為序列傳送的波特率產生器

exen2:t2的外部允許標誌,只能通過軟體的置位或清除;exen2=0:禁止外部時鐘觸發t2;exen2=1:當t2未用作序列波特率發生器時,允許外部時鐘觸發

6樓:匿名使用者

你的創新精神值得欣賞,可創新過度了。51微控制器串列埠波特率只能是由t1控制,必須由t1控制,t0是無效的,你不會是對的。t1必須工作在方式2,自動過載方式,即8位方式,這是唯一的。

16位計數方式無效,你不會又是對的。

如果這無效的方式,你真會了,那可真是新發明了。

7樓:葷三詩義斯

目前的電腦主機板上的com口的最大波特率可設定為115200.

你的晶振22.1184m,理論上應該是230400,(=22118400/96),目前無法驗證.

mcs-51微控制器串列埠四種工作方式的波特率如何確定

8樓:惜憶淚情

在串抄行通訊中,收發雙方對傳送或接收

襲資料的速率要有約bai定。通過軟體可對du單片zhi機序列口程式設計為四種

dao工作方式,其中方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可變的,由定時器t1的溢位率來決定。

序列口的四種工作方式對應三種波特率。由於輸入的移位時鐘的**不同,所以,各種方式的波特率計算公式也不相同。

方式0的波特率 =  fosc/12

方式2的波特率 =(2smod/64)· fosc

方式1的波特率 =(2smod/32)·(t1溢位率)

方式3的波特率 =(2smod/32)·(t1溢位率)

當t1作為波特率發生器時,最典型的用法是使t1工作在自動再裝入的8位定時器方式(即方式2,且tcon的tr1=1,以啟動定時器)。這時溢位率取決於th1中的計數值。

t1 溢位率 = fosc /

在微控制器的應用中,常用的晶振頻率為:12mhz和11.0592mhz。所以,選用的波特率也相對固定。常用的序列口波特率以及各引數的關係如表所示。

微控制器串列埠通訊問題,51微控制器串列埠通訊問題

修者世界 p3 0xff的作用其實很簡單,就是為了更好的完成 讀 修改 寫 這個過程,其實對於p3口是沒有必要的,對於p0口這樣做是應該的。 革玉花戚雪 微控制器串列埠通訊的問題,其實你只有乙個問題,就是 p0 0xf0 s2buf 0xfc p0 s2buf 為什麼這裡p0是0x00 你覺得p0應...

微控制器串列埠通訊的波特率什麼意思,為何不同環境下一定要設定某一

波特率是指每秒傳送多少個二進位制數,也就是序列時鐘訊號的頻率,但是我們常用非同步通訊方式,時鐘訊號並沒有被傳輸,因此傳送方和接受方的設定波特率必須一致,並且不能有太大的誤差 波特率就好比一首歌曲的節奏,有了這個節奏,序列通訊的各個資料位就會有條不紊地依次排隊一個一個地傳到對方,要正確收發,兩個通訊的...

51微控制器串列埠通訊出現問題,5V微控制器與3 3V微控制器串列埠通訊問題

做而論道 void main 如果是ascii碼,加上引號即可 if sbuf 0 p0 smg 0 通過數碼管顯示接收到的資訊 if sbuf 1 p0 smg 2 通過數碼管顯示接收到的資訊 if sbuf 2 p0 smg 12 通過數碼管顯示接收到的資訊 if sbuf 3 p0 smg 1...