基礎(chǔ)篇:關(guān)于MCS 51 單片機(jī)硬件結(jié)構(gòu)介紹
自從 1976 年單片機(jī)誕生以來(lái),單片機(jī)已有 70 多個(gè)系列,近 500 個(gè)機(jī)種 。國(guó) 際知名公司及其 8 位單片機(jī)產(chǎn)品如表 2.1 所示。
上述產(chǎn)品既有很多共性,又各具一定的特色,在市場(chǎng)上都占有一席之地 。根據(jù)近年來(lái)的有關(guān)統(tǒng)計(jì),Intel 公司的單片機(jī)市場(chǎng)占有率為 67% ,其 中 MCS 51 系列產(chǎn) 品又 占 54% ,仍為主流系列。
MCS 51 系列單片機(jī)的分類(lèi)
MCS 51 系列單片機(jī)已有 10 多種產(chǎn)品,可分為兩大系列:MCS 51 子系列和 MCS 52 子系列,如表 2.2 所 示 。各子系列按片內(nèi) 有 無(wú) ROM 和 EPROM 標(biāo) 以 不 同 的 型 號(hào) 。如 MCS 51 系列有 8031 、8051 和 8751 。另外,芯片 的制造工藝也有 HMOS 與 CHMOS 之 分。采用低功耗的 CHMOS 工藝的 MCS 51 系列芯片命名為 80C31 、80C51 和 87C51 等。
8031/8051/8751 三種型號(hào),稱(chēng)為 8051 子系列 。這三種芯片的結(jié)構(gòu)和功能相 同 ,它們之間的區(qū)別在于片內(nèi)程序存儲(chǔ)器配置狀態(tài):8051 片內(nèi)含有 4KB 的掩膜 ROM,其中的程序是生產(chǎn)廠家制作芯片時(shí),代為用戶(hù)燒制的 ,出廠的 8051 都是具有特殊用途的單片機(jī)。8051應(yīng)用在程序固定且批量大的單片機(jī)產(chǎn)品 中 。8751 片 內(nèi)含有 4KB 的 EPROM,用戶(hù)可 以把 編寫(xiě)好的程序用開(kāi)發(fā)機(jī)或編程器寫(xiě)入其中,需要修改時(shí),可以先用紫外線(xiàn)擦除器擦除,然 后再寫(xiě)入新的程序。8031 片內(nèi)沒(méi)有 ROM,使用時(shí)需在片外接 EPROM 。
8032AH/8052AH/8752AH 是 8031/8051/8751 的增強(qiáng)型,稱(chēng)為 8052 子系列 。其 中片 內(nèi) ROM 和 RAM 的容量比 8051 子系列各增加一倍,另外,增加了一個(gè)定時(shí)器/計(jì)數(shù)器和一個(gè)中斷源。
80C31/80C51/87C51 是 8051 子系列的 CHMOS 工 藝 芯 片 ,80C32/80C52/87C52 是 8052 子系列的 CHMOS 工藝芯片,兩者芯片內(nèi)的配置和功能兼容。
MCS 51 系列單片機(jī)采用兩種半導(dǎo)體工藝生產(chǎn),一種是 HMOS 工藝 ,即高密度短溝道 MOS 工藝;另外一種是 CHMOS 工藝 ,即互補(bǔ)金屬氧化物的 HMOS 工藝。芯片型號(hào)中帶有“C”的,均為 CHMOS 工藝芯片,其特點(diǎn)是功耗低。另外,87C51 還帶有兩級(jí)程序存儲(chǔ) 器保密系統(tǒng),可防止非法復(fù)制程序。
與 MCS 51 系列兼容的單片機(jī)
從 Intel 公司推出 MCS 51 系列高檔 8 位單片機(jī)至今已近 30 年,51 系列單片機(jī)經(jīng)久不衰,并得到了極其廣泛的應(yīng)用。近年來(lái),世界上很多半導(dǎo)體公司都生產(chǎn)以 8051 為內(nèi)核的 單片機(jī),如 Atmel 公 司 的 AT89/AT87 系列 、Philips 公 司 的 P89/P87 系列 、SST 公 司 的 STC89/87 系列單片機(jī)。世界上各大公司生產(chǎn)的 51 系列單片機(jī)均有多種型號(hào)的產(chǎn)品,各大公司通常以 8XC51 來(lái)命名 51 系列單片機(jī),在眾多的 51 單片機(jī)系列中,AT89 系列單片機(jī)在我國(guó)也得到極其廣泛的應(yīng)用,越來(lái)越 受到人們的矚 目。AT89 系列單片機(jī)是美 國(guó) Atmel 公司 的 8 位 Flash 單片機(jī)產(chǎn) 品 。它的最大特點(diǎn)是在片內(nèi)含有 Flash 存儲(chǔ)器,在系統(tǒng)的開(kāi)發(fā)過(guò)程中修改程序十分容易,使開(kāi)發(fā)調(diào)試更為方便。AT89 系列單片機(jī)以 8031 為內(nèi)核,是與 8051 系列單片機(jī)兼容的系列,其型號(hào)可分為標(biāo)準(zhǔn)型、低檔型和高檔型 3 類(lèi)。
1.標(biāo)準(zhǔn)型單片機(jī)
標(biāo)準(zhǔn)型 89 系列單片機(jī)是與 MCS 51 系列單片機(jī)兼容的 。在內(nèi)部含有 4KB 或 8KB 可重復(fù)編程的 Flash 存儲(chǔ)器,可進(jìn)行 1000 次擦寫(xiě)操作。全靜態(tài)工作為 0~33 MHz,有 3 級(jí) 程序存儲(chǔ)器加密鎖定 ,內(nèi)部含有 128~256 字節(jié) 的 RAM 、32 腳可編程 I/O 口 、2~3 個(gè) 16 位定時(shí)器/計(jì)數(shù)器、6~8 級(jí)中斷,此外有通用串行接口、低電壓空閑模式及掉電模式。
AT89 系 標(biāo)準(zhǔn)型單片機(jī)有 4 種 , 分 別為 AT89C51 、AT89LV51 、AT89C52 和 AT89LV52 ,其中 AT89C51 、AT89C52 直接與 8051 系列兼容,相當(dāng)于將 8051 、8052 中的 4KB、8KBROM 換成相應(yīng)數(shù)量的 Flash 存儲(chǔ)器;AT89LV51 是 AT89C51 的低電壓型號(hào), 可以在 2.7~6V 的電壓范圍內(nèi)工作。
2.低檔型單片機(jī)
低檔型單片機(jī)有 AT89C1051 和 AT89C2051 兩種型號(hào)。除并行 I/O 口數(shù)量較少外,其他結(jié)構(gòu)和 AT89C51 差不多,芯片引腳只有 20 條。
3.高檔型單片機(jī)
高檔型單片機(jī)有 AT89S51 、 AT89S52 、 AT89S53 和 AT89S8252 等 型 號(hào) , 其 中 AT89S51 有 4KB 可下載 Flash 存儲(chǔ)器,AT89S52 、AT89S8252 有 8KB 可下載 Flash 存儲(chǔ) 器,AT89S53 有 12KB 可下載 Flash 存儲(chǔ)器,下載功能由微機(jī)通過(guò)單片機(jī)的串行外圍接口 SPI 實(shí)現(xiàn)。AT89S8252 還含有 2KB 的 EEPROM,提高了存儲(chǔ)容量 。此外,高檔型單片機(jī)還增加了一些功能:9 個(gè)中斷源 、SPI 接 口、Watchdog 定 時(shí)器 、雙數(shù)據(jù)指針和從電源下 降 的中斷恢復(fù)等,AT89 系列單片機(jī)各型號(hào)的性能比較見(jiàn)表 2.3 。
盡管很多公司生產(chǎn)的 51 系列單片機(jī)差別各異,并有許多派生機(jī)種,但基本硬件組成和 指令系統(tǒng)仍與 MCS 51 系列單片機(jī)兼容。