導航:首頁 > 操作系統 > 51單片機a2晶元類型

51單片機a2晶元類型

發布時間:2024-06-27 09:17:53

Ⅰ 用51單片機給at24c16與at24c02編程上的區別和要注意些什麼,程序的寫法有那些不同,比如

沒什麼太大的不同,AT24C02 讀寫時要指定地址 A2 A1 A0 ,這就是晶元上這3支管腳的接法,而 AT24C16 不用指定地址但是因為容量比較大因此要選定所要讀寫的頁(PAGE)。

Ⅱ 51單片機a6a7與A2A3的區別

V的面積a6,a7與a2a3的區別,a617的性能和配置比a2a3的更好一點,性價比更高一點。

Ⅲ 單片機的原理及應用

單片機到底是什麼呢?就是一個電腦,只不過是微型的,麻雀雖小,五臟俱全:它內部也用和電腦功能類似的模塊,比如CPU,內存,並行匯流排,還有和硬碟作用相同的存儲器件,不同的是它的這些部件性能都相對我們的家用電腦弱很多,不過價錢也是低的,一般不超過10元即可......用它來做一些控制電器一類不是很復雜的工作足矣了。排煙罩VCD等等的家電裡面都可以看到它的身影!......它主要是作為控制部分的核心部件。x0dx0a單片機是靠程序工作的,並且可以修改。通過不同的程序實現不同的功能,尤其是特殊的獨特的一些功能,這是別的器件需要費很大力氣才能做到的,有些則是花大力氣也很難做到的。一個不是很復雜的功能要是用美國50年代開發的74系列,或者60年代的CD4000系列這些純硬體來搞定的話,電路一定是一塊大PCB板!但是如果要是用美國70年代成功投放市場的系列單片機,結果就會有天壤之別!只因為單片機的通過你編寫的程序可以實現高智能,高效率,以及高可靠性!x0dx0a由於單片機對成本是敏感的,所以目前占統治地位的軟體還是最低級匯編語言(近幾年,C語言也開始廣泛被應用),它是除了二進制機器碼以上最低級的語言了,既然這么低級為什麼還要用呢?很多高級的語言已經達到了可視化編程的水平為什麼不用呢?原因很簡單,就是單片機沒有家用計算機那樣的CPU,也沒有像硬碟那樣的海量存儲設備。一個可視化高級語言編寫的小程序裡面即使只有一個按鈕,也會達到幾十K的尺寸!對於家用PC的硬碟來講沒什麼,可是對於單片機來講是不能接受的。單片機在硬體資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計算機上的操作系統和應用軟體拿到家用PC上來運行,家用PC也是承受不了的。x0dx0a目前最常用的單片機為MCS-51,是由美國INTEL公司(生產CPU的英特爾)生產的,89C51是這幾年在我國非常流行的單片機,它是由美國ATMEL公司開發生產的,其內核兼容MCS-51單片機。x0dx0a單片微型計算機簡稱單片機,是典型的嵌入式微控制器(MicrocontrollerUnit),x0dx0a單片機晶元x0dx0a常用英文字母的縮寫MCU表示單片機,單片機又稱單片微控制器,它不是完成某一個邏輯功能的晶元,而是把一個計算機系統集成到一個晶元上。單片機由運算器,控制器,存儲器,輸入輸出設備構成,相當於一個微型的計算機(最小系統),和計算機相比,單片機只缺少了I/O設備。概括的講:一塊晶元就成了一台計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。它最早是被用在工業控制領域。x0dx0a由於單片機在工業控制領域的廣泛應用,單片機由晶元內僅有CPU的專用處理器發展而來。最早的設計理念是通過將大量外圍設備和CPU集成在一個晶元中,使計算機系統更小,更容易集成進復雜的而對體積要求嚴格的控制設備當中。x0dx0aINTEL的8080是最早按照這種思想設計出的處理器,當時的單片機都是8位或4位的。其中最成功的是INTEL的8031,此後在8031上發展出了MCS51系列單片機系統。因為簡單可靠而性能不錯獲得了很大的好評。盡管2000年以後ARM已經發展出了32位的主頻超過300M的高端單片機,直到目前基於8031的單片機還在廣泛的使用。在很多方面單片機比專用處理器更適合應用於嵌入式系統,因此它得到了廣泛的應用。事實上單片機是世界上數量最多處理器,隨著單片機家族的發展壯大,單片機和專用處理器的發展便分道揚鑣。x0dx0a現代人類生活中所用的幾乎每件電子和機械產品中都會集成有單片機。手機、電話、計算器、家用電器、電子玩具、掌上電腦以及滑鼠等電腦配件中都配有1-2部單片機。汽車上一般配備40多部單片機,復雜的工業控制系統上甚至可能有數百台單片機在同時工作!單片機的數量不僅遠超過PC機和其他計算的總和,甚至比人類的數量還要多。x0dx0a單片機是指晶元本身,而單片機系統是為實現某一個控制應用需要由用戶設計的,是一個圍繞單片機晶元而組建的計算機應用系統,這是單片機應用系統。單片機開發系統是指單片機開發調試的工具。單片機自問世以來,性能不斷提高和完善,其資源又能滿足很多應用場合的需要,加之單片機具有集成度高、功能強、速度快、體積小、功耗低、使用方便、價格低廉等特點,正在逐步取代現有的多片微機應用系統。單片機自動完成賦予它的任務的過程,也就是單片機執行程序的過程,即一條條執行的指令的過程,所謂指令就是把要求單片機執行的各種操作用的命令的形式寫下來,這是在設計人員賦予它的指令系統所決定的,一條指令對應著一種基本操作;單片機所能執行的全部指令,就是該單片機的指令系統,不同種類的單片機,其指令系統亦不同。為使單片機能自動完成某一特定任務,必須把要解決的問題編成一系列指令(這些指令必須是選定單片機能識別和執行的指令),這一系列指令的集合就成為程序,程序需要預先存放在具有存儲功能的部件——存儲器中。存儲器由許多存儲單元(最小的存儲單位)組成,就像大樓房有許多房間組成一樣,指令就存放在這些單元里,單元里的指令取出並執行就像大樓房的每個房間的被分配到了唯一房間號一樣,每一個存儲單元也必須被分配到唯一的地址號,該地址號稱為存儲單元的地址,這樣只要知道了存儲單元的地址,就可以找到這個存儲單元,其中存儲的指令就可以被取出,然後再被執行。x0dx0a2應用分類x0dx0a編輯x0dx0ax0dx0a單片機作為計算機發展的一個重要分支領域,根據目前發展情況,從不同角度單片機大致可以分為通用型/專用型、匯流排型/非匯流排型及工控型/家電型。x0dx0a通用型/專用型x0dx0ax0dx0a這是按單片機適用范圍來區分的。例如,80C51是通用型單片機,它不是為某種專用途設計的;專用型單片機是針對一類產品甚至某一個產品設計生產的,例如為了滿足電子體溫計的要求,在片內集成ADC介面等功能的溫度測量控制電路。x0dx0a匯流排/非匯流排型x0dx0ax0dx0a這是按單片機是否提供並行匯流排來區分的。匯流排型單片機單片機普遍設置有並行地址匯流排、數據匯流排、控制匯流排,這些引腳用以擴展並行外圍器件都可通過串列口與單片機連接,另外,許多單片機已把所需要的外圍器件及外設介面集成一片內,因此在許多情況下可以不要並行擴展匯流排,大大減省封裝成本和晶元體積,這類單片機稱為非匯流排型單片機。x0dx0a控制型/家電型x0dx0ax0dx0a這是按照單片機大致應用的領域進行區分的。一般而言,工控型定址范圍大,運算能力強;用於家電的單片機多為專用型,通常是小封裝、低價格,外圍器件和外設介面集成度高。顯然,上述分類並不是惟一的和嚴格的。例如,80C51類單片機既是通用型又是匯流排型,還可以作工控用。x0dx0a3發展歷史x0dx0a編輯x0dx0ax0dx0a單片機誕生於1971年,經歷了SCM、MCU、SoC三大階段,早期的SCM單片機都是8位或4位的。其中最成功的是INTEL的8031,此後在8031上發展出了MCS51系列MCU系統。基於這一系統的單片機系統直到現在還在廣泛使用。隨著工業控制領域要求的提高,開始出現了16位單片機,但因為性價比不理想並未得到很廣泛的應用。90年代後隨著消費電子產品大發展,單片機技術得到了巨大提高。隨著INTELi960系列特別是後來的ARM系列的廣泛應用,32位單片機迅速取代16位單片機的高端地位,並且進入主流市場。x0dx0a而傳統的8位單片機的性能也得到了飛速提高,處理能力比起80年代提高了數百倍。目前,高端的32位Soc單片機主頻已經超過300MHz,性能直追90年代中期的專用處理器,而普通的型號出廠價格跌落至1美元,最高端的型號也只有10美元。x0dx0a當代單片機系統已經不再只在裸機環境下開發和使用,大量專用的嵌入式操作系統被廣泛應用在全系列的單片機上。而在作為掌上電腦和手機核心處理的高端單片機甚至可以直接使用專用的Windows和Linux操作系統。x0dx0a主要階段x0dx0ax0dx0a早期階段x0dx0aSCM即單片微型計算機(SingleChipMicrocomputer)階段,主要是尋求最佳的單片形態嵌入式系統的最佳體系結構。「創新模式」獲得成功,奠定了SCM與通用計算機完全不同的發展道路。在開創嵌入式系統獨立發展道路上,Intel公司功不可沒。x0dx0a中期發展x0dx0aMCU即微控制器(MicroControllerUnit)階段,主要的技術發展方向是:不斷擴展滿足嵌入式應用時,對象系統要求的各種外圍電路與介面電路,突顯其對象的智能化控制能力。它所涉及的領域都與對象系統相關,因此,發展MCU的重任不可避免地落在電氣、電子技術廠家。從這一角度來看,Intel逐漸淡出MCU的發展也有其客觀因素。在發展MCU方面,最著名的廠家當數Philips公司。x0dx0aPhilips公司以其在嵌入式應用方面的巨大優勢,將MCS-51從單片微型計算機迅速發展到微控制器。因此,當我們回顧嵌入式系統發展道路時,不要忘記Intel和Philips的歷史功績。x0dx0a當前趨勢x0dx0aSoC嵌入式系統(SystemonChip)式的獨立發展之路,向MCU階段發展的重要因素,就是尋求應用系統在晶元上的最大化解決,因此,專用單片機的發展自然形成了SoC化趨勢。隨著微電子技術、IC設計、EDA工具的發展,基於SoC的單片機應用系統設計會有較大的發展。因此,對單片機的理解可以從單片微型計算機、單片微控制器延伸到單片應用系統。

