新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > AVR,C51和PIC八位單片機(jī)性能比較

AVR,C51和PIC八位單片機(jī)性能比較

作者: 時(shí)間:2013-02-23 來(lái)源:網(wǎng)絡(luò) 收藏

ISP功能能實(shí)現(xiàn)在系統(tǒng)可編程,可以省去通用的編程器,單片機(jī)在用戶板上即可下載和燒錄用戶程序,而無(wú)需將單片機(jī)從生產(chǎn)好的產(chǎn)品上取下。未定型的程序還可以邊生產(chǎn)邊完善,加快了產(chǎn)品的開(kāi)發(fā)速度,減少了新產(chǎn)品因軟件缺陷帶來(lái)的風(fēng)險(xiǎn)。由于可以將程序下載并觀看運(yùn)行結(jié)果,故也可以不用仿真器。

單片機(jī)的提速運(yùn)行、雙數(shù)據(jù)指針及ISP功能并非是W77系列所特有的,一些新的型號(hào)的51系列產(chǎn)品大都有該功能,如Philips的51LPC系列、AT89系列中的某些型號(hào)、STC89C系列等等。有的單片機(jī)還附有A/D、D/A轉(zhuǎn)換、片內(nèi)EEPROM數(shù)據(jù)存儲(chǔ)器、PWM輸出、I2C總線、上電復(fù)位檢測(cè)、欠壓復(fù)位檢測(cè)等等,這些新系列的單片機(jī),它們都兼容8051的指令系統(tǒng)。增強(qiáng)功能的實(shí)現(xiàn),大都是由片內(nèi)新增的特殊功能寄存器來(lái)進(jìn)行設(shè)置,這些寄存器被安排在片內(nèi)特殊功能寄存器區(qū)間(80~FFH)的預(yù)留地址上。

比較有代表性的產(chǎn)品還有STC89RC、C8051F331/330等等??梢赃@么說(shuō),新的51產(chǎn)品幾乎可以涵蓋所有新的功能。由于新型號(hào)的芯片種類(lèi)太多,此處不可能一一列舉,讀者可根據(jù)使用的需求查閱相關(guān)的資料.

2.系列

單片機(jī)系列是美國(guó)微芯公司(Microship)的產(chǎn)品,是當(dāng)前市場(chǎng)份額增長(zhǎng)最快的單片機(jī)之一。CPU采用RISC結(jié)構(gòu),分別有33、35、58條指令(視單片機(jī)的級(jí)別而定),屬精簡(jiǎn)指令集。而51系列有111條指令,單片機(jī)有118 條指令,都比前者復(fù)雜。采用Harvard雙總線結(jié)構(gòu),運(yùn)行速度快(指令周期約160~200ns),它能使程序存儲(chǔ)器的訪問(wèn)和數(shù)據(jù)存儲(chǔ)器的訪問(wèn)并行處理,這種指令流水線結(jié)構(gòu),在一個(gè)周期內(nèi)完成兩部分工作,一是執(zhí)行指令,二是從程序存儲(chǔ)器取出下一條指令,這樣總的看來(lái)每條指令只需一個(gè)周期(個(gè)別除外),這也是高效率運(yùn)行的原因之一。此外,它還具有低工作電壓、低功耗、驅(qū)動(dòng)能力強(qiáng)等特點(diǎn)。系列單片機(jī)共分三個(gè)級(jí)別,即基本級(jí)、中級(jí)、高級(jí)。其中又以中級(jí)的PIC16F873(A)、PIC16F877 (A) 用的最多,本文以這兩種單片機(jī)為例進(jìn)行說(shuō)明。這兩種芯片除了引出腳不同外(PIC16F873(A)為28腳的PDIP或SOIC封裝;PIC16F877(A)為40腳的PDIP或44腳的PLCC/QFP封裝),其他的差別并不很蟆?

PIC系列單片機(jī)的I/O 口是雙向的,其輸出電路為CMOS互補(bǔ)推挽輸出電路。I/O腳增加了用于設(shè)置輸入或輸出狀態(tài)的方向寄存器(TRISn , 其中n對(duì)應(yīng)各口,如A、B、C、D、E等),從而解決了51系列I/O腳為高電平時(shí)同為輸入和輸出的狀態(tài)。當(dāng)置位1時(shí)為輸入狀態(tài),且不管該腳呈高電平或低電平,對(duì)外均呈高阻狀態(tài);置位0時(shí)為輸出狀態(tài),不管該腳為何種電平,均呈低阻狀態(tài),有相當(dāng)?shù)尿?qū)動(dòng)能力,低電平吸入電流達(dá)25mA,高電平輸出電流可達(dá) 20mA。相對(duì)于51系列而言,這是一個(gè)很大的優(yōu)點(diǎn),它可以直接驅(qū)動(dòng)數(shù)碼管顯示且外電路簡(jiǎn)單。它的A/D為10位,能滿足精度要求。具有在線調(diào)試及編程(ISP)功能。

