51微控制器為什麼晶振都用11 0592M

時間 2021-08-31 20:05:20

1樓:橘落淮南常成枳

因為11.0592mhz能夠準確地劃分成時脈頻率,與uart(通用非同步接收器/傳送器)量常見的波特率相關。

特別是較高的波特率(19600,19200),不管多麼古怪的值,這些晶振都是準確,常被使用的。

用11.0592晶振的原因是51微控制器的定時器導致的,用51微控制器的定時器做波特率發生器時,如果用11.0592mhz的晶振,根據公式算下來需要定時器設定的值都是整數;如果用12mhz晶振,則波特率都是有偏差的。

微控制器組成:

運算器由運算部件算術邏輯單元、累加器和暫存器等幾部分組成。alu的作用是把傳來的資料進行算術或邏輯運算,輸入**為兩個8位資料,分別來自累加器和資料暫存器。alu能完成對這兩個資料進行加、減、與、或、比較大小等操作,最後將結果存入累加器。

控制器由程式計數器、指令暫存器、指令譯碼器、時序發生器和操作控制器等組成,是釋出命令的“決策機構”,即協調和指揮整個微機系統的操作。

2樓:匿名使用者

其一:因為它能夠準確地劃分成時脈頻率,與uart(通用非同步接收器/傳送器)量常見的波特率相關。特別是較高的波特率(19600,19200),不管多麼古怪的值,這些晶振都是準確,常被使用的。

其二:用11.0592晶振的原因是51微控制器的定時器導致的。

用51微控制器的定時器做波特率發生器時,如果用11.0592mhz的晶振,根據公式算下來需要定時器設定的值都是整數;如果用12mhz晶振,則波特率都是有偏差的,比如9600,用定時器取0xfd,實際波特率10000,一般波特率偏差在4%左右都是可以的,所以也還能用stc90c516 晶振12m 波特率9600 ,倍數時誤差率6.99%,不倍數時誤差率8.

51%,資料肯定會出錯。 這也就是串列埠通訊時大家喜歡用11.0592mhz晶振的原因,在波特率倍速時,最高可達到57600,誤差率0.

00%。 用12mhz,最高也就4800,而且有0.16%誤差率,但在允許範圍,所以沒多大影響。

微控制器上的晶振為什麼有時是12mhz,有時是11.0592mhz?有什麼區別麼?

3樓:生活如歌

標準的51微控制器晶振是1.2m-12m,一般由於一個機器週期是12個時鐘週期,所以先12m時,一個機器週期是1us,好計算,而且速度相對是最高的(當然現在也有更高頻率的微控制器)。

11.0592m是因為在進行通訊時,12m頻率進行序列通訊不容易實現標準的波特率,比如9600,4800,而11.0592m計算時正好可以得到,因此在有通訊介面的微控制器中,一般選11.

0592m

4樓:匿名使用者

這主要是對脈衝時間有要求的時候就要別的,因為序列口的波特率對每個脈衝時間有嚴格的要求,那個11.0562的經過分頻後剛好和電腦上的波特率可以同步。而平時對時序要求不嚴的就用12m。

因為每條指令完成的時間都是晶振頻率的1/12的整數倍。

5樓:

11.0952mhz的晶振在計算時鐘、串列埠通訊波特率等運算中能夠得到一個整數,計算的結構更加的精確和方便

6樓:帝國科技晶振

單機片晶振更多的知識我知道,你可以進帝國科技裡面有很多詳細的解答

7樓:

一個照顧波特率,一個照顧時間。

AT89C51的微控制器,晶振是11 0592MHZ的,算延時,要有計算步驟,謝謝

9 void delay 50us uint t 50us延遲函式 10 c 0x0d45 d3 setb c 1 c 0x0d46 ef mov a,r7 1 c 0x0d47 9400 subb a,0x00 2 c 0x0d49 ee mov a,r6 1 c 0x0d4a 9400 subb...

微控制器晶振為12MHZ,要讓微控制器延時100ms怎麼計算

一個機器週期 12時鐘週期 不管時鐘多少,都按一個機器週期 12時鐘週期計算 關鍵 12mhz時鐘換過來就是1m機器週期 1m s 1ms就是1000機器週期 6mhz時鐘換過來就是0.5m機器週期 0.5m s 1ms就是500機器週期 8位計數器最高範圍是65536,如果我們要記時1s,可以以1...

51微控制器SBUF什麼意思,51微控制器中SBUF中讀出的資料型別

define 巨集定義 unsigned乙個資料型別 還有就是signed 乙個是有符號 乙個是無符號 int資料型別 sbuf是串列埠接送或者傳送資料暫存器 define 是定義乙個常量 unsigned char 定義乙個字元型變數,unsigned int 定義乙個整數型變數購買sea wol...