Ⅳ 關於單片機的種類問題

單片機的分類Ⅰ 按生產廠家分
美國的英特爾(Intel) 公司、摩托羅拉(Motorola)公司、國家辦導體(NS) 公司、Atmel公司、微晶元(Microchip) 公司、洛克威爾(Rockwell)公司、莫斯特克公司(Mostek)、齊洛格(Zilog)公司、仙童(Fairchid)公司、德州儀器(TI)公司等等。日本的電氣(NS)公司、東芝(Toshiba)公司、富士通(Fujitsu)公司、松下公司、日立(Hitachi)公司、日電(NEC)公司、夏普公司等等。荷蘭的飛利浦(Philips)公司。德國的西門子(Siemens)公司等等。
Ⅱ 按字長分(1)4-BIT 單片機
4 位單片機的控制功能較弱,CPU 一次只能處理4 位二進制數。這類單片機常用於計算器、各種形態的智能單元以及作為家用電器中的控制器。典型產品有NEC 公司的UPD 75××系列、NS 公司的COP400 系列、松下公司的MN1400 系列、ROCKWELL 公司的PPS/1系列、富士通公司的MB88 系列、夏普公司的SM××系列、Toshiba 公司的TMP47×××系列等等。
① 華邦公司的W741系列的4位單片機帶液晶驅動,在線燒錄,保密性高,低操作電壓(1.2V~1.8V)。
② 東芝單片機的4位機在家電領域有很大市場。
(2)8-BIT 單片機
8 位單片機 8 位單片機的控制功能較強,品種最為齊全。和4 位單片機相比,它不僅具有較大的存儲容量和定址范圍,而且中斷源、並行I/O 介面和定時器/計數器個數都有了不同程度的增加,並集成有全雙工串列通信介面。在指令系統方面,普遍增設了乘除指令和比較指令。特別是8 位機中的高性能增強型單片機,除片內增加了A/D 和D/A 轉換器外,還集成有定時器捕捉/比較寄存器、監視定時器(Watchdog)、匯流排控制部件和晶體振盪電路等。這類單片機由於其片內資源豐富和功能強大,主要在工業控制、智能儀表、家用電器和辦公自動化系統中應用。代表產品有Intel 公司的MCS-48 系列和MCS-51 系列 、Microchip 公司的PIC16C××系列和PIC17C××系列以及PIC1400 系列、Motorola 公司的M68HC05 系列和M68HC11 系列、Zilog 公司的Z8 系列、荷蘭Philips 公司的80C51 系列(同MCS-51 兼容)、Atmel公司的AT89 系列(同MCS-51 兼容)、NEC 公司的UPD78××系列等等。
1)51系列單片機
8031/8051/8751是Intel公司早期的產品。應用的早,影響很大,已成為世界上的工業標准。後來很多晶元廠商以各種方式與Intel公司合作,也推出了同類型的單片機,如同一種單片機的多個版本一樣,雖都在不斷的改變製造工藝,但內核卻一樣,也就是說這類單片機指令系統完全兼容,絕大多數管腳也兼容;在使用上基本可以直接互換。人們統稱這些與8051內核相同的單片機為「51系列單片機」。
8031片內不帶程序存儲器ROM,使用時用戶需外接程序存儲器和一片邏輯電路373,外接的程序存儲器多為EPROM的2764系列。用戶若想對寫入到EPROM中的程序進行修改,必須先用一種特殊的紫外線燈將其照射擦除,之後再可寫入。寫入到外接程序存儲器的程序代碼沒有什麼保密性可言。
8051片內有4k ROM,無須外接外存儲器和373,更能體現「單片」的簡練。但是所編的程序無法寫入到其ROM中,只有將程序交晶元廠代為寫入,並是一次性的,不能改寫其內容。
8751與8051基本一樣,但8751片內有4k的EPROM,用戶可以將自己編寫的程序寫入單片機的EPROM中進行現場實驗與應用,EPROM的改寫同樣需要用紫外線燈照射一定時間擦除後再寫入。
在眾多的51系列單片機中,要算 ATMEL 公司的AT89C51、AT89S52更實用,因他不但和8051指令、管腳完全兼容,而且其片內的4K程序存儲器是FLASH工藝的,這種工藝的存儲器用戶可以用電的方式瞬間擦除、改寫,一般專為 ATMEL AT89xx 做的編程器均帶有這些功能。顯而易見,這種單片機對開發設備的要求很低,開發時間也大大縮短。寫入單片機內的程序還可以進行加密,這又很好地保護了你的勞動成果。而且,AT89C51、AT89S51目前的售價比8031還低,市場供應也很充足。
AT89S51、52是2003年ATMEL推出的新型品種,除了完全兼容8051外,還多了ISP編程和看門狗功能。
ATMEL公司的51系列還有AT89C2051、AT89C1051等品種,這些晶元是在AT89C51的基礎上將一些功能精簡掉後形成的精簡版。AT89C2051取掉了P0口和P2口,內部的程序FLASH存儲器也小到2K,封裝形式也由51的P40腳改為20腳,相應的價格也低一些,特別適合在一些智能玩具,手持儀器等程序不大的電路環境下應用;AT89C1051在2051的基礎上,再次精簡掉了串口功能等,程序存儲器再次減小到1k,當然價格也更低。
51 單片機目前已有多種型號,市場上目前供貨比較足的晶元還要算ATMEL 的51、52 晶元, HYUNDAI 的GMS97 系列,WINBOND 的78e52,78e58,77e58 等。
GMS97 系列是一次性燒寫,一般只有大量生產的人才買。at89c51,52 因可以很容易地解密,一般人們只用它來做實驗,或者用在一些即使解了密也無關緊要的場合。89c2051 只有20 腿,體積小巧,在一些簡單應用和體積有限的場合得到廣泛應用。
2)PIC系列單片機
由美國Microchip公司推出的PIC單片機系列產品,首先採用了RISC結構的嵌入式微控制器,其高速度、低電壓、低功耗、大電流LCD驅動能力和低價位OTP技術等都體現出單片機產業的新趨勢。
現在PIC系列單片機在世界單片機市場的份額排名中已逐年升位,尤其在8位單片機市場,據稱已從1990年的第20位上升到目前的第二位。PIC單片機從覆蓋市場出發,已有三種(又稱三層次)系列多種型號的產品問世,所以在全球都可以看到PIC單片機從電腦的外設、家電控制、電訊通信、智能儀器、汽車電子到金融電子各個領域的廣泛應用。現今的PIC單片機已經是世界上最有影響力的嵌入式微控制器之一。
① PIC 8位單片機的分類
PIC 8位單片機產品共有三個系列,即基本級、中級和高級。
a基本級系列該級產品的特點是低價位,如PIC16C5X,適用於各種對成本要求嚴格的家電產品選用。又如PIC12C5XX是世界第一個8腳的低價位單片機,因其體積很小,完全可以應用在以前不能使用單片機的家電產品的空間。
b中級系列該級產品是PIC最豐富的品種系列。它是在基本級產品上進行了改進,並保持了很高的兼容性。外部結構也是多種的,從8引腳到68引腳的各種封裝,如PIC12C6XX。該級產品其性能很高,如內部帶有A/D變換器、E2PROM數據存儲器、比較器輸出、PWM輸出、I2C和SPI等介面。PIC中級系列產品適用於各種高、中和低檔的電子產品的設計中。
c高級系列該系列產品如PIC17CXX,其特點是速度快,所以適用於高速數字運算的應用場合中,加之它具備一個指令周期內(160ns)可以完成8×8(位)二進制乘法運算能力,所以可取代某些DSP產品。再有PIC17CXX具有豐富的I/O控制功能,並可外接擴展EPROM和RAM,使它成為目前8位單片機中性能最高的機種之一。所以很適用於高、中檔的電子設備中使用。
上述的三層次(級)的PIC 8位單片機還具有很高的代碼兼容性,用戶很容易將代碼從某型號轉換到另一個型號中。PIC 8位單片機具有指令少、執行速度快等優點,其主要原因是PIC系列單片機在結構上與其它單片機不同。該系列單片機引入了原用於小型計算機的雙匯流排和兩級指令流水結構。這種結構與一般採用CISC(復雜指令集計算機)的單片機在結構上是有不同的。
雙匯流排結構
具有CISC結構的單片機均在同一存儲空間取指令和數據,片內只有一種匯流排。這種匯流排既要傳送指令又要傳送數據(如圖1-a所示)。因此,它不可能同時對程序存儲器和數據存儲器進行訪問。因與CPU直接相連的匯流排只有一種,要求數據和指令同時通過,顯然「亂套」,這正如一個「瓶頸」,瓶內的數據和指令要一起倒出來,往往就被瓶頸卡住了。所以具有這種結構的單片機,只能先取出指令,再執行指令(在此過程中往往要取數),然後,待這條指令執行完畢,再取出另一條指令,繼續執行下一條。這種結構通常稱為馮•諾依曼結構,又稱普林斯頓結構。
在這里PIC系列單片機採用了一種雙匯流排結構,即所謂哈佛結構。這種結構有兩種匯流排,即程序匯流排和數據匯流排。這兩種匯流排可以採用不同的字長,如PIC系列單片機是八位機,所以其數據匯流排當然是八位。但低檔、中檔和高檔的PIC系列機分別有12位、14位和16位的指令匯流排。這樣,取指令時則經指令匯流排,取數據時則經數據匯流排,互不沖突。
② 兩級指令流水線結構
由於PIC系列單片機採用了指令空間和數據空間分開的哈佛結構,用了兩種位數不同的匯流排。因此,取指令和取數據有可能同時交疊進行,所以在PIC系列微控制器中取指令和執行指令就採用指令流水線結構。當第一條指令被取出後,隨即進入執行階段,這時可能會從某寄存器取數而送至另一寄存器,或從一埠向寄存器傳送數等,但數據不會流經程序匯流排,而只是在數據匯流排中流動,因此,在這段時間內,程序匯流排有空,可以同時取出第二條指令。當第一條指令執行完畢,就可執行第二條指令,同時取出第3條指令,……如此等等。這樣,除了第一條指令的取出,其餘各條指令的執行和下一條指令的取出是同時進行的,使得在每個時鍾周期可以獲得最高效率。
在大多數微控制器中,取指令和指令執行都是順序進行的,但在PIC單片機指令流水線結構中,取指令和執行指令在時間上是相互重疊的,所以PIC系列單片機才可能實現單周期指令。
只有涉及到改變程序計數器PC值的程序分支指令(例如GOTO、CALL)等才需要兩個周期。
此外,PIC的結構特點還體現在寄存器組上,如寄存器I/O口、定時器和程序寄存器等都是採用了RAM結構形式,而且都只需要一個周期就可以完成訪問和操作。而其它單片機常需要兩個或兩個以上的周期才能改變寄存器的內容。上述各項,就是PIC系列單片機能做到指令總數少,且大都為單周期指令的重要原因。
3)AVR系列單片機
AVR單片機是1997年由ATMEL公司研發出的增強型內置Flash的RISC(Reced Instruction Set CPU) 精簡指令集高速8位單片機。AVR的單片機可以廣泛應用於計算機外部設備、工業實時控制、儀器儀表、通訊設備、家用電器等各個領域。
①AVR單片機的優勢及特點
a AVR單片機易於入手、便於升級、費用低廉。 單片機初學者只需一條ISP下載線,把編輯、調試通過的軟體程序直接在線寫入AVR單片機,即可以開發AVR單片機系列中的各種封裝的器件。AVR單片機因此在業界號稱「一線打天下」。 AVR程序寫入是直接在電路板上進行程序修改、燒錄等操作,這樣便於產品升級。AVR單片機可使用ISP在線下載編程方式(即把PC機上編譯好的程序寫到單片機的程序存儲器中),不需購買模擬器、編程器、擦抹器和晶元適配器等,即可進行所有AVR單片機的開發應用,這可節省很多開發費用。程序存儲器擦寫可達10000次以上,不會產生報廢品。
b高速、低耗、保密。首先,AVR單片機是高速嵌入式單片機: AVR單片機具有預取指令功能,即在執行一條指令時,預先把下一條指令取進來,使得指令可以在一個時鍾周期內執行。多累加器型,數據處理速度快。AVR單片機具有32個通用工作寄存器,相當於有32條立交橋,可以快速通行。中斷響應速度快。AVR單片機有多個固定中斷向量入口地址,可快速響應中斷。AVR單片機耗能低。對於典型功耗情況,WDT關閉時為100nA,更適用於電池供電的應用設備。有的器件最低1.8 V即可工作。AVR單片機保密性能好。它具有不可破解的位加密鎖Lock Bit技術,保密位單元深藏於晶元內部,無法用電子顯微鏡看到。
c I/O口功能強,具有A/D轉換等電路。AVR單片機的I/O口是真正的I/O口,能正確反映I/O口輸入/輸出的真實情況。工業級產品,具有大電流(灌電流)10mA~40mA,可直接驅動可控硅SSR或繼電器,節省了外圍驅動器件。AVR單片機內帶模擬比較器,I/O口可用作A/D轉換,可組成廉價的A/D轉換器。ATmega48/8/16等器件具有8路10位A/D。部分AVR單片機可組成零外設元件單片機系統,使該類單片機無外加元器件即可工作,簡單方便,成本又低。AVR單片機可重設啟動復位,以提高單片機工作的可靠性。有看門狗定時器實行安全保護,可防止程序走亂(飛),提高了產品的抗干擾能力。
d 有功能強大的定時器/計數器及通訊介面。定時/計數器T/C有8位和16位,可用作比較器。計數器外部中斷和PWM(也可用作D/A)用於控制輸出,某些型號的AVR單片機有3~4個PWM,是作電機無級調速的理想器件。AVR單片機有串列非同步通訊UART介面,不佔用定時器和SPI同步傳輸功能,因其具有高速特性,故可以工作在一般標准整數頻率下,而波特率可達576K。
②AVR 8-Bit MCU的最大特點
與其它8-Bit MCU相比,AVR 8-Bit MCU最大的特點是:
• 哈佛結構,具備1MIPS / MHz的高速運行處理能力;
• 超功能精簡指令集(RISC),具有32個通用工作寄存器,克服了如8051 MCU採用單一ACC進行處理造成的瓶頸現象;
• 快速的存取寄存器組、單周期指令系統,大大優化了目標代碼的大小、執行效率,部分型號FLASH非常大,特別適用於使用高級語言進行開發;
• 作輸出時與PIC的HI/LOW相同,可輸出40mA(單一輸出),作輸入時可設置為三態高阻抗輸入或帶上拉電阻輸入,具備10mA-20mA灌電流的能力;
• 片內集成多種頻率的RC振盪器、上電自動復位、看門狗、啟動延時等功能,外圍電路更加簡單,系統更加穩定可靠;
• 大部分AVR片上資源豐富:帶E2PROM,PWM,RTC,SPI,UART,TWI,ISP,AD,Analog Comparator,WDT等;
• 大部分AVR除了有ISP功能外,還有IAP功能,方便升級或銷毀應用程序。
(3)16-BIT 單片機
16 位單片機是在1983 年以後發展起來的。這類單片機的特點是:CPU是16 位的,運算速度普遍高於8 位機,有的單片機的定址能力高達1MB,片內含有A/D 和D/A轉換電路,支持高級語言。這類單片機主要用於過程式控制制、智能儀表、家用電器以及作為計算機外部設備的控制器等。典型產品有Intel 公司的MCS-96/98 系列、Motorola 公司的M68HC16系列、NS 公司的783××系列、TI公司的MSP430系列等等。
其中,以MSP430系列最為突出。它採用了精簡指令集( RISC )結構,具有豐富的定址方式( 7 種源操作數定址、 4 種目的操作數定址)、簡潔的 27 條內核指令以及大量的模擬指令;大量的寄存器以及片內數據存儲器都可參加多種運算;還有高效的查表處理指令;有較高的處理速度,在 8MHz 晶體驅動下指令周期為 125 ns 。這些特點保證了可編制出高效率的源程序。
在運算速度方面, MSP430 系列單片機能在 8MHz 晶體的驅動下,實現 125ns 的指令周期。 16 位的數據寬度、 125ns 的指令周期以及多功能的硬體乘法器(能實現乘加)相配合,能實現數字信號處理的某些演算法(如 FFT 等)。
MSP430 系列單片機的中斷源較多,並且可以任意嵌套,使用時靈活方便。當系統處於省電的備用狀態時,用中斷請求將它喚醒只用 6us 。
超低功耗 MSP430 單片機之所以有超低的功耗,是因為其在降低晶元的電源電壓及靈活而可控的運行時鍾方面都有其獨到之處。
首先, MSP430 系列單片機的電源電壓採用的是 1.8~3.6V 電壓。因而可使其在 1MHz 的時鍾條件下運行時, 晶元的電流會在 200~400uA 左右,時鍾關斷模式的最低功耗只有 0.1uA 。
其次,獨特的時鍾系統設計。在 MSP430 系列中有兩個不同的系統時鍾系統:基本時鍾系統和鎖頻環( FLL 和 FLL+ )時鍾系統或 DCO 數字振盪器時鍾系統。有的使用一個晶體振盪器( 32768Hz ) , 有的使用兩個晶體振盪器)。由系統時鍾系統產生 CPU 和各功能所需的時鍾。並且這些時鍾可以在指令的控制下,打開和關閉,從而實現對總體功耗的控制。
由於系統運行時打開的功能模塊不同,即採用不同的工作模式,晶元的功耗有著顯著的不同。在系統中共有一種活動模式( AM )和五種低功耗模式( LPM0~LPM4 )。在等待方式下,耗電為 0.7uA ,在節電方式下,最低可達 0.1uA 。
系統工作穩定 上電復位後,首先由 DCOCLK 啟動 CPU ,以保證程序從正確的位置開始執行,保證晶體振盪器有足夠的起振及穩定時間。然後軟體可設置適當的寄存器的控制位來確定最後的系統時鍾頻率。如果晶體振盪器在用做 CPU 時鍾 MCLK 時發生故障, DCO 會自動啟動,以保證系統正常工作;如果程序跑飛,可用看門狗將其復位。
豐富的片上外圍模塊 MSP430 系列單片機的各成員都集成了較豐富的片內外設。它們分別是看門狗( WDT )、模擬比較器 A 、定時器 A ( Timer_A )、定時器 B ( Timer_B )、串口 0 、 1 ( USART0 、 1 )、硬體乘法器、液晶驅動器、 10 位 /12 位 ADC 、 I 2 C 匯流排直接數據存取( DMA )、埠 O ( P0 )、埠 1~6 ( P1~P6 )、基本定時器( Basic Timer )等的一些外圍模塊的不同組合。其中,看門狗可以使程序失控時迅速復位;模擬比較器進行模擬電壓的比較,配合定時器,可設計出 A/D 轉換器; 16 位定時器( Timer_A 和 Timer_B )具有捕獲 / 比較功能,大量的捕獲 / 比較寄存器,可用於事件計數、時序發生、 PWM 等;有的器件更具有可實現非同步、同步及多址訪問串列通信介面可方便的實現多機通信等應用;具有較多的 I/O 埠,最多達 6*8 條 I/O 口線; P0 、 P1 、 P2 埠能夠接收外部上升沿或下降沿的中斷輸入; 12/14 位硬體 A/D 轉換器有較高的轉換速率,最高可達 200kbps ,能夠滿足大多數數據採集應用;能直接驅動液晶多達 160 段;實現兩路的 12 位 D/A 轉換;硬體 I 2 C 串列匯流排介面實現存儲器串列擴展;以及為了增加數據傳輸速度,而採用直接數據傳輸( DMA )模塊。 MSP430 系列單片機的這些片內外設為系統的單片解決方案提供了極大的方便。
方便高效的開發環境 目前 MSP430 系列有 OPT 型、 FLASH 型和 ROM 型三種類型的器件,這些器件的開發手段不同。對於 OPT 型和 ROM 型的器件是使用模擬器開發成功之後在燒寫或掩膜晶元;對於 FLASH 型則有十分方便的開發調試環境,因為器件片內有 JTAG 調試介面,還有可電擦寫的 FLASH 存儲器,因此採用先下載程序到 FLASH 內,再在器件內通過軟體控製程序的運行,由 JTAG 介面讀取片內信息供設計者調試使用的方法進行開發。這種方式只需要一台 PC 機和一個 JTAG 調試器,而不需要模擬器和編程器。開發語言有匯編語言和 C 語言。
MSP430 單片機目前主要以 FLASH 型為主。
(4)32-BIT 單片機
32 位單片機的字長為32 位,是單片機的頂級產品,具有極高的運算速度。近年來,隨著家用電子系統的新發展,32 位單片機的市場前景看好。
繼16 位單片機出現後不久,幾大公司先後推出了代表當前最高性能和技術水平的32 位單片微機系列。32 位單片機具有極高的集成度,內部採用新穎的RISC(精簡指令系統計算機)結構,CPU 可與其他微控制器兼容,主頻頻率可達33MHz 以上,指令系統進一步優化,運算速度可動態改變,設有高級語言編譯器,具有性能強大的中斷控制系統、定時/事件控制系統、同步/非同步通信控制系統。代表產品有Intel 公司的MCS-80960 系列、Motorola 公司的M68300 系列、Hitachi 公司的Super H(簡稱SH)系列等等。
這類單片機主要應用於汽車、航空航天、高級機器人、軍事裝備等方面。它代表著單片機發展中的高、新技術水平。
ARM在32位MCU中的主流地位是毫無疑問的。ARM公司於1991年成立於英國劍橋,主要出售晶元設計技術的授權。目前,採用ARM技術智能財產(IP)核心的處理器,即我們通常所說的ARM處理器,已遍及工業控制、消費類電子產品、通信系統、網路系統、無線系統等各類產品市場,基於ARM技術的處理器應用約占據了32位RISC微處理器75%以上的市場,ARM技術不止逐步滲入到我們生活的各個方面,我們甚至可以說,ARM於人類的生活環境中,已經是不可或缺的一環。
目前市面上常見的ARM處理器架構,可分為ARM7、ARM9以及ARM11,新推出的Cortex系列尚在進行開發驗證,市面上還未有相關產品推出。ARM也是嵌入式處理器中首先推出多核心架構的廠商。
ARM首個多核心架構為ARM11 MPCore,架構於原先的ARM11處理器核心之上。ARM11核心是發布於2002年10月份,為了進一步提升效能,其管線長度擴展到8階,處理單元則增加為預取、解碼、發送、轉換/MAC1、執行/MAC2、內存存取/MAC3和寫入等八個單元,體繫上屬於ARM V6指令集架構。ARM11採用當時最先進的0.13μm製造製程,運行頻率最高可達500到700MHz。如果採用90nm製程,ARM11核心的工作頻率能夠輕松達到1GHz以上—對於嵌入式處理器來說,這顯然是個相當驚人的程度,不過顯然1GHz在ARM11體系中不算是個均衡的設定,因此幾乎沒有廠商推出達到1GHz的ARM11架構處理器。
ARM11的邏輯核心也經過大量的改進,其中最重要的當屬「靜/動態組合轉換的預測功能」。ARM11的執行單元包含一個64位、4種狀態的地址轉換緩沖,它主要用來儲存最近使用過的轉換地址。當採用動態轉換預測機制而無法在定址緩沖內找到正確的地址時,靜態轉換預測功能就會立刻接替它的位置。在實際測試中,單純採用動態預測的准確率為88%,單純採用靜態預測機制的准確率只有77%,而ARM11的靜/動態預測組合機制可實現92%的高准確率。針對高時脈速度帶來功耗增加的問題,ARM11採用一項名為「IEM(Intelligent Energy Manager)」的智能電源管理技術,該技術可根據任務負荷情況動態調節處理器的電壓,進而有效降低自身的功耗。這一系列改進讓ARM11的功耗效能比得以繼續提高,平均每MHz只需消耗0.6mW(有快取時為0.8mW)的電力,處理器的最高效能可達到660 Dhrystone MIPS,遠超過上一代產品。
Ⅲ 按製造工藝分
① HMOS 工藝 高密度短溝道MOS 工藝,具有高速度、高密度的特點。
② CHMOS(或HCMOS)工藝 互補的金屬氧化物的HMOS 工藝,是CMOS 和HMOS 的結合,具有高密度、高速度、低功耗的特點。Intel 公司產品型號中若帶有字母「C」 ,Motorola 公司產品型號中若帶有字母「HC」或「L」 ,通常為CHMOS 工藝。

