閑說各家單片機的優(yōu)缺點
可以總結(jié)下:無論什么廠商的單片機,在宣傳的時候提到的優(yōu)點基本上有以下幾條:
本文引用地址:http://m.butianyuan.cn/article/201611/319861.htm1.高性能。比如avr的單片機就說它是單機器周期的指令集,性能高,喜歡與8051的12T相比,說快了12倍
2.抗干擾能力強。這個尤其是pic的宣傳者,說它是具有最好抗干擾能力的單片機
3.破*解困難,比如avr喜歡在這方面說事,說它什么什么熔絲技術(shù),讓人家無法破*解
4.低功耗。這點當(dāng)然msp430是一流的,但我看到幾乎所有的單片機宣傳都說自己是低功耗的
剩余的就全是不靠譜的瞎扯了,比如在“為什么選擇avr“中居然列出了超過20條理由,其中幾乎所有的都是這些:"
(1)為什么選用AVR單片機? Flash程序存儲器可擦寫1000次以上,不再有報廢品產(chǎn)生。PIC 有的是OTP,只能燒錄一次。AVR程序存儲器數(shù)據(jù)為16位組織,也可按8位理解。PIC是12/14位程序 存儲器,作寄存器轉(zhuǎn)移和算術(shù)、邏輯運算帶來不便。
(2)為什么選用AVR單片機? 高速度(50ns)、低功耗!硬件應(yīng)用Harward結(jié)構(gòu),具有預(yù)取指令功能, 使得指令可以在一個時鐘周期內(nèi)執(zhí)行。PIC要4個時鐘周期執(zhí)行一條指令。MSC-51要12個時鐘周期 執(zhí)行一條指令。
(3)為什么選用AVR單片機? 超功能精簡指令!具有32個通用工作寄存器(相當(dāng)于8051中的32個累 加器,克服了單一累加器數(shù)據(jù)處理造成的瓶頸現(xiàn)象),有128B~4KB個SRAM,可靈活使用指令運算。
(4)為什么選用AVR單片機? 工業(yè)級產(chǎn)品!具有大電流(灌電流)10~20mA或40mA(單一輸出),可直 接驅(qū)動SSR或繼電器;有看門狗定時器(WDT),安全保護(hù),防止程序走飛,提高產(chǎn)品的抗干擾能力。
(5)為什么選用AVR單片機? 程序?qū)懭肟梢圆⑿袑懭?用萬用編程序器),也可用串行在線ISP擦 寫。也就是說不必將IC拆下拿到萬用編程上燒錄,而可直接在電路板上進(jìn)行程序修改、燒錄等操 作,方便產(chǎn)品現(xiàn)場升級。有ISP、JTAG及自編功能,這是今后單片機編程的發(fā)展方向 。
(6)為什么選用AVR單片機? AVR的I/O口是真正的I/O口,能正確反映I/O口的真實情況。I/O口 有輸入/輸出, 三態(tài)高阻輸入,也可設(shè)定內(nèi)部拉高電阻作輸入端的功能,便于作各種應(yīng)用特性所需 (多功能I/O口)
(7) 為什么選用AVR單片機? 高度保密(LOCK)!
–不可**的Lock bit技術(shù)
–不象Mask ROM那樣可通過電子顯微鏡**–Flash單元深藏于芯片內(nèi)部 –可多次燒寫的Flash且具有多重密碼保護(hù)鎖死(LOCK)功能,因此可快速完成產(chǎn)品商品化,并可多 次更改程序(產(chǎn)品升級)而不必浪費IC或電路板,大大提高產(chǎn)品質(zhì)量及競爭力。
(8)為什么選用AVR單片機? AVR內(nèi)帶模擬比較器,I/O口可作A/D轉(zhuǎn)換用,可組成廉價的A/D轉(zhuǎn)換器。
(9)為什么選用AVR單片機?可重設(shè)啟動復(fù)位。AVR系列有內(nèi)部電源開關(guān)啟動計數(shù)器,可將低電平復(fù) 位(/RESET)直接接到Vcc端。當(dāng)電源開時,由于利用內(nèi)部RC的看門狗定時器,可延遲MCU啟動執(zhí)行程 序。這種延時使I/O口穩(wěn)定后執(zhí)行程序,以提高單片機工作可靠性。有的還有內(nèi)部復(fù)位電壓檢測電
路BOD,而檢測電壓可調(diào)。
(10)為什么選用AVR單片機?具有休眠省電功能(POWER DOWN)及閑置(IDLE)低功耗功能。一般耗 電在1~2.5mA,典型功耗情況,WDT關(guān)閉時為100nA
(11)為什么選用AVR單片機? 像8051一樣,有多個固定中斷向量入口地址,可快速響應(yīng)中斷。而 PIC只有一個中斷入口,要查詢后才能響應(yīng)中斷,失去了最佳響應(yīng)中斷時間。
(12)為什么選用AVR單片機? AT90S1200/2343/ATtiny15等部分AVR器件具有內(nèi)部RC振蕩器- 1MHz的工作頻率,使該類單片機成為無外加元器件即可工作,就是一片芯片,可謂簡單方便,作加密 器件使用更妙。
(13)為什么選用AVR單片機? 計數(shù)器/定時器,C/T有8位和16位,可作比較器;計數(shù)器外部中斷和 PWM(也可當(dāng)D/A)用于控制輸出,有的有3-4個PWM,作電機無級調(diào)速是理想器件。
(14)為什么選用AVR單片機?有串行異步通訊UART接口,不占用定時器和SPI傳輸功能,因其高速故 可以工作在一般標(biāo)準(zhǔn)整數(shù)頻率,而波特率可達(dá)576K。
(15)為什么選用AVR單片機? AT90S4414/AT90S8515具有可擴展外部數(shù)據(jù)存儲器達(dá)64KB。它們 的引腳排列及功能與8051相似,即可替代替8051系列單片機(8751或8752)的應(yīng)用系統(tǒng)。僅差復(fù)位 電平,只需對調(diào)復(fù)位電阻、電容位置。還增加很多新功能,WDT,A/D,PWM等
(16)為什么選用AVR單片機? 工作電壓范圍寬(2.7~6.0V),電源抗干擾性強。 AT90LXX為低電 壓器件(2.7~6.0V), AT90SXX電壓為 (4.0~6.0V),最低器件ATtiny12己到1.8V ~ 5.5V。
(17)為什么選用AVR單片機? AT90S4434/8535具有8路10位A/D;AT90S2333/4433具有6路10位 A/D;功能更強的ATmega103/128有Flash 128KB,EEPROM 4KB,RAM 4KB,I/O端口48個,中斷源16 個 ,外中斷8個,SPI,UART,8路10位A/D,ISP。
(18)為什么選用AVR單片機? 并具有較大容量、可擦寫10萬次的EEPROM,對掉電后數(shù)據(jù)保存帶來 方便,來電后能記住掉電時的工體狀態(tài),EEPROM(64B~4KB) 。
(19)為什么選用AVR單片機? 新的高檔AVR ATmega16/32/64/128還具有JTAG邊界掃描、仿真、 編程功能,不會造成以往仿真通過,脫機不行的現(xiàn)象。
(20)為什么選用AVR單片機? AVR 微處理器---可以對自己編程..ATmega161為使用便利性而設(shè) 計
–寫入新代碼時無需外部器件
–小扇區(qū):128字節(jié)
–Boot區(qū)可變
–Read-While-Write技術(shù)
–減少編程時間
–受控于硬件的編程方法
–打開通向新世界的大門
–通過任何接口進(jìn)行編程(并行編程器、ISP、JTGA、 UART 、自編程)–重復(fù)編程無需外部器件
–100%安全的遠(yuǎn)程加密更新方式
(21)為什么選用AVR單片機? 從高級語言C代碼,看各種單片機性能比較: 從一個小C函數(shù)為例:
/* Return the maximum value of a table of 16 integers */
;返回最大值的表格的16位整數(shù)
int max(int *array);數(shù)組*array
{
char a;
int maximum=-32768;最大的=-32768
for (a=0;a<16;a++)
if (array[a]>maximum)
maximum=array[a];
return (maximum);返回
}
性能比較:
AT90S8515 8 MHz
80C51 24 MHz
68HC11A8 12 MHz
PIC16C74 20 MHz
編譯結(jié)果結(jié)論:
8 MHz AVR ——224 MHz 80C51
HC11:代碼效率高,但是處理能力只有AVR的1/10,功耗卻高 2.5倍
PIC 速度快, 但是在相同功耗下AVR性能比其高3.5倍
(22)為什么選用AVR單片機?AVR使用眾多功能強大的高級語言
● IAR AVR C編譯器 編譯器與AVR同步設(shè)計,支持C和EC++ ,Demo版只生成調(diào)試文件,
● ICC AVR C 編譯器 支持無SRAM器件;增加組軟件模塊;Icc Demo版30天是完全版, 30天后轉(zhuǎn) 限2KB版
● Code Vision AVR C編譯器 有組軟件模塊,Demo版為限2KB版
● GNU C編譯器 網(wǎng)友聯(lián)盟自由免費版,升級慢
● BASCOM-AVR Demo版為限2KB版
(23)為什么選用AVR單片機?AVR有各種檔次的開發(fā)工具
評估工具
–AVR Studio
–STK500
–GNU GCC 編譯器高性能開發(fā)工具
–AVR Studio
–STK500
–ICE10 / ICE30/ICE200
–IAR C
低成本開發(fā)工具
–AVR Studio
–ICE200 / JTAGICE
–Imagecraft C
- 本站開發(fā)AVR mega16/32 學(xué)習(xí)開發(fā)板
(23)為什么選用AVR單片機?有了AVR基礎(chǔ),我們學(xué)習(xí)FPSLIC(=AVR+FPGA+SRAM),使我國單片機開發(fā) 進(jìn)入芯片級開發(fā)。"
上面只是拿一個宣傳avr單片機的,在網(wǎng)上廣為流傳的帖子為例來說,倒不是對avr本身有什么意見,也不是說其他廠商單片機就比它好。
我可以說,上述90%是廢話,是沒話找話,是忽悠不大懂單片機的人的胡扯的話。比如第23條:真高,居然把學(xué)習(xí)avr和發(fā)展我國芯片設(shè)計技術(shù)扯到一塊了,這也太能扯蛋了,試問按照寫這個帖子老兄的意思,難道學(xué)pic,8051就對進(jìn)入芯片級開發(fā)沒有幫助?推而廣之,或許我放個屁也對中國芯片產(chǎn)業(yè)產(chǎn)生影響。
第22條,大意是avr可以用高級語言開發(fā),這也算avr的優(yōu)點?什么單片機不能用高級語言開發(fā),舉個例子出來?
第21條:也是胡扯,把avr與motorola的68HC11A8 比,你怎么不和intel的酷睿比啊?68HC11A8 是什么年代的?它熱賣的時候,你avr還不知道在哪娘肚子里呢,與8051比也是同樣,傳統(tǒng)8051確實不怎么樣,但要說8MHZ avr相當(dāng)與224MHZ 8051我不相信,不知道作者是怎么得出這個結(jié)論的。
第20條:大意是可以isp,這個我想目前大多數(shù)單片機都具有這個功能吧。avr并沒有什么特別之處,也沒什么突出之處,請不要把一個已經(jīng)成為基本功能的東西還拿出來作為亮點在忽悠
第17-19條:什么avr具有jtag,具有spi,adc等等作為亮點在說,同樣,現(xiàn)在幾乎所有單片機都具備上述功能,而且據(jù)我了解,avr在這方面表現(xiàn)一般,很多單片機具有更多路adc,更高精度adc,更多路spi,i2c,uart等等,比如TI msp430,飛思卡爾s08
第8-16條,跟上面一樣,說的全是基本功能,說的全是所有單片機都具備的功能,什么具有定時器,什么具有adc,什么uart不占用定時器,什么低功耗模式。。。。,打住打住,這算是你要吹噓的優(yōu)點嗎?找找看現(xiàn)在的單片機哪個沒有這些功能,當(dāng)然你如果硬是用古老的8051或者moto的68hc,因為不是一個年代的,比較沒什么意義。據(jù)我所知,avr在這方面很一般,很多單片機比它強,有更多的uart,更好的低功耗模式,更多更靈活的定時器。。。,看看飛思卡爾的s08系列就知道了。
第1條尤其古怪,竟然說avr是flash的,pic是otp的,這真是胡扯,pic也有flash的,幾乎所有廠商的單片機都同時有flash版本,otp版本,甚至rom版本的,avr真不該拿這個說事
2-7這幾條,基本上是說高速高性能,雖然說avr確實是接近1mips/mhz,但avr的性能并不是多突出的,這涉及到體系結(jié)構(gòu)的問題,avr通常在3.3v時候只能最高跑8MHZ,5V跑16mhz,這是非常低效的,大多數(shù)單片機都比它快!我甚至懷疑,為什么avr的主頻做不高,很可能是它的架構(gòu)有致命傷,本來就做不高,當(dāng)然這個只是我的懷疑,否則為什么不做個40MHZ的atmeag16?
上面那么多,其實就是想說大多數(shù)這些宣傳的東西都市胡扯的,很不專業(yè),很多誤導(dǎo),上述avr的所有23條優(yōu)點都不是優(yōu)點,因為msp430,s08都具備,甚至比它更好。
比上述更胡扯蛋的,甚至是無恥的就是stc單片機的宣傳,號稱相當(dāng)于480mhz的傳統(tǒng)8051,說永不可解密,說什么intel統(tǒng)一x86,宏晶統(tǒng)一8051,如此狂妄無知無恥的宣傳語真是讓人無語
當(dāng)然從宣傳角度來說,中國向來是沒有什么誠信的國家,電視上,媒體上各種廣告都普遍虛假宣傳,虛夸成分很重,這是中國國情,從這個角度說,那些宣傳單片機的人這么寫沒有什么不對,因為行情就是這樣。如果是我去宣傳,也會這么做,不過我會注意不會那么離譜,肯定比這些人寫的真實些,水分少很多。
評論