高手分享一些對單片機的經(jīng)驗理解
單片機,single chip microcomputer,單芯片微型計算機?傮w來說,他就是一個芯片。但是他是一個特殊的芯片,因為他不是實現(xiàn)單獨的邏輯功能。他是將一個整體的計算機系統(tǒng)集成到這個芯片上。這個計算機系統(tǒng)包括運算器,控制器,存儲器,輸入設備和輸出設備。
其實單片機的學習,和計算機的學習差別不是太大。包括運算器,控制器,存儲器,以及輸入輸出設備的學習。
運算器
運算器由運算部件--算術邏輯單元(alu)、累加器、計算器等部件組成。
控制器
學習的難點在于涉及到指令方面的操作?刂破饔沙绦蛴嫈(shù)器,指令寄存器,指令譯碼器,時序發(fā)生器和操作控制器。
單片機的開發(fā)過程:
這里所說的開發(fā)過程并不是一般書中所說的從任務分析開始,我們假設已設計并制作好硬件,下面就是編寫軟件的工作。在編寫軟件之前,首先要確定一些常數(shù)、地址,事實上這些常數(shù)、地址在設計階段已被直接或間接地確定下來了。如當某器件的連線設計好后,
其地址也就被確定了,當器件的功能被確定下來后,其控制字也就被確定了。然后用文本編輯器(如EDIT、CCED等)編寫軟件,編寫好后,用編譯器對源程序文件編譯,查錯,直到?jīng)]有語法錯誤,除了極簡單的程序外,一般應用仿真機對軟件進行調試,直到程序運行正
確為止。運行正確后,就可以寫片(將程序固化在EPROM中)。在源程序被編譯后,生成了擴展名為HEX的目標文件,一般編程器能夠識別這種格式的文件,只要將此文件調入即可寫片。
開發(fā)語言的選擇
目前,很多人對匯編語言并不認可?梢哉f,掌握用C語言單片機編程很重要,可以大大提高開發(fā)的效率。不過初學者可以不了解單片機的匯編語言,但一定要了解單片機具體性能和特點,不然在單片機領域是比較致命的。如果不考慮單片機硬件資源,在KEIL中用C
胡亂編程,結果只能是出了問題無法解決!可以肯定的說,最好的C語言單片機工程師都是從匯編走出來的編程者,因為單片機的C語言雖然是高級語言,但是它不同于臺式機個人電腦上的VC++什么的。單片機的硬件資源不是非常強大,不同于我們用VC、VB等高級語言在
臺式PC上寫程序,畢竟臺式電腦的硬件非常強大,所以才可以不考慮硬件資源的問題。還有就是在單片機編程中C語言雖然編程方便,便于人們閱讀,但是在執(zhí)行效率上是要比匯編語言低10%到20%,所以用什么語言編寫程序是要看具體用在什么場合下。總的來說做單片機
編程要靈活使用匯編語言與C語言,讓單片機的強大功能以最高是效率展示給用戶。
常用的單片機類型
STC單片機
STC公司的單片機主要是基于8051內核,是新一代增強型單片機,指令代碼完全兼容傳統(tǒng)8051,速度快8~12倍,帶ADC,4路PWM,雙串口,有全球唯一ID號,加密性好,抗干擾強.
PIC單片機:
是MICROCHIP公司的產(chǎn)品,其突出的特點是體積小,功耗低,精簡指令集,抗干擾性好,可靠性高,有較強的模擬接口,代碼保密性好,大部分芯片有其兼容的FLASH程序存儲器的芯片.
EMC單片機:
是臺灣義隆公司的產(chǎn)品,有很大一部分與PIC 8位單片機兼容,且相兼容產(chǎn)品的資源相對比PIC的多,價格便宜,有很多系列可選,但抗干擾較差.
ATMEL單片機(51單片機):
ATMEl公司的8位單片機有AT89、AT90兩個系列,AT89系列是8位Flash單片機,與8051系列單片機相兼容,靜態(tài)時鐘模式;AT90系列單片機是增強RISC結構、全靜態(tài)工作方式、內載在線可編程Flash的單片機,也叫AVR單片機.
PHLIPIS 51LPC系列單片機(51單片機):
PHILIPS公司的單片機是基于80C51內核的單片機,嵌入了掉電檢測、模擬以及片內RC振蕩器等功能,這使51LPC在高集成度、低成本、低功耗的應用設計中可以滿足多方面的性能要求.
HOLTEK單片機:
臺灣盛揚半導體的單片機,價格便宜,種類較多,但抗干擾較差,適用于消費類產(chǎn)品.
TI公司單片機(51單片機):
德州儀器提供了TMS370和MSP430兩大系列通用單片機.TMS370系列單片機是8位CMOS單片機,具有多種存儲模式、多種外圍接口模式,適用于復雜的實時控制場合;MSP430系列單片機是一種超低功耗、功能集成度較高的16位低功耗單片機,特別適用于要求功耗低的場合
松翰單片機(SONIX):
是臺灣松翰公司的單片,大多為8位機,有一部分與PIC 8位單片機兼容,價格便宜,系統(tǒng)時鐘分頻可選項較多,有PMW ADC 內振 內部雜訊濾波。缺點RAM空間過小,抗干擾較好。
三星單片機
三星單片機有KS51和KS57系列4位單片機,KS86和KS88系列8位單片機,KS17系列16位單片機和KS32系列32位單片機,三星還為ARM公司生產(chǎn)ARM單片機,常見的S344b0等.三星單片機為OTP型ISP在片編程功能.
SST 單片機
美國SST公司推出的SST89系列單片機為標準的51系列單片機,包括SST89E/V52RD2, SST89E/V54RD2,SST89E/V58RD2,SST89E/V554RC,SST89E/V564RD等.它與8052系列單片機兼容.提供系統(tǒng)在線編程(ISP功能).內部flash擦寫次數(shù)1萬次以上,程序保存時間可達100年.
還有很多優(yōu)秀的單片機生產(chǎn)企業(yè)這里沒有收集,每個企業(yè)都有自己的特點,大家根據(jù)需要選擇單片機,在完全實現(xiàn)功能的前提下追求低價位,當然并不是這樣最好,實際中選擇單片機跟開發(fā)者的應用習慣和開發(fā)經(jīng)驗是密不可分的。
單片機與嵌入式系統(tǒng):
嵌入式系統(tǒng)源于計算機的嵌入式應用,早期嵌入式系統(tǒng)為通用計算機經(jīng)改裝后嵌入到對象體系中的各種電子系統(tǒng),如艦船的自動駕駛儀,輪機監(jiān)測系統(tǒng)等。嵌入式系統(tǒng)首先是一個計算機系統(tǒng),其次它被嵌入到對象體系中、在對象體系中實現(xiàn)對象要求的數(shù)據(jù)采集、處理、狀態(tài)顯示、輸出控制等功能,由于嵌入在對象體系中,嵌入式系統(tǒng)的計算機沒有計算機的獨立形式及功能。單片機完全是按照嵌入式系統(tǒng)要求設計的,因此單片機是最典型的嵌入式系統(tǒng)。早期的單片機只是按嵌入式應用技術要求設計的計算機單芯片集成,故名單片機。隨后,單片機為滿足嵌入式應用要求不斷增強其控制功能與外圍接口功能,尤其是突出控制功能,因此國際上已將單片機正名為微控制器(MCU,Microcontroller Unit)。
編輯:admin 最后修改時間:2018-05-18