■ ATmega Pin Configurations



(1) 핀 정의

- RESET(핀20)
 : 입력단자로 1레벨이 입력되면 리셋되어 PC(Program Counter)는 일반적으로 0번지를 가르키고 0번지부터 프로그램이
   시작된다.

- XTAL1,XTAL2(핀24,23)
 : 발진용 증폭기 입력 및 출력 단자.

- VCC(핀21,51)
 : 전원 입력 단자.

- GND(핀22,53,63)
 : 그라운드 입력 단자.

- AVCC(핀64)
 : AD변환기 및 포트 F에 대한 공급 전압.

- AREF(핀62)
 : ADC 참조 전압.

- PEN(핀1)
 : SPI를 활성화시키는 단자로 일반적인 동작모드에서는 사용하지 않고 파워 온 리셋시 0상태로 유지해 SPI를 허용하게
   한다.

- 포트A(PA7~PA0:핀44-51)
 : 내부 풀업 저항이 있는 8비트 양방향 입출력 단자.
   외부메로리를 둘 경우에는 주소버스(A7-A0)와 데이터버스(D7-D0)로 사용.

- 포트B(PA7~PA0:핀10-17)
 : 내부 풀업 저항이 있는 8비트 양방향 입출력 단자. SPI용 단자 혹은 PWM 단자로도 사용된다.

- 포트C(PA7~PA0:핀35-42)
 : 내부 풀업 저항이 있는 8비트 양방향 입출력 단자. 외부메모리를 둘 경우에는 주소버스(A15-A8)로 사용된다.

- 포트D(PA7~PA0:핀25-32)
 : 내부 풀업 저항이 있는 8비트 양방향 입출력 단자. 타이머용 단자 혹은 외부인터럽트용 단자로도 사용된다.

- 포트E(PA7~PA0:핀2-9)
 : 내부 풀업 저항이 있는 8비트 양방향 입출력 단자. 타이머용 단자, 외부인터럽트, 아날로그 비교기, USART용 단자로도
   사용된다.

- 포트F(PA7~PA0:핀54-61)
 : 내부 풀업 저항이 있는 8비트 양방향 입출력 단자, AD변환기 혹은 JTAG 인터페이스용 단자로도 사용된다.

- 포트G(PA4~PA0:핀19,18,43,34,33)
 : 내부 풀업 저항이 있는 8비트 양방향 입출력 단자. 외부 메모리접속을 위한 스트로브 신호용, RTC(Real Time Counter)
   타이머용 발진기 단자로도 사용된다.


DDRx
 : 방향 레지스터. 입출력 방향 설정으로 x포트를 출력포트로 할것인지 입력포트로 할것인지 결정한다.

PORTx
 : 출력하려는 값 설정.  DDRx를 출력포트로 사용할 때 출력을 1로 할것인지 0으로 할것인지 결정한다.

PINx
 : 외부에서 들어오는 값. x의 물리적상태로 x의 전기적인 레벨(값)을 읽어온다.


(2) example

// 테스트 - led 가 4개씩 좌우로 깜박인다. 

#include<avr/io.h> 

int main(void)

        // 실행 포트 초기화 
        DDRF = 0xFF; 
        PORTF = 0xFF; 
        volatile unsigned int i; 

        for(;;) 
        { 
                PORTF = 0b11110000; 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++);                 

                PORTF = 0b00001111; 

                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++); 
                for(i=0;i<20000;i++);
        } 
        return 0;
}




※ 출처 : http://donghwada.tistory.com/entry/ATmega-Pin-Configurations-DDR-PORT-PIN

'T heory > Hardware' 카테고리의 다른 글

TCCR, TCNT, TIMSK  (0) 2011.10.19
Class-D 앰프 개념도  (1) 2011.10.11
by 민트앤라떼 2011. 10. 19. 15:13