atmega128, 아두이노 전자공학도 필수(마이크로프로세서, 임베디드, 아트메가)

atmega128, 아두이노 전자공학도 필수(마이크로프로세서, 임베디드, 아트메가)

오늘 작성하려는 글은보통 전자공학, 전기공학 2학년때 다루는 프로세서에 대한 글이다. 필자는 2011년도 대학교를 입학하였고, 어느덧 9년이 지났다.대학원시절에는 대학생들을 대상으로 전자공학 실습시간에 아두이노 키트를 이용하였었다. 필자는 대학생시절 흔히 아트메가라고하는 atmege128로 실습을 하였다. 아두이노는 굉장히 우숩고 쉬우면서 간단하였다. 그 이유에 대하여 하나씩 알아보자. 본 글은 전자공학도 신입생~2학년 수준에서 읽었으면 하는 바램이있고, 전자공학과 선배로써 해주는 이야기이다.

atmega128

atmega128은 마이크로프로세서, 마이크로프로세서에 대하여 알아보자

micro processor 프로세서라하면 본래 컴퓨터에 꼽혀있는 cpu로 생각하면 편하다. 연산과 입출력을 담당하고 프로그램을 동작시키는데 인간의 뇌같은 존재이다. 앞에 micro가 붙었다는건 말그대로 cpu보단 덜 처리하고, 덜 연산한다는 소형 칩(chip)이다. cpu의 풀 네임은 central processing unit 이다.

atmega128

우리가 사용하는 전자기기, 전자제품, 가정용제품, 심지어 차량까지 이 프로세서들이 탑재되어있다. 밥솥을 예를들어보자. 밥솥의 기능은 크게 밥을 짓는것이다. 그럴려면 전기를 이용해 가열하는 기능과 밥을 보온하는 기능 이 두가지가 대표적일 것이다. 이런 두가지 기능을 하기위해 40만원짜리 라이젠 3700x를 꼽는다면 얼마나 낭비인가.

때문에 보통의 기능을 수행할 수 있는 수준의 프로세서를 선정하여 단가를 맞춘다. 차량용 프로세서는 조금 더 비싸다. 가속, 제동 관리 차량 상태 확인 내부 상태 확인 등등 다양한 센서들이 박혀있고, 이것을 운전자석에 모니터링 해주고 최근에는 첨단시스템들이 주행보조까지 해주니 연산이 느리다면 운전자는 사고에 노출될 확률이 높다.

이런 중요한 사람의 생명이 달린 분야에서의 프로세서는 처리속도가 빨라야한다. 요즘에는 임베디드나 프로세서를 다루는 분야가 옛날만큼 핫하진 않다. 왜냐하면 요즘은 빅데이터, 인공지능, 클라우드, 블록체인 등등을 컴퓨터에서 하기때문이다. 그러나 임베디드나 프로세서 분야 수요는 지속적으로 있을 수 바께 없다.

때문에 전자공학을 입학한 당신은 무엇을 선택하던 굶어죽진 않는다. 옛날만큼 핫하지 않다라고했지만 수요는 계속있고, 최근에는 컴퓨터에서 처리하던 인공지능, 빅데이터들을 경량화시켜 프로세서에 탑재하기 때문이다.이야기가 많이 길어졌는데 어찌됐건 프로세스, 임베디드 부분이 이렇다는걸 알고있길 바란다.

atmega128

자 그럼 이번엔 아트메가128(atmega128)에 대하여 알아보자. 필자가 한참 대학교 2~3학년 시절 아두이노는 거의 없다고 봐도 무방하다. 어떻게보면 그때가 아트메가를 썼던 마지막 세대일 수 있을 것 같다. 아트메가는 ATMEL 사에서 만든 프로세서이다.

이것이 유명하게 된 이유는 정말 사용하기 무난한 제품이기 때문이다. 근데 여기서 확실하게할 것은 아두이노는 프로세서 칩(chip)이 아니라, 보드라고 생각했음 좋겠다. 보드라하면 프로세서와 센서등등이 부착된 하나의 교육용 키트이다.

위 그림에서 보는것과 같이 가운데 검정 정사각형이 있는데, 저것이 atmega128이다. 그리고 그외에 붙은것들은 오실레이터, 단순한 커넥터, 리셋스위치 등등이 결합된 하나의 보드형태를 띄우고 있는것이다.

저 아트메가로 실습을 하려면 하나의 키트형태로 대학에서 교육을 하게된다. (필자의 경우는 직접 손으로 다 납땜해서 제작하였다.) 참고로 atmega128만있는게아니다. 내가 사용하는 프로그램이나 코드가 짧다면 더 하위모델도 있다. 과거 선배들은 아두이노가 없을 시절 어떻게 공부하였는가? 바로 올데이터 시트라는 사이트에서

