aTmega328p chip 구성도
1. AVR 구성도
메모리 SRAM - 컴퓨터에서 주메모리 같은 역활을 한다. (internal SRAM 부분에서 )
아두이노나 펌웨어의 경우 : 컴퓨터처럼 register 와 메모리가 나누어져 있지 않다 그냥 하나로 퉁친다.
위쪽 흰색 부분은 atmega 시리즈에서 모든 칩에서 호환되는 부분으로 위의 영역만 사용해서 코딩한다면 모든 칩에서 호환 가능하다.
밑의 회색 부분은 칩 마다 추가 될수 있는 부분이라서 밑의 영역을 다룬다면 코드가 호환 되지 않을 수 있다 .
범용레지스터 (AVR 구성도에서의 범용레지스터 & DATAMEORY 안의 32Registers 구간)
ALU 가 사용할 데이터가 저장 되어 있는 부분
X,Y,Z 는 특수한 구간으로 8bit Register 2개를 사용해서 16bit Register 로 사용한다.
자세한 내용은 나중에 포스팅 하겠다.
flash 메모리 (우리가 작성한 코드가 올라가는 부분)
32KB 의 용량을 가진다. 주소를 보면 3FFF 까지 존재 하는데 이는 십진수로 16383이다
16383 = 16KB 이다 .
flash 메모리는 32KB 의 메모리를 16KB의 메모리 주소로 다루기 위해서 한 주소에 2 byte (16bit) 가 배정 되어 있다.
데이터 시트를 보면 16KB x 16 라고 표현 되어 있다.
아두이노 328p 에서 define 되어있는 register 주소 헤더 파일
출처
https://kogun.tistory.com/21?category=694964
AVR(ATmaga128) 기초지식(2)_AVR ATmega128의 내부구조
AVR ATmega128은 AVR RISC 구조를 바탕으로 만들어진 8비트의 CMOS형 마이크로컨트롤러입니다. AVR ATmega128 마이크로 컨트롤러는 Harvard Architecture로 설계되었기 때문에 내부 버스인 프로그램 버스와 데이.
kogun.tistory.com
LED 제어 4 - AVR로 시작하는 임베디드 (tistory.com)
LED 제어 4
이번글에서는 AVR에서만 사용가능한 방법이 아닌 일반적인 방법으로 LED를 점멸하는 기능을 구현해 보도록 하겠다. 이번 글은 아직 임베디드 시스템 프로그램에 익숙하지 않은 개발자에게는 다
embed-avr.tistory.com
'공부,일 > atmega328P' 카테고리의 다른 글
atmega 328p PWM & timer counter (1) 분주비 , 타이머 vs 카운터 (0) | 2021.07.27 |
---|---|
ISR() 분석 - 전처리문 분석 (0) | 2021.07.20 |
i/o register 0x0(0x20)메모리 주소의 의미 (기본기) (0) | 2021.07.20 |
EEPROM 사용하기 (0) | 2021.07.18 |
Register 이용해서 LED 켜기 (0) | 2021.07.16 |
댓글