該系列單片機(jī)的專(zhuān)用寄存器(SFR)并不像51系列那樣都集中在一個(gè)固定的地址區(qū)間內(nèi)(80~FFH),而是分散在四個(gè)地址區(qū)間內(nèi),即存儲(chǔ)體0(Bank0: 00~7FH)、存儲(chǔ)體1(Bank1 :80~FFH)、存儲(chǔ)體2(Bank2 :100~17FH)、存儲(chǔ)體3(Bank3 :180~1FFH)。只有5個(gè)專(zhuān)用寄存器PCL、STATUS、FSR、PCLATH、 INTCON在4個(gè)存儲(chǔ)體內(nèi)同時(shí)出現(xiàn)。在編程過(guò)程中,少不了要與專(zhuān)用寄存器打交道,得反復(fù)地選擇對(duì)應(yīng)的存儲(chǔ)體,也即對(duì)狀態(tài)寄存器STATUS的第6位(RP1)和第5位(RP0)置位或清零。如:

例4:

CLRFSTATUS ;清零RP1, RP0。選擇存儲(chǔ)體0

……

BSF STATUS,RP0;置位RP0。選擇存儲(chǔ)體1

……

BCF STATUS,RP0;清零RP0。選擇存儲(chǔ)體0

……

這多少給編程帶來(lái)了一些麻煩。對(duì)于上述的單片機(jī),它的位指令操作通常限制在存儲(chǔ)體0區(qū)間(00~7FH)。

數(shù)據(jù)的傳送和邏輯運(yùn)算基本上都得通過(guò)工作寄存器W(相當(dāng)于51系列的累加器A)來(lái)進(jìn)行,而51系列的還可以通過(guò)寄存器相互之間直接傳送(如:MOV 30H,20H;將寄存器20H的內(nèi)容直接傳送至寄存器30H中),因而PIC單片機(jī)的瓶頸現(xiàn)象比51系列還要嚴(yán)重,這在編程中很有感受。

3.系列

單片機(jī)是Atmel公司推出的較為新穎的單片機(jī),其顯著的特點(diǎn)為高性能、高速度、低功耗。它取消機(jī)器周期,以時(shí)鐘周期為指令周期,實(shí)行流水作業(yè)。AVR單片機(jī)指令以字為單位,且大部分指令都為單周期指令。而單周期既可執(zhí)行本指令功能,同時(shí)完成下一條指令的讀取。通常時(shí)鐘頻率用4~8MHz,故最短指令執(zhí)行時(shí)間為 250~125ns。該系列的型號(hào)較多,但可用下面三種為代表:AT90S2313(簡(jiǎn)裝型)、AT90S8515、AT90S8535(帶A/D轉(zhuǎn)換)。

通用寄存器一共32個(gè)(R0~R31),前16個(gè)寄存器(R0~R15)都不能直接與立即數(shù)打交道,因而通用性有所下降。而在51系列中,它所有的通用寄存器(地址00~7FH)均可以直接與立即數(shù)打交道,顯然要優(yōu)于前者。

AVR系列沒(méi)有類(lèi)似累加器A的結(jié)構(gòu),它主要是通過(guò)R16~R31寄存器來(lái)實(shí)現(xiàn)A的功能。在AVR中,沒(méi)有像51系列的數(shù)據(jù)指針DPTR,而是由X(由R26、R27組成)、Y(由R28、R29組成)、Z(由R30、R31組成)三個(gè)16位的寄存器來(lái)完成數(shù)據(jù)指針的功能(相當(dāng)于有三組DPTR),而且還能作后增量或先減量等的運(yùn)行,如:

例5:

LDRd, X ;將X所指的地址的內(nèi)容裝入寄存器Rd中。

LDRd,Y+;將Y所指的地址的內(nèi)容裝入寄存器Rd

中,然后Y的地址增1。

LDRd,-X ;將X的地址減1所指的地址的內(nèi)容裝入

寄存器Rd中。

在51系列中,所有的邏輯運(yùn)算都必須在A中進(jìn)行;而AVR卻可以在任兩個(gè)寄存器之間進(jìn)行,省去了在A中的來(lái)回折騰,這些都比51系列強(qiáng)。

AVR的專(zhuān)用寄存器集中在00~3F地址區(qū)間,無(wú)需像PIC那樣得先進(jìn)行選存儲(chǔ)體的過(guò)程,使用起來(lái)比PIC方便。AVR的片內(nèi)RAM的地址區(qū)間為0060~$00DF(AT90S2313) 和 0060~025F(AT90S8515、AT90S8535),它們占用的是數(shù)據(jù)空間的地址,這些片內(nèi)RAM僅僅是用來(lái)存儲(chǔ)數(shù)據(jù)的,通常不具備通用寄存器的功能。當(dāng)程序復(fù)雜時(shí),通用寄存器R0~R31就顯得不夠用;而51系列的通用寄存器多達(dá)128個(gè)(為AVR的4倍),編程時(shí)就不會(huì)有這種感覺(jué)。

AVR的I/O腳類(lèi)似PIC,它也有用來(lái)控制輸入或輸出的方向寄存器,在輸出狀態(tài)下,高電平輸出的電流在10mA左右,低電平吸入電流20mA。雖不如PIC,但比51系列強(qiáng)。

以上的三種AVR型號(hào)其管腳與對(duì)應(yīng)的51系列兼容,如AT90S2313與51系列的AT89C2051的管腳兼容(PDIP-20腳),AT90S8515、AT90S8535與51系列的AT89兼容(PDIP-40腳)等等。

晶振相關(guān)文章:晶振原理

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: AVR C51 PIC 八位單片機(jī)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