Ⅳ 51單片機a2和a4的區別

1、A2是STC89C51單片機,它具有8K位元組的Flash存儲器,128位元組的RAM,一個定時器/計數器,兩個串列口,還有一個6位的A/D轉換器。
2、A4是AT89C51單片機,它有4K位元組的Flash存儲器,128位元組的RAM,一個定時器/計數器,兩個串列口,一個8位的A/D轉換器。

Ⅵ 基於51單片機的溫度控制器

圖片為溫度控制電路圖。溫度到達上限時led燈亮,並停止對RT的加熱,溫度達到下限時led燈滅並開始對RT進行加熱。A1和A2為uA741運算放大器。引腳號在圖上已經標出。再給你一個單片機採集DS18B20溫度的程序,用四位數碼管顯示的。你把DS18B20接在RT附近就可以測試出RT的溫度,調節圖中的滑動變阻器可改變溫度的上下限。這樣就能做到溫度控制了。

//安裝目錄下的EXE文件打開後可在電腦上顯示當前溫度值

#include<reg52.h>

#defineucharunsignedchar

#defineuintunsignedint

sbitDS=P1^0;//defineinterface

uinttemp;//variableoftemperature

ucharflag1;//

//sbitla=P2^6;

//sbitwela=P2^7;

//unsignedcharcodetable2[]={0x3f,0x30,0x5b,0x4f,0x66,0x6d,0x7d,