https://www.alldatasheet.co.kr/view.jsp?Searchword=ATMEGA128ATMEGA128 Datasheet, PDF – AlldatasheetATMEGA128 데이터시트, Datasheet, PDFwww.alldatasheet.co.kr

모든 사용에 대한 공부를 직접 수행하였어야만 했다. 때문에 아두이노보다 학습량도 많았으며,

atmega128

저 수많은 핀들이 무슨기능을하는지까지 다 알아야하니까. 지금 이글을 쓰면서도 기억나는걸 적어보자면 RX TX는 시리얼통신을 하기위한 송수신부 AD는 아날로그 디지털 핀 MOSI MISO는 마스터, 슬레이브 핀 SCK는 클럭핀…. 등등등등 그리고 코드를 작성하기위해 레지스터들을 모두 알아야했다.

atmega128

참고로 이건 일부다. 더 있다. 궁금한 사람은 올데이터시트에서 ATMEGA128을 검색하길 바란다. 어찌됐건 저런 이련의 코드들을 학습하기에 한학기 수업으로는 분량도 너무 짧았다.그러던 2015~2016년대학에서 아두이노를 채택하여 정규수업에 편성하게되었다.

아두이노(Arduino)

아두이노도 모델에따라 나노 메가 우노 마이크로 등등 여러가지가있다. 가장 표준이 아두이노 우노(Arduino Uno)이다.

atmega128

아두이노 우노는 필자가 위에서 보드라고하였다. 아두이노 우노가 프로세스이름이아니다. 사진 상 위에 동그라미친 부분이 Atmega328 마이크로 프로세서가 탑재된 다양한 센서가 결합된 하나의 보드이다. 아두이노가 쉬운이유는 필자의 생각이지만

1. 레지스터를 만지지 않아도 헤더파일들이 정의되어있다. <- 이게 가장 큰이유라 생각한다.

2. 센서들과 연결이 간편하다 (예전엔 납땜 홈판에 직접다 제작하였지만, 현재는 브레드보드와 점퍼선으로 끝낸다)

atmega128

3. 예제와 책들이 깔끔하게 정리되어있으며 심지어 블로그나 유튜브에도 관련 자료들이많다.

필자는 2010년도 전자공학도 학생이였으면서 매형이 있는데 이분은 00년도 학번이시다. 당시 교육환경을 물어보니 아트메가 128을 하려면 데이터시트도 싹 읇어야했었는데 당시 인터넷 보급도 원활하지않아 관련자료를 찾기도 힘들고, 올데이터시트라는 사이트도 없었다고한다.

이 이야기를 듣고 전자공학도 선배들이 얼마나 대단하신 분인지 알 것 같았다. 물론 아두이노우노를 무시하는게아니다. 만약 전자공학에서 임베디드, 프로세서, 로봇, 제어공학을 생각한다면 필자가 생각하는 학습 과정은

1. 아두이노 마스터(우노 추천)

2. 아트메가 마스터(128 추천)

3. SMT 보드 마스터(STM32L152RE 추천)

순서대로 학부때 이 과정을 마무리한다면 영어점수 및 인적성이 완료되었다는 가정하에 큰 기업을 노려볼 수 있다.

atmega128

공부과정도 각각의 보드에따라 센서 작동 공부에 대하여 추천해주자면

1. LED 갖고놀기

2. 시리얼통신 갖고놀기

3. 서보모터 갖고놀기

4. 초음파센서, 가스센서류 갖고놀기

5. 엔코더/DC모터 갖고놀기

6. SPI, 블루투스 등 보드에 달린 모든 통신 갖고놀기

7. GPS 갖고놀기

8. OS 탑재해서 임베디드 환경으로 갖고놀기

9. 영상처리, 인공지능, 데이터처리 해보기

10. 위 공부한 내용으로 하나의 프로젝트를 만들어보기(Ex 드론)

필자는 2011년 임베디드소프트웨어 대전 2013년 한양대학교 모형차 대회 등등을 수상하진 못했지만 참여하였다. 그치만 당시 그 경험이 엄청난 포트폴리오를 만들었다. 이글을 읽는 후배들에게 공학은 어려운 학문이지만 그만큼 오래 갈 수 있고 하는만큼 돈벌수 있는 직업인것만은 확실하다는 이야기를 해주고싶다.

다른글 더 보기

아파트 브랜드, 아파트 브랜드 인기 순위, 아파트 건설사 종류, 래미안, 힐스테이트, 푸르지오, 자이, 아이파크, 현대산업개발, 롯데캐슬

러시아 우크라이나 전쟁, 갈등, 관계, 관련주, 이유

지진 세기, 지진 규모, 리히터 규모, 지진 진도

MBTI별 범죄를 저질르면?

돈을 쓸어담은 MBTI 순위