何學好單片機是我們一起交流的話題分享給大家! 單片機越來越多的受到電子產品研發員和我國高等技術類學校的應用與重視。本文在多年經驗 的基礎上,從單片機結構、邏輯思維、和微觀理念方面著手,詳細介紹了如何學好單片機這門 應用技術的幾點經驗之談。 引言 單片機誕生于20世紀70年代。所謂單片機是利用大規模集成電路技術把中央處理單元(Center Processing Unit,也即常稱的CPU)和數據存儲器(RAM)、程序存儲器(ROM)及其他I/O通信口集成在一塊芯片上,構成一個最小的計算機系統,再加上了中斷單元,定時單元及A/D轉換等更復雜、更完善的電路,使得單片機的功能越來越強大,應用更廣泛[1]。 現在更多單片機的發展已經進入了嵌入式系統時代, 由于制造工藝的進步,有如 VHDL、RTOS、CPLD、FPGA、DSP、arm等這一系列可編程器件的體積越來越小、成本越來越低,而功能是越來越能滿足人們的需要。自上世紀80年代以來,單片機技術在我國各個控制領域得到了廣泛應用,各個世界半導體公司都非常看好中國這個龐大的市場而紛紛到中國來投資建廠,如在蘇州就有日本的瑞薩、松下、美國的快捷等半導體公司在中的生產廠地。同時面對這一技術的不斷發展,我國大部分高校都已經把單片機方面的課程作為學生的必修課,這為我國近些年來的科技、工業控制等方面的發展培養了大量人才,而且社會對此方面的人才需求還在不斷的增加。面對如此情況,作為在校學生,又該從何學起?如何學好這門課程呢?又怎樣才能不讓自己學了等于沒學呢?本文在多年實踐的基礎上,介紹自已的一些感受和經驗。 理解單片機的結構 對于一個初學者,最迷糊的就是對單片機芯片里面的結構的理解,小小的一個芯片為何能完成如此神奇的功能。 第一次從事電子方面的工作,也總對那黑黑的芯片里面感到不可思意的神奇。直到有一天,在檢修一臺日本二手電子市場里買來的程控交換機時,發現里面有一塊黑東西上的黑膠已經裂開,把它撬開一看,里面就是一塊電路板,上面焊滿了密密麻麻的電子零件。終于有點明白,原來芯片也可以這樣做成。當然當時所見的那塊電路板是不能被稱之為芯片的,那只是日本的電子制造公司為了防止別人抄襲而把整個電路板密封起來或其它原因,只引出幾個的引腳與其它電路連接。不過它可以讓人聯想到芯片的基本結構與此相類似,如果把那些內眼看得見的電子零件再縮小一千倍或更小以至于能把所有電子零件做在一個硅片上,那也就成了名副其實的芯片了。我們不防以圖1所示的電路及電路板來做一個生動形象的介紹。該圖是一個直流馬達可以正反兩個方向轉動的電路,做成電路板并焊好電子元件后,經測試沒有問題就可以用黑膠(通常采用酚醛樹脂等材料)把所有電子元件封起來,只留六個引腳來與外部電路連接,這樣看起來就好像是一個芯片 知道了一般芯片的原理,同樣可以更進一步想象單片機為什么會執行邏輯運算等功能,這就牽涉到數字電路和模擬電路的知識。 其實不管一個單片機的功能是如何的強大,其只不過是把許多以微米,甚至是納米為單位級的數字的和模擬電子器件組成。為了形象的來說明單片機內部的結構原理,這里不訪舉如圖2所示的跑馬燈電路來闡述。圖中電路表明的最終目的是讓LED依次輪流被點亮。首先是通過計數器對輸入脈沖計數,從0到15共16個脈沖為一個輪回,也即計數器的輸出依次為二進制的0000B到1111B,再由四-十六譯碼器把計數器的結果解碼輸出,即依次置Y0到Y15由高電平變為高電平。當某一輸出為高電平時,經過反向器后,與此線路相連接的LED的陰極被拉為低電平從而點亮該發光二極管。這樣一來,計數器和譯碼器就相當于單片機里的處理器與PC地址寄存器了,與譯碼器輸出腳相連的線就相當于地址線,與LED負極相連的輸出線就相當于數據線,每一條“地址線”都與8根“數據線”有一個交叉,每一個交叉就相當于存儲單元的每一個位。在這些交叉處是否要連通就相當于把程式燒錄到存儲器(ROM)里。最后總體來看就相當于一個只有16個地址的8位單片機。如果把LED換成圖中數碼管,改變圖中的二極管連接,在“單片機”通電和輸入時鐘脈沖后,就可以不停的來顯示數字了。 另外,要做到對單片機內部結果真正的了解,還必須得先要有很扎實的電路基礎、模擬電路、數字電路等方面的知識,否則可能就是空中樓閣。 改變人生軌跡,規劃職業藍圖 信盈達助你輕松駕馭嵌入式,3個月成就高薪夢想 就業職位:單片機開發工程師,嵌入式開發工程師 李工:13510783517 QQ:313807838 開設以下特色課程: 特色課程四:嵌入式ARM9+Linux培訓班 由經驗豐富的嵌入式工程師實戰教學,手把手操作教學,以實踐為主。 所有學員在學習期間均會獲得我公司研發部十幾位資深高級工程師、國際項目經理等的技術支持,除正常學習時間外,其他任何時間學員均可前來進行額外實踐。更多信息詳見公司網站:http://www.edu118.com 周末免費試聽預約熱線: 0755-88846901 聯系人:李工 |