//0x07,0x7f,0x67/*,0x77,0x7c,0x39,0x5e,0x79,0x71*/};

//unsignedcharcodetable1[]={0xbf,0xb0,0xdb,0xcf,0xe6,0xed,0xfd,

//0x87,0xff,0xe7};

//unsignedcharcodetable2[]={0x40,0x5e,0x24,0x21,0x13,0x09,0x08,

//0x63,0x00,0x03/*,0x77,0x7c,0x39,0x5e,0x79,0x71*/};

//unsignedcharcodetable1[]={0xc0,0xde,0xa4,0xa1,0x93,0x89,0x88,

//0xe7,0x8f,0x87};

unsignedcharcodetable5[]={0x77,0x22,0x6d,0x5d,0x1e,0x5b,0x7b,

0x15,0x7f,0x1f};

unsignedcharcodetable6[]={0xf7,0xa2,0xed,0xdd,0x9e,0xdb,0xfb,

0x95,0xff,0x9f};

voiddelay(uintcount)//delay

{

uinti;

while(count)

{

i=200;

while(i>0)

i--;

count--;

}

}

///////功能:串口初始化,波特率9600,方式1///////

voidInit_Com(void)

{

TMOD=0x20;

PCON=0x00;

SCON=0x50;

TH1=0xFd;

TL1=0xFd;

TR1=1;

}

