嵌入式學(xué)習(xí)筆記16——AVR單片機(jī)之優(yōu)勢(shì)
2. AVR單片機(jī)的種類
本文引用地址:http://m.butianyuan.cn/article/201611/318416.htm(1)ATtiny系列:如tiny13、tiny15、tiny26,功能較簡(jiǎn)單,屬于低檔,適合功能相對(duì)單一的系統(tǒng);
(2)AT90S系列:AT90S8515等,屬中檔,適合一般系統(tǒng)開發(fā),現(xiàn)在在慢慢的淘汰,向ATmega系列轉(zhuǎn)型。
(3)ATmega系列:Mega8、Mega16、Mega128等,功能較強(qiáng),屬高檔,適合各種具有較高要求的系統(tǒng)。
3. AVR的IO與51單片機(jī)的區(qū)別
(1)51IO口大部分為準(zhǔn)雙向口,復(fù)位時(shí)全部輸出高電平,對(duì)端口的輸入和輸出操作也直接通過IO端口的地址進(jìn)行。
(2)AVR的IO口是標(biāo)準(zhǔn)的雙向口,復(fù)位時(shí)所有端口處于高阻態(tài),AVR的每個(gè)端口對(duì)應(yīng)3個(gè)寄存器,機(jī)DDRx,PORTx,PINx。
(3)在使用AVR之前,一定要根據(jù)引腳功能對(duì)相應(yīng)的端口初始化,否則,端口很可能不能正常工作。
4. AVR單片機(jī)的IO寄存器操作:
如上圖:xn可用A、B、C、D代替,代表各不同的端口。DDRxn——輸入(=0)或輸出(=1);當(dāng)DDRxn設(shè)為輸出時(shí),PORTxn保存要輸出的值(即0為輸出高電平,1為輸出低電平);當(dāng)DDRxn設(shè)為輸入時(shí),可從PINxn中獲得值。
操作步驟:
(1)通過方向寄存器DDRx設(shè)置相應(yīng)的端口為輸入或者輸出。
(2)如果設(shè)置為輸出的話,把需要輸出的數(shù)據(jù)送往數(shù)據(jù)寄存器PORTx。
(3)如果設(shè)置為輸入的話,從輸入寄存器PINx中讀取外部的輸入值,同時(shí)可以通過設(shè)置PORTx來設(shè)置相應(yīng)的引腳是否需要上拉電阻。
5. 開發(fā)環(huán)境(如何新建工程):ICC AVR->Project->new->File->new->保存->右擊右窗口中工程名->Add File(s)...->Project->Compiler option->選擇芯片類型->編譯。
評(píng)論