[Ayeun] 마이크로프로세서응용 3주차 결과보고서 마프(ATmega128 I/O PORT,LED과제코드)
- 최초 등록일
- 2018.12.22
- 최종 저작일
- 2018.10
- 11페이지/ 한컴오피스
- 가격 1,000원
목차
1. I/O PORT에 대한 이론
1) DDRx 레지스터
2) PORTx 레지스터
2.1 실습예제#1 : LED 교차 점등
2.2 실습예제#2 : LED Shift 점등
2.3 실습예제#3 : 본인이 원하는 다양한 LED 패턴 구현
2.4 과제 : 동영상 LED 패턴 구현
3. 회로도 및 동작원리
1) 회로도
2) 동작원리
3) SINK 전류로인한 동작원리
본문내용
1. I/O PORT에 대한 이론
실험에 사용된 회로도와 DDR 및 PORT
- 외부 데이터 메모리와 데이터 전송시 하위 주소와 데이터 버스로 사용된다.
- 외부메모리를 둘 경우에는 주소버스(A7-A0)와 데이터버스(D7-D0)로 사용된다.
- 8비트의 양방향 I/O 포트로 사용 가능하다.
- 외부에 메모리를 인터페이스하지 않을 때에는 내부 풀업 저항(20㏀∼50㏀)을 갖는다.
싱크전류이기 때문에 PA0~7의 출력이 Low(0V)일 때 LED가 불이 켜진다.
#DDRx 레지스터
1. DDRx(Data Direction Register) 레지스터로 데이터의 방향을 결정한다.(0=input, 1=output)
2. x는 포트 A~G를 뜻한다.
3. PORTx 또는 PINx로 출력에 대해 설정하거나 입력을 받는다.
Ex 1.)
PA0, PA3에 output을 주고 싶을때(출력은 High(5V) 또는 Low(0v)가 이다.)
DDRA = 0b00001001; // 2진수로 모든 비트를 표현(잘 쓰이지 않음)
DDRA = 0x09; //16진수로 간결하게 표현
Ex 2.)
DDRA = 0b00000001이면, PA0을 출력으로 하고, 나머지 PA1~7은 입력으로 하겠를 의미한다.
DDRA = 00010001이면, PA4, PA0은 출력으로 하고, PA1,2,3,5,6,7은 입력을 의미한다.
- DDR 레지스터를 통해 set(1)로 설정된 핀에서만 출력이 가능하다.
- PA7, PA1등을 출력하고 싶다고 PORT레지스터로 set(1)해봐야 제대로 동작하지 않는다.
- 순차적으로 필요한 레지스터를 설정하여 원하는 결과를 내는 연습이 필요하다.
#PORTx 레지스터
1. DDR 레지스터를 이용하여 Output 선언된 포트를 제어하는 레지스터이다.
2. DDR 레지스터를 Output으로 선언된 포트만 PIN을 사용할 수 있다.
3. Input으로 선언된 포트는 PIN을 사용하여햐 한다.
참고 자료
없음