『壹』 51單片機簡介
51單片機是對目前所有兼容Intel 8031指令系統的單片機的統稱。該系列單片機的始祖是Intel的8031單片機,
後來隨著Flash rom技術的發展,8031單片機取得了長足的進展,成為目前應用最廣泛的8位單片機之一,其代表型號是ATMEL公司的AT89系列,它廣泛應用於工業測控系統之中。目前很多公司都有51系列的兼容機型推出,在目前乃至今後很長的一段時間內將佔有大量市場。51單片機是基礎入門的一個單片機,還是應用最廣泛的一種。需要注意的是52系列的單片機一般不具備自編程能力。
『貳』 51單片機的介紹
51單片機是對所有兼容Intel 8031指令系統的單片機的統稱。該系列單片機的始祖是Intel的8004單片機,後來隨著Flash rom技術的發展,8004單片機取得了長足的進展,成為應用最廣泛的8位單片機之一,其代表型號是ATMEL公司的AT89系列,它廣泛應用於工業測控系統之中。很多公司都有51系列的兼容機型推出,今後很長的一段時間內將佔有大量市場。51單片機是基礎入門的一個單片機,還是應用最廣泛的一種。需要注意的是51系列的單片機一般不具備自編程能力。
『叄』 51單片機控制器組成與功能簡介
MSC51單片機的控制器由指令寄存器、指令解碼器、復位電路、時鍾發生器、定時控制邏輯、程序計數器、程序地址寄存器、數據指針、堆棧指針等組成。
1、 時鍾發生器。
1) 內部方式:MCS-51 有內部振盪電路,只要在XTAL1、XTAL2引腳上外接定時反饋電路(一般為石英晶振和電容組成的並聯迴路)內部振盪器便自激振盪--稱為內部方式。在XTAL2有3V左右的正弦波輸出。
2) 外部方式:由XTAL1或XTAL2輸入一外部振盪信號(0。5~16MHZ方波)。
2、復位電路
1) 上電復位
2) 人工復位
3) 系統復位(單片機本身與外部擴展的I/O介面電路需要一個同步復位信號,若不同步,則CPU對I/O介面電路的初始化編程無效,使系統不能正常工作,(1)這可通過延時一段時間以後對外部I/O電路進行初始化來解決,(2)或接不同的復位電路通過調節RC常數使CPU和外部電路同步復位)。
3、CPU定時(時序)
1) 振盪周期(1/fosc)振盪器輸出的脈沖周期
2) 時鍾周期 振盪脈沖經2分頻後的內部時鍾信號周期(也稱狀態周期)。(S)
3) 機器周期 6個時鍾周期組成一個機器周期,或1個機器周期=12振盪周期。
4) 指令周期 以機器周期為單位,一條指令執行的時間;有單周期指令、雙周期指令、4周期指令。
『肆』 51單片機的具體介紹
T89C2051是精簡版的51單片機,精簡掉了P0口和P2口,只有20引腳,但其內部集成了一個很實用的模擬比較器,特別適合開發精簡的51應用系統,畢竟很多時候我們開發簡單的產品時用不了全部32個I/O口,用AT89C2051更合適,晶元體積更小,而且AT89C2051的工作電壓最低為2.7V,因此可以用來開發兩節5號電池供電的攜帶型產品。
本文以ATMEL公司生產的51系列家族的AT89S51和AT89C2051兩種單片機來講解,兩種單片機是目前最常用的單片機,其中AT89S51為標准51單片機,當然其功能比早期的51單片機更強大,支持ISP在系統編程技術,內置硬體看門狗。。。
一、AT89S51單片機引腳介紹
AT89S51有PDIP、PLCC、TQFP三種封裝方式,其中最常見的就是採用40Pin封裝的雙列直接PDIP封裝,外形結構下圖。
晶元共有40個引腳,引腳的排列順序為從靠晶元的缺口(見右圖)左邊那列引腳逆時針數起,依次為1、2、3、4。。。40,其中晶元的1腳頂上有個凹點(見右圖)。在單片機的40個引腳中,電源引腳2根,外接晶體振盪器引腳2根,控制引腳4根以及4組8位可編程I/O引腳32根。
1、主電源引腳(2根)
VCC(Pin40):電源輸入,接+5V電源
GND(Pin20):接地線
2、外接晶振引腳(2根)
XTAL1(Pin19):片內振盪電路的輸入端
XTAL2(Pin20):片內振盪電路的輸出端
3、控制引腳(4根)
RST/VPP(Pin9):復位引腳,引腳上出現2個機器周期的高電平將使單片機復位。
ALE/PROG(Pin30):地址鎖存允許信號
PSEN(Pin29):外部存儲器讀選通信號
EA/VPP(Pin31):程序存儲器的內外部選通,接低電平從外部程序存儲器讀指令,如果接高電平則從內部程序存儲器讀指令。
晶元實物圖片 晶元引腳功能
4、可編程輸入/輸出引腳(32根)
AT89S51單片機有4組8位的可編程I/O口,分別位P0、P1、P2、P3口,每個口有8位(8根引腳),共32根。每一根引腳都可以編程,比如用來控制電機、交通燈、霓虹燈等,開發產品時就是利用這些可編程引腳來實現我們想要的功能,盡情發揮你的想像力吧,實現你想要的:)
強大無比。。。
PO口(Pin39~Pin32):8位雙向I/O口線,名稱為P0.0~P0.7
P1口(Pin1~Pin8):8位準雙向I/O口線,名稱為P1.0~P1.7
P2口(Pin21~Pin28):8位準雙向I/O口線,名稱為P2.0~P2.7
P3口(Pin10~Pin17):8位準雙向I/O口線,名稱為P3.0~P3.7
上面就是AT89S51單片機引腳的簡單介紹,其它51系列家族的單片機8031、8051、89C51等引腳和89S51兼容,只是個別引腳功能定義不同。
二、AT89C2051單片機引腳介紹
AT89C2051為20引腳小型封裝,2K內部程序存儲器,15個可編程I/O口線,沒有P0口和P2口的16根I/O線,內部集成了一個模擬比較器。AT89C2051單片機的引腳排列如下圖所示。
晶元實物圖片 晶元引腳功能
晶元共有20個引腳,引腳的排列順序為從靠晶元的缺口(見上圖)左邊那列引腳逆時針數起,依次為1、2、3。。。20,在單片機的20個引腳中,電源引腳2根,外接晶體振盪器引腳2根,復位引腳1根以及P1、P3口可編程I/O引腳15根。
1、主電源引腳(2根)
VCC(Pin20):電源輸入,接+5V電源
GND(Pin10):接地線
2、外接晶振引腳(2根)
XTAL1(Pin5):片內振盪電路的輸入端
XTAL2(Pin4):片內振盪電路的輸出端
3、控制引腳(1根)
RST/VPP(Pin1):復位引腳,引腳上出現2個機器周期的高電平將使單片機復位。
4、可編程輸入/輸出引腳(15根)
P1口: 8位準雙向I/O口線,P1.0~P1.7 ,共8根
P3口: 8位準雙向I/O口線,P3.0~P3.5、P3.7,共7根
聰明的你一定會發現:標准51單片機有32根可編程I/O口線,89C2051精簡掉P0、P2口16根I/O線後,應該還有16根I/O口線,現在只有15根,另一根跑那裡去了呢?!前面講到AT89C2051內部集成了一個模擬比較器,正是因為集成了模擬比較器把另一根引線佔用了,比較器的輸出端佔用了一個I/O口,它就是P3.6口,引腳P3.6沒有接出來的,所以少一根I/O口線。在編程時,P3.6就只能用來讀比較器的狀態了,不能象其它I/O口一樣用來驅動外部指示燈等設備了,不過模擬比較器很實用的,在開發中就可以省去外加比較器的麻煩,圖為比較器的原理。
三、主要性能參數介紹
AT89S51
·與MCS-51產品指令系統完全兼容
·4k位元組在系統編程(ISP)Flash閃速存儲器
·1000次擦寫周期
·4.0-5.5V的工作電壓范圍
·全靜態工作模式:0Hz-33MHz
·三級程序加密鎖
·128×8位元組內部RAM
·32個可編程I/O口線
·2個16位定時/計數器
·6個中斷源
·全雙工串列UART通道
·低功耗空閑和掉電模式
·中斷可從空閑模喚醒系統
·看門狗(WDT)及雙數據指針
·掉電標識和快速編程特性
·靈活的在系統編程(ISP位元組或頁寫模式)
AT89C2051
·與MCS-51產品指令系統完全兼容
·2k位元組可重擦寫閃速存儲器
·1000次擦寫周期
·2.7V-6V的工作電壓范圍
·全靜態操作:0Hz-24MHz
·兩級加密程序存儲器
·128×8位元組內部RAM
·15個可編程I/O口線
·2個l6位定時/計數器
·6個中斷源
·可編程串列UART通道
·可直接驅動LED的輸出埠
·內置一個模擬比較器
·低功耗空閑和掉電模式
『伍』 51單片機系列的區別與特點介紹
1、8031的特點
8031片內不帶程序存儲器ROM,使用時用戶需外接程序存儲器和一片邏輯電路373,外接的程序存儲器多為EPROM的2764系列。用戶若想對寫入到EPROM中的程序進行修改,必須先用一種特殊的紫外線燈將其照射擦除,之後再可寫入。寫入到外接程序存儲器的程序代碼沒有什麼保密性可言。
2、8051的特點
8051片內有4k ROM,無須外接外存儲器和373,更能體現「單片」的簡練。但是你編的程序你無法燒寫到其ROM中,只有將程序交晶元廠代你燒寫,並是一次性的,今後你和晶元廠都不能改寫其內容。
3、8751的特點
8751與8051基本一樣,但8751片內有4k的EPROM,用戶可以將自己編寫的程序寫入單片機的EPROM中進行現場實驗與應用,EPROM的改寫同樣需要用紫外線燈照射一定時間擦除後再燒寫。
由於上述類型的單片機應用的早,影響很大,已成為事實上的工業標准。後來很多晶元廠商以各種方式與Intel公司合作,也推出了同類型的單片機,如同一種單片機的多個版本一樣,雖都在不斷的改變製造工藝,但內核卻一樣,也就是說這類單片機指令系統完全兼容,絕大多數管腳也兼容;在使用上基本可以直接互換。人們統稱這些與8051內核相同的單片機為「51系列單片機」,學了其中一種,便會所有的51系列。
4、AT89C51、AT89S51的特點
在眾多的51系列單片機中,要算 ATMEL 公司的AT89C51、AT89S51更實用,因他不但和8051指令、管腳完全兼容,而且其片內的4K程序存儲器是FLASH工藝的,這種工藝的存儲器用戶可以用電的方式瞬間擦除、改寫,一般專為 ATMEL AT89xx 做的編程器均帶有這些功能。顯而易見,這種單片機對開發設備的要求很低,開發時間也大大縮短。寫入單片機內的程序還可以進行加密,這又很好地保護了你的勞動成果。再著,AT89C51、AT89S51目前的售價比8031還低,市場供應也很充足。
AT89S51、52是2003年ATMEL推出的新型品種,除了完全兼容8051外,還多了ISP編程和看門狗功能。我們也專門為這種新片設計了一款 編程、學習、實驗板。
5、AT89C2051、AT89C1051等的特點
ATMEL公司的51系列還有AT89C2051、AT89C1051等品種,這些晶元是在AT89C51的基礎上將一些功能精簡掉後形成的精簡版。AT89C2051取掉了P0口和P2口,內部的程序FLASH存儲器也小到2K,封裝形式也由51的P40腳改為20腳,相應的價格也低一些,特別適合在一些智能玩具,手持儀器等程序不大的電路環境下應用;AT89C1051在2051的基礎上,再次精簡掉了串口功能等,程序存儲器再次減小到1k,當然價格也更低。
對2051和1051來說,雖然減掉了一些資源,但他們片內都集成了一個精密比較器,別小看這小小的比較器,他為我們測量一些模擬信號提供了極大的方便,在外加幾個電阻和電容的情況下,就可以測量電壓、溫度等我們日常需要的量。這對很多日用電器的設計是很寶貴的資源。
ATMEL的51、2051、1051均有多種封裝,如AT89C(S)51有PDIP、PLCC和PQFP/TQFP等封裝;2051/1051有PDIP和SOIC封裝等。下圖是部分封裝實物。
由於51系列單片機的內核都一樣,所以在51單片機教材方面目前仍然沿用Intel MCS 8051單片機的書籍。開發軟體和工具也是一樣,我們統稱為8051開發系統、環境、等等,如我們網站介紹的匯編程序ASM51、Keil C51、MedWin 等均是針對8051內核單片機的開發軟體。
單對AT89C51、AT89S51來說,在實際電路中可以直接互換8051//8751,替換8031隻是第31腳有區別,8031因內部沒有ROM,31腳需接地(GND),單片機在啟動後就到外面程序存儲器讀取指令;而8051/8751/89c51因內部有程序存儲器,31腳接高電平(VCC),單片機啟動後直接在內部讀取指令。也就是51晶元的31腳控制著單片機程序從內部讀取還是從外部讀取,31腳接電源,程序從內部讀取,31腳接地,程序從外部讀取。其他無須改動。另外,AT89C51、AT89s51替換8031後因不用外存儲器,不必安裝原電路的外存儲器和373晶元。
6、89S51與89C51的區別
MCS-51單片機是美國INTE公司於1980年推出的產品,典型產品有 8031(內部沒有程序存儲器,實際使用方面已經被市場淘汰)、8051(晶元採用HMOS,功耗是630mW,是89C51的5倍,實際使用方面已經被市場淘汰)和8751等通用產品,一直到現在, MCS-51內核系列兼容的單片機仍是應用的主流產品(比如目前流行的89S51、89C51等),各高校及專業學校的培訓教材仍與MCS-51單片機作為代表進行理論基礎學習。有些文獻甚至也將8051泛指MCS-51系列單片機,8051是早期的最典型的代表作,MCS-51內核實際上已經成為一個8位單片機的標准。
其他的公司的51單片機產品都是和MCS-51內核兼容的產品而以。同樣的一段程序,在各個單片機廠家的硬體上運行的結果都是一樣的,如ATMEL的89C51(已經停產)、89S51, PHILIPS(菲利浦),和WINBOND(華邦)等,我們常說的已經停產的89C51指的是ATMEL公司的 AT89C51單片機,同時是在原基礎上增強了許多特性,如時鍾,更優秀的是由Flash(程序存儲器的內容至少可以改寫1000次)存儲器取帶了原來的ROM(一次性寫入),AT89C51的性能相對於8051已經算是非常優越的了。
不過在市場化方面,89C51受到了PIC單片機陣營的挑戰,89C51最致命的缺陷在於不支持ISP(在線更新程序)功能,必須加上ISP功能等新功能才能更好延續MCS-51的傳奇。89S51就是在這樣的背景下取代89C51的,現在,89S51目前已經成為了實際應用市場上新的寵兒,作為市場佔有率第一的Atmel目前公司已經停產AT89C51,將用AT89S51代替。89S51在工藝上進行了改進,89S51採用0.35新工藝,成本降低,而且將功能提升,增加了競爭力。89SXX可以像下兼容89CXX等51系列晶元。同時,Atmel不再接受89CXX的定單,大家在市場上見到的89C51實際都是Atmel前期生產的巨量庫存而以。如果市場需要,Atmel當然也可以再恢復生產AT89C51。
7、89S51相對於89C51增加的新功能包括:
1)性能有了較大提升,價格基本不變,甚至比89C51更低!
2)ISP在線編程功能,這個功能的優勢在於改寫單片機存儲器內的程序不需要把晶元從工作環境中剝離。是一個強大易用的功能。
3)最高工作頻率為33MHz,大家都知道89C51的極限工作頻率是24M,就是說S51具有更高工作頻率,從而具有了更快的計算速度。
4)具有雙工UART串列通道。
5)內部集成看門狗計時器,不再需要像89C51那樣外接看門狗計時器單元電路。
6)雙數據指示器。
7)電源關閉標識。
8)全新的加密演算法,這使得對於89S51的**變為不可能,程序的保密性大大加強,這樣就可以有效的保護知識產權不被侵犯。
9) 兼容性方面:向下完全兼容51全部字系列產品。比如8051、89C51等等早期MCS-51兼容產品。
『陸』 誰能介紹MCS-51單片機
MCS-51把微型計算機的主要部件都集成在一塊心片上,使得數據傳送距離大大縮短,可靠性更高,運行速度更塊。由於屬於晶元化的微型計算機,各功能部件在晶元中的布局和結構達最優化,抗干擾能力加強,工作亦相對穩定。因此,在工業測控系統中,使用單片機是最理想的選擇。單片機屬於典型的嵌入式系統,所以它是低端控制系統最佳器件。
MCS-51的開發環境要求較低,軟體資源十分豐富,介紹其功能特性書籍和開發軟體隨處可取,只需配備一台PC(個人電腦——對電腦的配置基本上無要求),一台模擬編程器即可實現產品開發,早期的開發軟體多使用DOS版本,隨著Windows視窗軟體的普及,現在幾乎都使用Windows版本,並且軟體種類繁多,琳琅滿目,在眾多的單片機品種中,C51的環境資源是最豐富的,這給C51用戶帶來極大的便利。
『柒』 51單片機的工作原理
單片機由運算器、控制器、存儲器、輸入輸出設備構成。
單片機自動完成賦予它的任務的過程,也就是單片機執行程序的過程,即一條條執行的指令的過程,所謂指令就是把要求單片機執行的各種操作用的命令的形式寫下來,這是在設計人員賦予它的指令系統所決定的,一條指令對應著一種基本操作;單片機所能執行的全部指令,就是該單片機的指令系統,不同種類的單片機,其指令系統亦不同。為使單片機能自動完成某一特定任務,必須把要解決的問題編成一系列指令(這些指令必須是選定單片機能識別和執行的指令),這一系列指令的集合就成為程序,程序需要預先存放在具有存儲功能的部件——存儲器中。存儲器由許多存儲單元(最小的存儲單位)組成,就像大樓房有許多房間組成一樣,指令就存放在這些單元里,單元里的指令取出並執行就像大樓房的每個房間的被分配到了唯一一個房間號一樣,每一個存儲單元也必須被分配到唯一的地址號,該地址號稱為存儲單元的地址,這樣只要知道了存儲單元的地址,就可以找到這個存儲單元,其中存儲的指令就可以被取出,然後再被執行。程序通常是順序執行的,所以程序中的指令也是一條條順序存放的,單片機在執行程序時要能把這些指令一條條取出並加以執行,必須有一個部件能追蹤指令所在的地址,這一部件就是程序計數器PC(包含在CPU中),在開始執行程序時,給PC賦以程序中第一條指令所在的地址,然後取得每一條要執行的命令,PC在中的內容就會自動增加,增加量由本條指令長度決定,可能是1、2或3,以指向下一條指令的起始地址,保證指令順序執行。