스마트 컨트롤러 - Atmega 128A데이터 시트와 AVR Studio 세팅

 

#1. ATmega 128A 데이터 시트

 

학습목표 - ATmega 128A 데이터 시트에 나와 있는 특징의 주요 내용을 안다.

 

Intel - CISC/ ATmega - RISC

 

ATmega128A datesheet 살펴보기

 

<특징>

 

RISC(Reduced instruction set computer) 구조

 

//전통적인 CISC CPU에는 프로그래밍을 돕기 위한 많은 수의 명령어과 주소 모드가 존재했다. 그러나 그중에서 실제로 쓰이는 명령어는 몇 개 되지 않는다는 사실을 바탕으로, 적은 수의 명령어만으로 명령어 집합을 구성한 것이 RISC이다. 그래서, RISCCISC보다 구조가 더 단순하다. 복잡한 연산도 적은 수의 명령어들을 조합하는 방식으로 수행이 가능하다.

 

 

- 133가지의 명령어가 있다. RISC방식임으로 이것들을 조합하여 사용할 수 있다.

대부분이 단번에 실행된다.

 

//General Purpose Register - GPR, 범용레지스터(기억용 메모리)

//Peripheral control register - 주변 제어 레지스터

 

- 범용레지스터 32 X 8, 8bit GPR32개와 주변 제어 레지스터가 있다.

 

- 16MHz, 초당 16만개의 명령어 처리

 

//MIPS million instruction per second

 

- 내장 2클럭 곱셈기

 

높은 내구성 비휘발성 메모리 구역

 

//휘발성(non-volatile) - 전원 공급을 중지하여도 메모리가 사라지지 않는 성질

 

- 자체로 프로그램 삽입이 가능한 플래쉬 메모리

 

//하드 드라이브에는 저장된 내용을 읽는 header가 있는데 하드 드라이브를 읽을 때 이 헤더가 HDD가까이 이동하게 된다.

 

//FlashSSD가 응집되어 있는 것이다.

#2. ATmega 128A 데이터 시트

 

학습목표 - ATmega 128A 데이터 시트에 나와 있는 특징의 주요 내용을 안다.

 

//SSD 사용 시 전기 소모가 줄고 외부충격에 대한 안정성도 높아진다.

 

//EEP ROM - Electronically Erasable Program ROM

 

// Flash는 읽을 때 블록 단위로 처리한다. 하지만 HDD는 물리적인 운동으로 메모리를 읽는 반면 flash는 전기적인 신호로 메모리를 읽기 때문에 flash가 처리속도가 빠르다.

 

// EEPROM은 처리속도가 빠르나 가격이 비싸다. EEPROM은 프로그램을 집어 넣을 때만 사용할 수 있다.

 

- 4kbytes EEPROM

 

- 4kbytes 내부 SRAM

 

- 만 번까지 flash 메모리를 지울 수 있다.(읽는 것은 상관없다.)/EEPROM10만번.

 

- 자가적으로 firmware를 업데이트 할 수 있다.

 

- 64kbytes의 추가적인 외부 메모리를 달 수 있다.

 

- 프로그램 코드를 볼 수 없게 보안을 걸어 놓았다.

 

// Reverse Engineering 만들어 놓은 제품을 분해하여 분석한 후 제조하는 것

 

 

- SPI 인터페이스 -> CPU의 내용을 볼 수 있다.

 

주변 특징

 

- 8bit Timer/Counter2개 있다.

 

- 2개의 16bit Timer/Counter2개 있다.

 

// Timer/Counter에 대해서는 다음에 언급하기로 한다.

 

- Real time Counter가 있다.

 

- 2개의 8bit PWM(고성능)이 있다.

 

- 6개의 2 - 16bit PWM(저성능)가 있다.

 

- 출력 비교 장치가 있다.

 

- 8개 채널의 10bit ADC

 

- Byte를 기본으로 한 2개의 TWI

 

//TWI - Two-wire Interface

 

- 2개의 프로그램 가능한 USART

 

- SPI를 지원한다.

 

- 내부 oscillator와 프로그램을 할 수 있는 watchdog

 

// WatchdogCPU를 연결하여 watch도구에 리셋을 입력할 수 있는 기능을 넣어두고 문제가 발생 시 watchdogCPU를 리셋 시킨다.

 

 

 

#3. AVR Studio 설치 및 주소 상수를 활용한 초기화

 

학습목표 - AVR Studio를 설치하고 주소 상수를 활용하여 실수 값을 초기화 할 수 있다.

 

** AVR Studio 설치

 

실습 - 주소 상수를 활용한 초기화)

 

지난 시간 변수 값을 초기화와 관련한 수업(2/27)에서 썼던 소스를 연다.

 

float 변수를 만들어서 주소 상수를 활용하여 변수 값을 초기화 시켜보자!

 

//fP = 0012FF28

 

 

 

1. 주소 상수를 넣어 초기화 시키는 방법

 

2. #define에 주소 상수를 넣어 초기화 시키는 방법

 

3. 포인터를 활용하여 초기화 시키는 방법

#4. AVR Studio setting

 

학습목표 - AVR Studio setting 후에 ATmega에 연결하여 기본 설정을 할 수 있다.

 

 

 

 

USB port는 컴퓨터 본체에 전원 장치 또한 연결 시켜 준다.

 

 

이제 AVR Studio 4를 세팅해 준다.

 



//port를 연결한 후 뽑을 때 뽑히지 않는다고 흔들게 되면 보드가 빠지거나 망가질 수 있으니 바로 뽑아야 한다.

 

//핀 또한 적혀져 있는 핀에 일치하게 꼿지 않으면 보드가 나가게 된다.











반응형
Posted by newind2000