1. 如何選擇適當的晶振要是選的不合適,對單片機有何影響
選擇晶振,要根據你的單片機工作頻率和工作要求來選擇,例如89C51單片機振盪器頻率范圍為0-24Mhz。理論上你可以選擇0-24M'的晶振,頻率越高,精度越大,處理速度越快。你如果用單片機與PC機進行串口通信,由於PC機的串口波特率是9600(常用值)你選的晶振頻率還要滿足9600的整數倍。
一般選晶依據如下
第一是它必須在允許的頻率范圍內
第二是它需要滿足特殊應用的要求
第三是盡量低,減少電源需求,減少電磁輻射
2. 如何根據單片機 選擇晶振
晶振選擇看單片機的能力和你的需要,電路看晶振。
單片機通常都會有一個最高工作頻率要求,比如:Atmega48v(低功耗)最高8MHz,Atmega48a最高16Mhz,選擇晶振時不要超過這個頻率即可。
另外就是看你的需求,比方說,
你需要用到串口通信,那用22.1184MHz或11.0592MHZ,容易實現較高的波特率(19600,19200),
如果你要用到USB通信,那用12Mhz,這個做usb1.0的1.5mhz或2.0的48mhz(鎖相環升頻),都容易實現。
如果要用來計時,4.096MHz或10.24MHz這類2的N次方,容易被分頻,實現精準的計時。
至於晶振邊上的匹配電容或電阻,一般都是個定數了,多少頻率就配多少的電容或電阻,這也有個匹配關系,你可以網路文庫裡面找「晶振匹配電容」「晶振電路」,都可以查到相關文檔。
3. 單片機工作頻率的問題,晶振到底怎麼選擇
1、最基本的單片機,其機器工作頻率為:晶振頻率÷12
2、有的單片機(高級一些的)機器工作頻率為:晶振頻率÷2(或者6等等)
3、以匯編語言為例,單片機執行一條指令需要的時間為1~2個機器周期(機器周期 = 1÷機器工作頻率)
4、舉例:
一普通單片機晶振12MHz,其機器工作頻率為 12MHz÷12 = 1MHz
其機器周期 = 1÷1MHz = 0.000001秒(也就是10的負6次方)
「MOV」指令需要一個機器周期來完成,也就是說執行這條指令需要耗費10的負6次方秒,這么長的時間。
4. STC89C52單片機為什麼選用12M的晶振
個人以為,選用12M晶振主要有兩個理由,一是運行速度快,二是51單片機內部是12分頻,採用12M晶振可以得到1μS的的時鍾周期,這樣定時計算會比較方便。
5. 單片機在選擇晶振時遵循什麼原因
晶振大小由MCU決定。(YXC晶振)
晶振高低決定大小了MCU的運行指令速度。(好比,你買電腦,CPU有1.6G,2.2G,3.0G,你會選3.0G的,速度快)
一般程序運算/需處理指令少的,頻率高一些低一些無所謂。
通常會考慮的是,頻率高,功耗大。測量等用途,頻率高准確高。
若選擇使用晶元內部RC振盪做頻率時,低頻會使晶元抗低溫效果好一些。
6. 單片機的晶振頻率怎麼確定
根據使用需要確定,舉例:如果要產生標準的串口波特率,應使用11.0592MHz,如果要讓51單片機產生整數的時鍾頻率可使用12MHz或者24MHz單片機。
另外根據單片機本身的參數,不要選擇過高的頻率,否則會工作不穩定。舉例:Atmega8L-8PU,這個單片機後面一個8的意思就是建議最大工作頻率不要超過8MHz,如果超過8MHz不大於16MHz,可以選用Atmega8L-16PU。
從內存中取出一條指令,並指出下一條指令在內存中的位置。對指令進行解碼和測試,並產生相應的操作控制信號,以便於執行規定的動作。指揮並控制CPU、內存和輸入輸出設備之間數據流動的方向。
PC用於確定下一條指令的地址,以保證程序能夠連續地執行下去,因此通常又被稱為指令地址計數器。在程序開始執行前必須將程序的第一條指令的內存單元地址(即程序的首地址)送入PC,使它總是指向下一條要執行指令的地址。
(6)單片機晶振選擇擴展閱讀:
在恆定的環境條件下測量振盪器頻率時,振盪器頻率和時間之間的關系。這種長期頻率漂移是由晶體元件和振盪器電路元件的緩慢變化造成的,可用規定時限後的最大變化率(如±10ppb/天,加電72小時後),或規定的時限內最大的總頻率變化(如:±1ppm/(第一年)和±5ppm/(十年))來表示。
基準電壓為+2.5V,規定終點電壓為+0.5V和+4.5V,壓控晶體振盪器在+0.5V頻率控制電壓時頻率改變數為-110ppm,在+4.5V頻率控制電壓時頻率改變數為+130ppm,則VCXO電壓控制頻率壓控范圍表示為:≥±100ppm(2.5V±2V)。
高精度與高穩定度,無補償式晶體振盪器總精度也能達到±25ppm,VCXO的頻率穩定度在10~7℃范圍內一般可達±20~100ppm,而OCXO在同一溫度范圍內頻率穩定度一般為±0.0001~5ppm,VCXO控制在±25ppm以下。
7. 51單片機一般選用多少的晶振
這個與用途有關,比如說如果你要用到串口,那麼就常用11.0592MHz晶振,因為這個頻率的晶振分頻後可以得到精確的波特率。如果要用到計時,就常用12MHz晶振,這樣分頻後是個整數,計時更精確。當需要單片機比較快速的處理數據時,通常使用頻率更高的晶振,因為單片機的處理速度與晶振頻率成正比,晶振頻率越高程序運行速度越快,但更高的處理速度就意味著更大的功耗,所以在對耗電量有嚴格要求的時候,就要考慮用低頻晶振。
8. 單片機晶振大小的選擇和功耗之間的問題
振盪頻率越高,功耗必然越大。所以在滿足系統需求的前提下,應該盡量減小晶振的頻率。(在ARM等高級一些的內核中,有一個專門的鎖相環來控制內部頻率,在CPU不活動的時候可以減小晶振頻率,以降低功耗)
維持系統正常運作所需的最小晶振不取決於單片機內部電路(單片機本身可以工作在極低的頻率下,只是速度極慢),而取決於你的系統需求,比如你的AD需要每ms采樣10次,這就需要單片機運行速度較快,肯定就不能用32.768kHz的晶振了。。。而維持系統正常運作所需的最大晶振是取決於單片機內部電路的,要讓其穩定工作,一般要保證晶振頻率不超過24MHz,否則內部工作狀態就有可能紊亂。
總之,如果系統對速度要求不高的話,一般用6MHz或12MHz就可以了。如果需要使用串口與PC連接,可以選用一個11.0592MHz的晶振,便於定時器設置
9. 單片機中最常用的晶振型號有哪些
一般分為貼片和直插兩種,直插TO-49封裝居多,多是6MHz,8MHz,11.0592MHz,18.432MHz,20MHz。另外還有32.768kHz的用於RTC。貼片晶振的體積與型號主要有5070,6035,5032,4025,3225,2520,1510這七種;其中6035,4025這兩種體積不常用。
10. 為什麼單片機晶振實際是11.0592MHz,而不是12MHz
因為11.0592MHz能夠准確地劃分成時鍾頻率,與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%誤差率,但在允許范圍,所以沒多大影響。
(10)單片機晶振選擇擴展閱讀:
單片機晶振的選擇:
晶振好比單片機的心臟,晶振選擇太高不太合適,具體晶振上限是多少,恐怕測不出來,只能按照單片機的要求,一般STC系列單片機上限是35M或40M,stc單憑上寫的有,如STC11F16XE 35I-LQFP44G其中35I就是晶振最高35M的工業級晶元。
如果用於串口通信,建議選用11.0592M的或22.184M,選擇晶振最主要還是參照說明書。