검색어 입력폼

INTERNAL MEMORY의 이해

저작시기 2012.11 |등록일 2013.03.09 한글파일한글 (hwp) | 5페이지 | 가격 1,200원

소개글

INTERNAL MEMORY의 이해

목차

INTERNAL MEMORY의 이해
1. ATMega128의 데이터 메모리 구조
2. 디버깅 모드
3. 실습

인터럽트
1. 폴링과 인터럽트 그리고 인터럽트 서비스루틴
2. ATMega128 인터럽트
3. 실습

본문내용

1. ATMega128의 데이터 메모리 구조

데이터 메로리는 기본적으로 RAM과 ROM으로 구분된다. RAM은 휘발성 메모리이고 ROM은 비 휘발성 메모리로서 반고정 데이터는 ROM에 저장하고 실시간 사용을 위한 메모리는 RAM을 이용하게 된다. ATMega128은 RAM으로 레지스터와 SRAM을 ROM으로 EEPROM을 사용한다. 이번장에서는 각 메모리에 대한 자세한 설명 및 동작원리가 아닌 데이터 메모리가 어떠한 구조를 가지며 프로그램에서 어떻게 동작하는지 이해하도록 한다.
데이터 메모리는 2가지 값을 가지는데 하나는 그 데이터의 위치를 나타내는 주소(Adress)이고 또 다른 하나는 그 주소에 씌여진 값(Data)이다. 프로그램 사용시 우리는 이 주소를 이용하여 데이터의 위치를 확인 그 데이터를 변경해준다. 이때 포인터라는 것을 사용하여 데이터 값에 주소를 넣어 또다른 주소를 가르키는 방법도 있다.

<중 략>

EIFR = 0x01: 인터럽트 플레그 레지스터에서 콘트롤러에 인터럽트 발생 여부를 알려줌 0비트가 1로 셋되고 SREG레지스터의 I비트와 EIMSK 레지스터의 해당 비트가 1로 설정되어 있으면 MCU는 해당 인터럽트 백터로 점프하여 인터럽트 처리 루틴의 명령어를 받아오게 된다.

3. 실습
- 인터럽트로 LED 점멸 -

실습순서
1) ATMega128을 이용 일정주기마다 LED가 순차적으로 켜지도록 프로그램한다.
2) 버튼 스위치를 누를 때(interrupt 발생시) LED가 멈추었다가 다시 누르면 동작하도록 한다.
* 스위치 누를시 인터럽트가 발생하여 현재 진행중인 프로세스를 멈추고 다른 명령으로 점프하
도록 ISR 설정
* 인터럽트 벡터의 우선순위 고려
* 입력포트 1개(인터럽트가 가능한 포트), 출력포트 1개 사용

참고 자료

없음
다운로드 맨위로