欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

專注電子技術學習與研究
當前位置:單片機教程網(wǎng) >> MCU設計實例 >> 瀏覽文章

單片機avr 輸入輸出(i/o)端口使用 介紹

作者:海盜工作室   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2014年04月29日   【字體:

以ATmega16單片機為例,共有32個通用I/O口,分為4個端口PA,PB,PC,PD,每個端口都包含8個I/O口,如圖所示,每個端口對應一個8位的二進制,對應的i/o管腳順序由高到低排列。

 

 

每個I/O口都可以單獨設為輸入或輸出,如上圖中PA口的8個I/O口全部設為輸出,控制8個發(fā)光二極管的亮滅。i/o口除作為輸入輸出口外,還有第二功能,如PA口也作為AD轉(zhuǎn)換的輸入口。

每個端口都具有輸入,輸出,方向控制三個寄存器:

 

 

 

以PA口為例,其他端口相同,方向寄存器DDRA,對應8個的I/O口,1設為輸出,0設為輸入。

                                              輸出寄存器PORTA,對應的I/O口,1輸出高電平,0輸出低電平

                                              輸入寄存器PINA ,    若對應的I/O口為高電平,相應的位置1,低電平置0

 

 

 

例如:PA口全部設為輸出,DDRA=0xFF,并且全部輸出低電平,PORTA=0x00;將點亮上圖中的全部發(fā)光二極管。

          將PB口的第0位(最低位)設為輸入,其余位設為輸出,DDRB=0xFE;

                     if   ((PINB&0x01)==1)  //判斷PB口的第0位的輸入狀態(tài),是0還是1.

                              PORTA=0x00;    //如果PB口的第0位等于1,即PA口的第0位輸入高電平,那么PA口全部輸出低電平

                              else

                                    PORTA=0xFF;//如果PB口的第0位等于0,即PA口的第0位輸入低電平,那么PA口全部輸出高電平

 

關閉窗口

相關文章