2013년 7월 25일 목요일

[ATMAGA128] MCU에 대해서


이 포스팅은 개인적인 학문 탐구 및 제어를 공부하기 위한 개인적인 페이지 입니다.
틀린 부분은 댓글을 통해 수정하겠습니다.
 
-----------------------------------------------------------------------------------------------------------------
Atmega 128은 8bit MCU(Micro Controller Unit) 이다.
Atmel사는 여러 종류의 MCU를 지원하는데, 8bit MCU도 상당히 종류가 많다.
ATmega640
ATmega128
ATmega2560
...
..
.
이런 컨트롤러들의 차이는 MCU 내부 주변장치나 내부 Flash memory 차이로 나타난다.
(이를 포함한 여러 가지 차이점이 존재한다.)

예를 들면
mega128은 USART 2개를 지원하며 메모리는 128Kbyte이다.
mega2560은 USART 4개를 지원하며 메모리는 256Kbyte이다.
 
이 차이는 사용자가 구성하려는 시스템에 맞도록 ATmel 사에서도 여러 가지 MCU를 지원하는 것이다. 만약 자신이 구성하려는 시스템에 UART 통신이 4개가 필요하다면 mega128을 통해 구현하기는 힘이 들것이다. (물론 전혀 방법이 없는 건 아니다.) 또한 소스 코드를 작성하다보면 MCU 내에 data table 등 많은 data가 필요할 때 128Kbyte은 부족할 수 있다.
(필자도 128Kbyte를 모두 사용해본적은 없다.-_-)

그렇다면 다다익선이라고 상위기종만 쓰면 좋지 않을까? 라는 어찌 보면 당연한 의문을 품을 수도 있지만 그건 또 아니다.. 공학도라면 멀지 않은 미래에 공학자라면 떼려야 땔 수 없는 게 바로 비용(cost)과 관계가 깊다. 좀 더 나은 스펙에 MCU를 사용하다면 전체적인 비용을 커질 수밖에 없다. 이것은 큰 문제로 다가오며 공학도라면 최소한의 비용으로 시스템을 구성할 수 있어야 한다. 그렇기에 독자들은 자신이 구성하려는 시스템에 맞는 MCU를 선정하는 것이 매우 중요하다 할 수 있다.

앞으로의 연재는 atmega128를 통해 하려 한다.
비전문가 혹은 전문가, 아마추어 혹은 프로 사이에서 가장 많이 쓰이는 게 Atmega128이라 생각하며 자료도 쉽게 얻을 수 있기 때문이다.

또한 소스 코드는 Code vision의 컴파일러를 사용할 것이다.
코드비전은 http://www.hpinfotech.ro/html/cvavr.htm 이 곳에서 받을 수 있다.

마지막으로 코드비전의 사용법이나 설명에 주가되는 C언어에 대한 문법은 소개하지
않으려 한다. 이러한 정보는 간단한 검색을 통해 쉽게 알 수 있다.

댓글 없음:

댓글 쓰기