voiddsreset(void)//復位,初始化函數

{

uinti;

DS=0;

i=103;

while(i>0)i--;

DS=1;

i=4;

while(i>0)i--;

}

bittmpreadbit(void)//readabit讀1位數據函數

{

uinti;

bitdat;

DS=0;i++;//i++fordelay

DS=1;i++;i++;

dat=DS;

i=8;while(i>0)i--;

return(dat);

}

uchartmpread(void)//readabytedate讀1位元組函數

{

uchari,j,dat;

dat=0;

for(i=1;i<=8;i++)

{

j=tmpreadbit();

dat=(j<<7)|(dat>>1);//讀出的數據最低位在最前面,這樣剛好一個位元組在DAT里

}

return(dat);

}

voidtmpwritebyte(uchardat)//writeabytetods18b20向1820寫一個位元組數據函數

{

uinti;

ucharj;

bittestb;

for(j=1;j<=8;j++)

{

testb=dat&0x01;

dat=dat>>1;

if(testb)//write1

{

DS=0;

i++;i++;

DS=1;

i=8;while(i>0)i--;

}

else

{

DS=0;//write0

i=8;while(i>0)i--;

DS=1;

i++;i++;

}

}

}

voidtmpchange(void)//DS18B20beginchange開始獲取數據並轉換

