單片機在工業(yè)領域中,有很多重要的應用。由此,也產生了諸多與單片機相關的崗位。為增進大家對單片機的認識,本文將對單片機和芯片的區(qū)別以及單片機正常工作的條件予以介紹。如果你對單片機具有興趣,不妨繼續(xù)往下閱讀哦。
一、單片機和芯片有什么區(qū)別
單片機是什么?單片機是單片微型計算機簡稱單片機(MCU)的簡稱,也就是嵌入式微控制器。單片機采用超大規(guī)模集成電路技術將具有數(shù)據(jù)處理能力的中央處理器只讀存儲器ROM、定時器/計時器、多種I/O口和中斷系統(tǒng)、隨機存儲器RAM等功能集成到一塊硅片上,因此,可以將單片機看作是一個小而完善的微型計算機系統(tǒng)。單片機由于質量輕、體積小、價格合理被廣泛使用。現(xiàn)在人們生活中的很多電子產品例如電話、計算器、掌上電腦、電子玩具中都有單片機的存在。
那么單片機和芯片又有什么區(qū)別呢?芯片是半導體元件產品的統(tǒng)稱,大多數(shù)芯片都不可以寫入程式,功能相對單一。而單片機可以寫入簡單的程序,用起來非常方便,芯片沒有單片機的功能完善,這就是二者的區(qū)別。
至于單片機為什么還要用C語言編程,這就要從單片機編程的特點說起。單片機的數(shù)據(jù)空間和程序空間都是有限的,因此在編程時最好保持程序的短小精悍。同時,因為乘法和除法會很占用時間,拖慢單片機的速度,因此在編程時應該盡可能避免乘法和除法,使用加、減、移位運算,簡單來說,就是在進行單片機編程時,需要精打細算,而高級語言的代碼體積過于臃腫,不適用于單片機工作。
其實,開發(fā)單片機多使用C語言最重要的原因,還是因為目前最適合單片機開發(fā)的語言過于復雜晦澀,并且不同的單片機匯編指令也不同,不能直接把程序從單片機上直接移植到另一種單片機上,如果每次都使用最適合的那種語言來編程,那么工程量巨大,不如使用精簡且執(zhí)行效率高的C語言重寫程序。因此目前C語言才是單片機開發(fā)編程中最常使用的編程語言。
二、單片機正常工作的條件
1. 單片機供電電源正常
供電電源是單片機工作的首要條件,如果電源都不正常,那單片機肯定不能正常工作,所以我們在測試任何產品之前首要的工作就是測量芯片及產品的供電電源;出現(xiàn)電源不正常的情況,主要查找以下幾點:
(1)電源供電是否正常;
(2)芯片是否存在短路現(xiàn)象;
(3)芯片的電源管腳是否虛焊或者漏焊;
(4)芯片的電源管腳是否有開路現(xiàn)象;
2.單片機復位管教不能出現(xiàn)復位信號
如果單片機一直處于復位狀態(tài),那么單片機的程序肯定運行不正常,所以在遇到單片機不能正常工作且電源正常的情況下,就需要測量一下單片機的復位管腳是否有復位信號出現(xiàn),不同的單片機的復位信號是不同的,例如51單片機的復位信號是高電平,AVR單片機的復位信號是低電平,具體的要根據(jù)芯片資料來判斷,單片機出現(xiàn)復位的問題,主要查找以下幾點:
(1)電容選擇不合適,建議復位電路以單片機典型電路上使用的參數(shù)為主;
(2)電阻選擇不合適,建議復位電路以單片機典型電路上使用的參數(shù)為主;
(3)復位信號的位置選取的不對;
3.晶振是否起振
引起晶振起振的原因很多,包括晶振頻率選擇、電容的選擇,如果晶振不起振主要查找以下幾點:
(1)晶振是否與單片機的典型應用電路上使用的晶振頻率不一致;我以前在調試51板子時就曾遇到過將11.0592M晶振錯焊為12M晶振,而造成的單片機一直不能正常工作的情況;
(2)晶振旁邊的晶體負載電容是否焊接正確::晶體負載電容如果焊接錯誤,或者焊接短路都有可能造成晶振不起振,單片機不能正常工作.
以上就是小編這次想要和大家分享的有關的單片機的內容,希望大家對本次分享的內容已經具有一定的了解。如果您想要看不同類別的文章,可以在網(wǎng)頁頂部選擇相應的頻道哦。





