【廣告】
單片機(jī)的發(fā)展
單片機(jī)出現(xiàn)的歷史并不長(zhǎng),但發(fā)展十分迅猛。它的產(chǎn)生與發(fā)展和微處理器的產(chǎn)生與發(fā)展大體同步,自1971年美國(guó)Intel公司首先推出4位微處理器以來(lái),它的發(fā)展到目前為止大致可分為5個(gè)階段。
單片機(jī)發(fā)展的初級(jí)階段(1971年至1976年):1971年11月Intel公司首先設(shè)計(jì)出集成度為2000只晶體管/片的4位微處理器Intel 4004, 并配有RAM、 ROM和移位寄存器, 構(gòu)成了首臺(tái)MCS—4微處理器, 而后又推出了8位微處理器Intel 8008, 以及其它各公司相繼推出的8位微處理器。
搞單片機(jī)開(kāi)發(fā),一定要會(huì)C嗎?
匯編語(yǔ)言是一種用文字助記符來(lái)表示機(jī)器指令的符號(hào)語(yǔ)言,是接近機(jī)器碼的一種語(yǔ)言。其主要優(yōu)點(diǎn)是占用資源少、程序執(zhí)行效率很高。但是不同的CPU,其匯編語(yǔ)言可能有所差異,所以不易移植。
對(duì)于目前普遍使用的RISC架構(gòu)的8bit MCU來(lái)說(shuō),其內(nèi)部ROM、RAM、STACK等資源都有限,如果使用C語(yǔ)言編寫(xiě),一條C語(yǔ)言指令編譯后,會(huì)變成很多條機(jī)器碼,很容易出現(xiàn)ROM空間不夠、堆棧溢出等問(wèn)題。而且一些單片機(jī)廠家也不一定能提供C編譯器。而匯編語(yǔ)言,一條指令就對(duì)應(yīng)一個(gè)機(jī)器碼,每一步執(zhí)行什么動(dòng)作都很清楚,并且程序大小和堆棧調(diào)用情況都容易控制,調(diào)試起來(lái)也比較方便。所以在資源較少單片機(jī)開(kāi)發(fā)中,我們還是建議采用匯編語(yǔ)言比較好。
而C語(yǔ)言是一種編譯型程序設(shè)計(jì)語(yǔ)言,它兼顧了多種語(yǔ)言的特點(diǎn),并具備匯編語(yǔ)言的功能。C語(yǔ)言有功能豐富的庫(kù)函數(shù)、運(yùn)算速度快、編譯效率很高、有良好的可移植性,而且可以直接實(shí)現(xiàn)對(duì)系統(tǒng)硬件的控制。C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,它支持當(dāng)前程序設(shè)計(jì)中廣泛采用的由頂向下結(jié)構(gòu)化程序設(shè)計(jì)技術(shù)。此外,C語(yǔ)言程序具有完善的模塊程序結(jié)構(gòu),從而為軟件開(kāi)發(fā)中采用模塊化程序設(shè)計(jì)方法提供了有力的保障。因此,使用C語(yǔ)言進(jìn)行程序設(shè)計(jì)已成為軟件開(kāi)發(fā)的一個(gè)主流。用C語(yǔ)言來(lái)編寫(xiě)目標(biāo)系統(tǒng)軟件,會(huì)大大縮短開(kāi)發(fā)周期,且明顯地增加軟件的可讀性,便于改進(jìn)和擴(kuò)充,從而研制出規(guī)模更大、性能更完備的系統(tǒng)。
如何學(xué)好單片機(jī)?
學(xué)習(xí)好單片機(jī),主要的是實(shí)踐,在實(shí)踐中增長(zhǎng)經(jīng)驗(yàn)。在校學(xué)生的話,實(shí)踐機(jī)會(huì)的確會(huì)比較少,但是有機(jī)會(huì)的話,可以畢業(yè)實(shí)習(xí)選擇相關(guān)的課題,這樣就可以接觸到實(shí)際的項(xiàng)目。而且如果單片機(jī)微機(jī)原理是一門(mén)主課的話,相信學(xué)校會(huì)安排比較多的實(shí)踐上機(jī)機(jī)會(huì)。有能力的話,可以找一些相關(guān)兼職工作做做,會(huì)更有幫助。而且單片機(jī)開(kāi)發(fā)應(yīng)用需要軟硬件結(jié)合,所以不能只滿足于編程技巧如何好,平時(shí)也要注意硬件知識(shí)的積累,多上上電子論壇網(wǎng)站,買(mǎi)一些相關(guān)雜志。可能的話,可以到電子市場(chǎng)去買(mǎi)一些小零件,自己搭一個(gè)小系統(tǒng)讓它工作起來(lái)。