{

dsreset();

delay(1);

tmpwritebyte(0xcc);//addressalldriversonbus寫跳過讀ROM指令

tmpwritebyte(0x44);//寫溫度轉換指令

}

uinttmp()//getthetemperature讀取寄存器中存儲的溫度數據

{

floattt;

uchara,b;

dsreset();

delay(1);

tmpwritebyte(0xcc);

tmpwritebyte(0xbe);

a=tmpread();//讀低8位

b=tmpread();//讀高8位

temp=b;

temp<<=8;//twobytecomposeaintvariable兩個位元組組合為1個字

temp=temp|a;

tt=temp*0.0625;//溫度在寄存器中是12位,解析度是0.0625

temp=tt*10+0.5;//乘10表示小數點後只取1位,加0.5是四折五入

returntemp;

}

voidreadrom()//readtheserial

{

ucharsn1,sn2;

dsreset();

delay(1);

tmpwritebyte(0x33);

sn1=tmpread();

sn2=tmpread();

}

voiddelay10ms()//delay

{

uchara,b;

for(a=10;a>0;a--)

for(b=60;b>0;b--);

}

voiddisplay(uinttemp) //顯示程序

{

ucharA1,A2,A2t,A3,ser;

ser=temp/10;

SBUF=ser;

A1=temp/100;

A2t=temp%100;

A2=A2t/10;

A3=A2t%10;

//la=0;

d4=0;

P0=table5[A1];

delay(1);

d4=1; //顯示百位

//la=1;

//la=0;

/*wela=0;

P0=0x7e;

wela=1;

wela=0; */

//la=0;

d3=0;

P0=table6[A2];

delay(1);

d3=1; //顯示十位

//la=1;

//la=0;

/*wela=0;

P0=0x7d;

wela=1;

wela=0; */

d2=0;

P0=table5[A3];

delay(1);

d2=1; //顯示個位

//la=1;

//la=0;

/*P0=0x7b;

wela=1;

wela=0; */

}

