Introduction
시작하면서
ATmega128은 간단한 사용방법으로 인해 널리 사랑받고 있는 마이크로 컨트롤러입니다. 1990년대에 출시되었으니 적지 않은 시간이 흘렀네요. 세월이 흐른 만큼 ATmega128보다 고성능의 최신 마이크로 컨트롤러도 많이 출시되었습니다. 그럼에도 저는 처음 마이크로 컨트롤러를 접하는 분들이 ATmega128을 먼저 배웠으면 좋겠습니다. 그 이유는 아래와 같습니다.
-
쉽다.
ATmega128은 출시된지 세월이 꽤 지난 제품입니다. 이보다 훨씬 고성능의 MCU들도 많이 출시되었죠. 그런데 ‘고성능’의 뜻이 뭘까요? 무언가를 더 빠르게 계산할 수 있고, 더 세세한 부분까지 제어를 할 수 있다는 뜻일겁니다. 그런데 이러한 점이 처음 공부를 시작하는 분들에게는 단점이 될 수 있습니다. 물론 시스템을 내가 원하는 대로 세세한 부분까지 제어하는 것은 좋지만, 초보자에게는 불필요하게 많은 지식을 요구하고 복잡한 일일 수 있기 때문이죠. 시스템을 더 정밀하게 제어한다는 것은 더 많은 설정을 필요로 하니까요. 그런 점에서 ATmega128은 초보자에게 지나치게 복잡하지 않으면서 마이크로 컨트롤러의 기본을 익힐 수 있는 좋은 시작이 될 수 있습니다.
-
사용자가 많고 예제가 많다.
ATmega128 하면 교육용 마이크로 컨트롤러라는 이미지가 떠오를 만큼 이미 교육용으로 널리 쓰이고 있으며, 예제와 설명들이 넘쳐납니다. ATmega128을 아는 사람도 많고 이미 인터넷에는 관련된 질문들과 답이 많기 때문에 처음 배우는 사람들에게 적합합니다.
이러한 이유로 ATmega128 프로그래밍 관련된 글을 연재해보려 합니다. 이 글을 읽는 독자는 C언어를 알고 있는 대학생이라 생각하고, 최대한 쉽게 설명하겠습니다.
무엇을 배울까요?
ATmega128의 사용 방법을 배웁니다. 이를 통해, 궁극적으로 마이크로 컨트롤러의 사용 방법을 학습합니다. 여기서 사용 방법을 배운다는 뜻은, 마이크로 컨트롤러의 구조와 원리에 대해서 배우는 것이 아니라 이것을 우리가 원하는 대로 동작하게 하는 방법을 배운다는 뜻입니다. 자동차를 운전해서 원하는 목적지로 가기 위해 자동차의 구조와 원리를 배울 필요는 없죠. 악셀과 브레이크, 핸들 등의 사용 방법만 알아도 원하는 곳으로 이동할 수 있습니다. 마찬가지로 마이크로 컨트롤러도 구조와 원리를 배우지 않고도 우리가 원하는 대로 동작시킬 수 있습니다.
마이크로 컨트롤러가 무엇인지, ATmega128이 무엇인지 모르시는 분도 계실텐데요. 간단히 설명드리겠습니다.
마이크로 컨트롤러
마이크로 컨트롤러는 마이크로(작은) + 컨트롤러(제어장치), 한글로 작은 제어장치라는 뜻이죠. 같은 의미의 단어로 MCU(Microcontroller unit), μC(uC), 마이컴 등이 있습니다. 앞으로는 편의상 MCU라 부르겠습니다. 전자기기를 뜯어보면 안에 보이는 작은 칩들이 MCU입니다.
![]()
우리 주변에 있는 무선 이어폰, 도어락, 자동문, 냉장고, 에어컨 등등 수많은 전자기기 안에는 이러한 칩, MCU가 들어있죠. 바로 이 MCU가 전자기기를 제어하는 역할을 합니다. 작은 제어장치라는 말이 와닿으시나요? 😄
ATmega128
ATmega128은 ATMEL(지금은 Microchip에 인수되었습니다)이라는 회사에서 만든 마이크로 컨트롤러의 제품명입니다. ATmega128 이외에도 다양한 제품들이 있지만, 그 중에서도 ATmega128이 제일 잘 알려져 있습니다. 자동차의 운전 방법을 배우려면 소나타든 포터든 자동차를 직접 몰아봐야겠지요? 마찬가지로 마이크로 컨트롤러의 사용 방법을 배우기 위해 ATmega128을 다뤄볼 예정입니다.
운전면허학원에 가면 모두들 1종은 포터, 2종은 소나타로 운전 방법을 배우듯이, 대부분 ATmega128을 통해 MCU의 사용 방법을 배웁니다. 소나타로 운전을 배우면 비슷한 다른 차량을 운전하는 것도 별로 어렵지 않습니다. 마찬가지로 ATmega128을 잘 다룰줄 안다면, 다른 MCU를 다루는 것도 그리 어렵지 않습니다(아마도요😅). 마이크로 컨트롤러계의 소나타가 바로 ATmega128인 것이죠.
무엇을 할 수 있을까요?
< 추후 프로젝트 영상 링크 공유 예정입니다.>
위 프로젝트를 여러분과 같이 만들어볼 예정입니다. 수업 내용을 잘 이해하셨다면, 비슷한 수준의 다른 작품도 어렵지 않게 만드실 수 있을거라 생각합니다.
Leave a comment