八位單片機由于內部構造簡略,體積小,本錢低價,在一些較簡略的控制器中運用很廣。即使到了本世紀,在單片機運用中,仍占有適當的比例。由于八位單片機品種繁多,本文僅將常用的幾種在性能上作一個簡略的比較,供讀者在運用時作參閱。
1. 51系列
? 運用最廣泛的八位單片機首推Intel的51系列,由于產品硬件結構合理,指令系統標準,加之出產前史“悠長”,有先入為主的優勢。國際有許多著名的芯片公司都購買了51芯片的中心專利技術,并在其基礎上進行性能上的擴大,使得芯片得到進一步的完善,構成了一個龐大的系統,直到現在仍在不斷翻新,把單片機國際炒得沸反盈天。有人估測,51芯片可能最終構成事實上的標準MCU芯片。
51系列長處之一是它從內部的硬件到軟件有一套完好的按位操作系統,稱作位處理器,或布爾處理器。它的處理對象不是字或字節而是位。它不光能對片內某些特別功用寄存器的某位進行處理,如傳送、置位、清零、測驗等,還能進行位的邏輯運算,其功用十分齊備,運用起來稱心如意。雖然其他品種的單片機也具有位處理功用,但能進行位邏輯運算的實屬罕見。51系列在片內RAM區間還特別拓荒了一個兩層功用的地址區間,十六個字節,單元地址20H~2FH,它既可作字節處理,也可作位處理(作位處理時,合128個位,相應位地址為00H~7FH),運用極為靈敏。這一功用無疑給運用者供給了極大的便利,由于一個較復雜的程序在運轉進程中會遇到許多分支,因此需樹立許多標志位,在運轉進程中,需求對有關的標志位進行置位、清零或檢測,以斷定程序的運轉方向。而施行這一處理(包含前面一切的位功用),只需用一條位操作指令即可。
例1:如對21H的第0位(相應位地址為08H)置位,只需用一條位指令,
SETB08H
對周圍的其他位不會產生影響。
有的單片機并不能直接對RAM單元中的位進行操作,如AVR系列單片機中,若想對RAM中的某方位位時,有必要經過狀況寄存器SREG的T位進行中轉。
例2:如對RAM中的R0寄存器的第4方位位,則
BSET6 ;狀況寄存器T置位
BLD R0, 4 ;將T位復制到R0的第4位
明顯,后者比前者要復雜。
51系列的另一個長處是乘法和除法指令,這給編程也帶來了便當。八位除以八位的除法指令,商為八位,精度嫌不行,用得不多。而八位乘八位的乘法指令,其積為十六位,精度還是能滿足要求的,用的較多。作乘法時,只需一條指令就行了,即 MULAB(兩個乘數分別在累加器A和寄存器B中。積的低位字節在累加器A中,高位字節在寄存器B中)。許多的八位單片機都不具有乘法功用,作乘法時還得編上一段子程序調用,十分不便利。
在51系列中,還有一條二進制-十進制調整指令 DA,能將二進制變為BCD碼,這關于十進制的計量十分便利。而在其他的單片機中,則也需調用專用的子程序才行。
Intel公司51系列的典型產品是8051,片內有4K字節的一次性程序存儲器(OTP)。Atmel公司就將其改為電可改寫的閃速存儲器(Flash),容許改寫1000次以上,這給編程和調試帶來極大的便當,其產品AT89C51、AT89C52 ……等成為了當今最盛行的八位單片機。
51系列的I/O腳的設置和運用十分簡略,當該腳作輸入腳運用時,只須將該腳設置為高電平(復位時,各I/O口均置高電平)。當該腳作輸出腳運用時,則為高電平或低電平均可。低電平時,吸入電流可達20mA,具有必定的驅動才能;而為高電平時,輸出電流僅數十μA甚至更?。娏鲗嶋H上是由腳的上拉電流構成的),基本上沒有驅動才能。其原因是高電平時該腳也一起作輸入腳運用,而輸入腳有必要具有高的輸入阻抗,因此上拉的電流有必要很小才行。作輸出腳運用,欲進行高電平驅動時,得運用外電路來實現(見附圖),I/O腳不通,電流經R驅動LED發光;低電平時,I/O腳導通,電流由該腳入地,LED滅(I/O腳導通時對地的電壓降小于1V,LED的域值1.5~1.8V)。
51系列I/O腳運用簡略,但高電平時無輸出才能,可謂有利有弊。故其他系列的單片機(如PIC系列、AVR系列等)對I/O口進行了改善,增加了方向寄存器以斷定輸入或輸出,但運用也變得復雜。
一些精裝的51產品也相應呈現,如Atmel公司的AT89C1051、AT89C2051、AT89C4051等(閃速存儲器分別為1K、2K、4K等,但不能外接數據存儲器),指令系統與AT89C51完全兼容,但引腳均為20腳,不光體積小,并且價格低價,這使得其他的公司競相模仿。
不過,原51系列也有許多值得改善之處,如運轉速度過慢等。當晶振頻率為12MHz時,機器周期達1μs,明顯習慣不了現代高速運轉的需求。華邦公司(Winbond)出產的產品型號為W77系列和W78系列,W78系列與AT89C系列完全兼容。W77系列為增強型,對原有的8051的時序作了改善,每個機器周期從12個時鐘周期改為4個周期,使速度提高了三倍,一起,晶振頻率最高可達40MHz。W77系列還增加了看門狗WatchDog、兩組UART、兩組DPTR數據指針、ISP等多種功用。