voidmain()

{

uchara;

Init_Com();

do

{

tmpchange();

//delay(200);

for(a=1;a>0;a--)

{display(tmp());

}

}while(1);

}

Ⅶ 單片機型號A2-A7區別求詳解

stc(國產的51系列)stm32(低端arm系列)430(低功耗系列)還有飛思卡爾之類的,好久沒搞忘了.

閱讀全文

與51單片機a2晶元類型相關的資料

熱點內容
php自帶web伺服器 瀏覽:324
武清區編程培訓哪裡好 瀏覽:17
什麼是最好優先演算法 瀏覽:468
T5L單片機 瀏覽:122
安卓內存編譯器運行腳本 瀏覽:500
男的穿搭app哪個好用 瀏覽:700
51單片機定時器的應用 瀏覽:423
當程序員待遇 瀏覽:774
c高級編程視頻教程 瀏覽:840
php發郵件附件 瀏覽:699
極度解壓動畫全集 瀏覽:237
在線觀看免費版無需下載 瀏覽:939
數控編程常用代碼 瀏覽:231
socket編程心得 瀏覽:353
如何在linux雲伺服器上搭建網站 瀏覽:114
廣東加密軟體 瀏覽:371
最解壓的十部電視劇 瀏覽:915
虞美人游戲解壓密碼 瀏覽:16
ios10備份文件夾 瀏覽:589
app報價單哪個好 瀏覽:820