Ⅰ 學習單片機會心得
首先,學習單片機要有一定的基礎:電子技術方面要有數字電路和模擬電路等方面的理論基礎,特別是數字電路;編程語言要求匯編語言或C語言。要想成為單片機高手,建議初學者首先學習匯編語言,學的差不多的時候,轉入C語言學習。盡管匯編語言屬於低級語言,編程效率低,但是較C語言具有目標代碼簡短,佔用內存少,執行速度快等優點,更重要的是能使初學者盡快熟悉單片機的內部結構,並能對其進行精確的控制。匯編語言在單片機教材裡面都會涉及,不需要單獨購買教材和學習。C語言是一門學問,有很多專業書籍來講解,並且對我們今後的編程生涯有絕對的好處,因此要深入學習,千萬不要自以為看了某某的視頻教程就以為掌握了C語言,那隻是C語言的一部分。在這里給大家推薦一本單片機C語言程序設計參考書,馬忠梅等著,北京航空航天大學出版社出版的《單片機的C語言應用程序設計》,要求C語言基礎。如果沒學過C語言,建議學習清華大學譚浩強編寫的C語言程序設計,這本書寫的不錯,通俗易懂。
其次,是單片機教材選擇。單片機是一門非常重視實踐的技術,不能總是看書,但要學習它首先應看書,對單片機引腳、內部結構、寄存器和原理有一定地了解和感官認識,它的是怎樣工作的,能幹些什麼?剛開始時,也許你看不明白,但這並不要緊,因為你還缺乏實踐經驗。現在單片機應用廣泛,因此各個廠家分別推出了自己的單片機,按內部結構體系派系分:51系列、PIC系列、AVR系列、摩托羅拉等等……我們沒必要每樣都學!因為他們的編程方法和調試過程以及內部指令結構有一定的相似,只要學精通一款就OK了!尤其是用C語言編程,就幾乎不用分什麼派系,但是我們要選擇一款有代表性的知識范圍廣,並且入門容易,書籍多。一般來說,MCS-51系列單片機已經得到廣泛的普及和應用,市場上它的資料也比較多,用的人也很多。
Ⅱ 單片機定時器/計數器主要有什麼作用
作用一:計數概念的引入
作用二:定時
作用三:溢出
單片機提供內部定時和外部計數的功能,功能差不多都是定時和計數達到終點時,產生中斷,而CPU則暫時放下目前所執行的程序區處理中斷。
定時器:主要用於產生固定時間(比較精確),也可以作為UART等外設的頻率發生器。
計數器:主要是計量引腳產生脈沖的個數。
Ⅲ 單片機控制器的國內外研究現狀
單片機,亦稱單片微電腦或單片微型計算機。它是把中央處理器(CPU)、隨機存取存儲器(RAM)、只讀存儲器(ROM)、輸入/輸出埠(I/0)等主要計算機功能部件都集成在一塊集成電路晶元上的微型計算機。現在可以說單片機是百花齊放的時期,世界上各大晶元製造公司都推出了自己的單片機,從8位、16位到32位,數不勝數,應有盡有,它們各具特色,互成互補,為單片機的應用提供廣闊的天地。縱觀單片機的發展過程,可以預示單片機的發展趨勢 。
1、低功耗CMOS化
MCS-51系列的8031推出時的功耗達630mW,而現在的單片機普遍都在100mW左右,隨著對單片機功耗要求越來越低,現在的各個單片機製造商基本都採用了CMOS(互補金屬氧化物半導體工藝)。80C51就採用了HMOS(即高密度金屬氧化物半導體工藝)和CHMOS(互補高密度金屬氧化物半導體工藝)。CMOS雖然功耗較低,但由於其物理特徵決定其工作速度不夠高,而CHMOS則具備了高速和低功耗的特點,這些特徵,更適合於在要求低功耗,電池供電的應用場合。所以這種工藝將是今後一段時期單片機發展的主要途徑。
2、微型單片化
現在常規的單片機普遍都是將中央處理器(CPU)、隨機存取數據存儲(RAM)、只讀程序存儲器(ROM)、並行和串列通信介面,中斷系統、定時電路、時鍾電路集成在一塊單一的晶元上,增強型的單片機集成了如A/D轉換器、PMW(脈寬調制電路)、WDT(看門狗)、有些單片機將LCD(液晶)驅動電路都集成在單一的晶元上,這樣單片機包含的單元電路就更多,功能就越強大。甚至單片機廠商還可以根據用戶的要求量身定做,製造出具有自己特色的單片機晶元。 此外,現在的產品普遍要求體積小、重量輕,這就要求單片機除了功能強和功耗低外,還要求其體積要小。現在的許多單片機都具有多種封裝形式,其中SMD(表面封裝)越來越受歡迎,使得由單片機構成的系統正朝微型化方向發展。
3、主流與多品種共存
現在雖然單片機的品種繁多,各具特色,但仍以80C51為核心的單片機佔主流,兼容其結構和指令系統的有PHILIPS公司的產品,ATMEL公司的產品和中國台灣的Winbond系列單片機。所以C8051為核心的單片機占據了半壁江山。而Microchip公司的PIC精簡指令集(RISC)也有著強勁的發展勢頭,中國台灣的HOLTEK公司近年的單片機產量與日俱增,與其低價質優的優勢,占據一定的市場分額。此外還有MOTOROLA公司的產品,日本幾大公司的專用單片機。在一定的時期內,這種情形將得以延續,將不存在某個單片機一統天下的壟斷局面,走的是依存互補,相輔相成、共同發展的道路。
4、大容量、高性能
以往單片機內的ROM為1KB~4KB,RAM 為64~128B。但在需要復雜控制的場合,該存儲容量是不夠的,必須進行外接擴充。為了適應這種領域的要求,須運用新的工藝,使片內存儲器大容量化。目前,單片機內ROM 最大可達64KB,RAM 最大為2KB。另外單片機進一步改變CPU的性能,加快指令運算的速度和提高系統控制的可靠性。採用精簡指令集(RISC)結構和流水線技術,可以大幅度提高運行速度。現指令速度最高者已達100MIPS(Million Instruction Per Seconds,即兆指令每秒),並加強了位處理、中斷和定時控制功能。這類單片機的運算速度比標準的單片機高出10 倍以上。由於這類單片機有極高的指令速度,可以使用軟體模擬其I/O 功能,由此引入了虛擬外設的新概念。
5、串列擴展技術
在很長一段時間里,通用型單片機通過三匯流排結構擴展外圍器件成為單片機應用的主流結構。隨著低價位OTP(One Time Programble)及各種特殊類型片內程序存儲器的發展,加之處圍介面不斷進入片內,推動了單片機「單片」應用結構的發展。特別是I2C、SPI 等串列匯流排的引入,可以使單片機的引腳設計得更少,單片機系統結構更加簡化及規范化。
6、結論
單片機改變了我們生活,縱觀我們現在生活的各個領域,從導彈的導航裝置,到飛機上各種儀表的控制,從計算機的網路通訊與數據傳輸,到工業自動化過程的實時控制和數據處理,以及我們生活中廣泛使用的各種智能IC卡、電子寵物等,這些都離不開單片機, 單片機有著廣闊的應用前景。