Download presentation
Presentation is loading. Please wait.
Published by아령 간 Modified 8년 전
1
III. AVR 마이크로컨트롤러 용어정리
2
1. 8051, AVR, PIC 8051 1970 년대 Intel 사에서 개발한 8 비트 마이크로컨트롤러 AVR 1977 년 Atmel 사에서 개발한 8 비트 RISC 마이크로컨트롤러 Advanced Virtual Risc 의 약자 플래쉬 메모리를 내장하여 ISP 기능 지원 다양한 I/O 장치를 내장하고 있음 PIC 1980 년 Microchip 사에서 개발한 8 비트 마이크로컨트롤러
3
2. ISP SPI(Serial Peripheral Interface) 를 사용한 In- System Programmable AVR 칩을 보드에 실장하여 전원 및 클럭 등의 최소 한의 소자만이 연결된 상태에서 Flash, EEPROM 에 여러 번 프로그램을 쓰고 지울 수 있는 기능
4
3. Flash ROM 현재 사용되고 있는 펌웨어 (Firm Ware) 저장용 소 자 가운데 가장 유연한 기능을 가진 롬으로 읽고 쓰 기가 가능한 메모리 공장에서 출시된 이후에도 새로운 BIOS 명령어를 프로그램에 넣을 수 있는 ROM 칩 ROM 과 RAM 의 장점을 모두 가짐
5
4. A/D 변환기 연속적인 신호인 아날로그 신호를 부호화된 디지털 신호로 변환하는 일 아날로그 디지털 변환을 수행하는 기계 장치로 AD Convertor 라고 함. 이 장치는 온도, 압력, 음성, 영상 신호, 전압 등의 실 생활에서 연속적으로 측정되는 신호를 컴퓨터에 입 력하여 디지털화시키는 장치이다. A/D 변환기 D/A 변환기
6
5. UART 시리얼 통신을 수행하는 장치 Universal Asynchronous Receiver and Transmitter” 의 약자로 비동기 직렬통신을 처리하 는 프로그램 컴퓨터에 부착된 직렬 장치들로 향하는 인터페이스 를 제어하는 프로그램이 들어있는 마이크로칩으로, 컴퓨터에게 RS-232C DTE 인터페이스를 제공함으 로써, 모뎀이나 기타 다른 직렬장치들과 통신하거나, 데이터를 주고 받을 수 있게 한다.
7
6. 인터럽트 프로그램을 실행하는 도중에 예기치 않은 상황이 발 생할 경우, 현재 실행중인 작업을 즉시 중단하고 발 생된 상황을 우선 처리한 후 실행 중이던 작업으로 복귀하여 계속 처리하는 것을 말한다. 프로세서의 내 / 외부 장치가 프로세서에게 특정 이벤 트 (event) 가 발생함을 알려서 이벤트를 처리하는 과 정 이벤트는 프로세서의 내부 장치나 외부 I/O 장치에서 비정기적으로 발생하기 때무에 인터럽트 처리를 통해 주변 장치의 서비스 요청을 효율적으로 다룰 수 있음
8
7. 8 비트 1 바이트 = 8 비트 8 개의 비트로서 가전, 일반 제어용 CPU 에 많이 사 용 변수의 자료형에서 8 비트 크기 : char 마이크로컨트롤러의 포트 크기 : 8 비트
9
8-9. 디지털과 아날로그 디지털 (Digital) 0 과 1 의 신호로 계수화하는 것. 자료를 연속적인 값이 아닌 이산적인 수치로 처리하 는 방법 아날로그 (Analog) 전압이나 전류처럼 연속적으로 변화하는 물리량
10
10. LED 발광다이오드 (Light Emitting Diode) 순방향 전압이 인가되면 전류가 흐르고 역방향 전압 이 인가되면 차단되는 특징 친환경, 저전력, 거의 영구적, 크기와 색이 다양
11
11. 풀업 (Pull-Up) 논리적으로 H- 레벨 상태를 유지하기 위해 신호의 입 력 / 출력 단자와 전원 (Vcc) 단자사이에 접속하는 저항 풀업 저항의 주목적은 바로 스위치가 OFF 될 때 풀 업저항을 통해서 전원 +5V 로 연결이 되어 있기 때문 에 스위치가 OFF 되더라도 입력값의 혼동이 없다. 풀업저항이 없으면 ? 스위칭시 과도한 전류가 흐를 개연성이 많기 때문에, 디바이스에 안좋은 영향을 끼칠 수가 있다. 이런 문제 도 풀업 ( 또는 풀다운 ) 저항으로 해결할 수 있다.
12
12. I/O 포트 I/O 포트는 병렬 I/O 인터페이 스로서 CPU 와 외부장치를 연결하는 역할을 한다. 마이크로컨트롤러를 이용하 여 외부장치를 제어할 때 실 제로 외부로부터 각종 정보를 받아들이기도 하고, 외부장치 를 제어하는 신호를 직접 내 어준다. 컴퓨터 내의 CPU 와 외부장 치 ( 키보드, 프린터, 디스플레 이, 제어장치 등 ) 사이에 정보 를 입출력할 때 사용되는 접 속부
13
13. RESET 장치의 일부 또는 전체 시스템을 미리 정해진 상태 로 돌리는 것 ( 초기화 ) 시스템의 일부가 과열현상이 일어나거나 노이즈 (noise) 등에 의해 동작이 이상하게 되었을 때는 리 셋버튼을 누름으로써 같은 상태로 돌려놓을 수 있다. Power ON RESET : 전원스위치를 켜는 순간 리셋
14
14-15. 싱크전류와 소스전류 싱크전류 (Sink Current) 부하측에서 전원쪽으로 거꾸로 흘러들어가는 전류 마이크로컨트롤러에서 포트를 출력으로 사용할 때 각 핀은 8 개의 LED 를 직접 구동할 수 있을 정도의 20mA 의 전류를 공급 소스전류 (Source Current) 전원에서 부하쪽으로 흐르는 전류
15
16-17. 컴파일러와 디버깅 기계어 : 기계만이 알아들을 수 있도록 코딩된 언어 어셈블리어 : 기계어와 일대일 대응이 되는 프로그래밍의 저급 언어 고급언어 : 인간이 이해할 수 있는 명령문이나 기호를 사용하여 프 로그램의 작성과 판독이 쉽도록 만들어진 프로그래밍 언어. 어셈블러는 마이크로프로세서마다 다르며 기계어와 비슷한 수준 이라 사용하기 어렵고 프로그램 작성 시간이 많이 걸리는 단점이 있다. 따라서 C 언어를 사용하는 것이 훨씬 프로그램 작성속도와 디버깅 속도가 빠르다. 컴파일러 : 고급언어를 기계어로 번역하여 실행 가능한 프로그램 으로 만드는 프로그램번역기 디버깅 : 오류를 수정하는 일
16
18. DDRA DDRA : PORT A 데이터 방향 레지스터 입출력 방향 설정을 위한 레지스터 DDRA = 0xff 이면 포트를 출력으로 설정 DDRA = 0x00 이면 포트를 입력으로 설정
17
19. PORTA PORTA : PORT A 데이터 레지스터 데이터 레지스터 PORTA 는 핀별로 지정된 입출력 방 향에 따라 핀별 입출력 데이터가 저장되는 레지스터 출력용 데이터 값을 위한 레지스터
18
20. PINA PINA : PORT A 입력핀 어드레스 PINA 는 입력으로 설정된 포트의 레지스터값이 아닌 입력 핀의 상태를 직접 읽는 데 사용한다.
19
21. 2 진수와 16 진수 변환 LED1 LED2 LED3 LED4 LED5 LED6 LED7 LED8 ○ ● ○ ● ○ ● ○ ● 1 1 1 0 1 0 2 진수 표현 A 16 진수 표현 PORTA = 0xAA; LED 포트로 출력하는 프로그램
20
22. LED 출력회로
21
23. LED 구동프로그램 #include 1 1 void init_port(void) { DDRA = 0xFF; PORTA = 0xFF; } void init_port(void) { DDRA = 0xFF; PORTA = 0xFF; } 2 2 void delay(unsigned int time) { volatile unsigned int i, j; for(i=0;i<time;i++) for(j=0; j<1000; j++); } void delay(unsigned int time) { volatile unsigned int i, j; for(i=0;i<time;i++) for(j=0; j<1000; j++); } 3 3 int main(void) { init_port(); while(1) { PORTA = 0xaa; delay(500); PORTA = 0x55; delay(500); PORTA = 0x3c; delay(500); PORTA = 0xc3; delay(500); PORTA = 0xe7; delay(500); PORTA = 0x99; delay(500); PORTA = 0xff; delay(500); } int main(void) { init_port(); while(1) { PORTA = 0xaa; delay(500); PORTA = 0x55; delay(500); PORTA = 0x3c; delay(500); PORTA = 0xc3; delay(500); PORTA = 0xe7; delay(500); PORTA = 0x99; delay(500); PORTA = 0xff; delay(500); } 4 4
22
24. 7-Segment 회로
23
25. 7-Segment 회로 폰트구성
Similar presentations