1. 기초 이론 지난 게시글에서 다뤘던 Digital Input의 연장선인 Interrupt에 대해 알아봅시다. 우선 Interrupt의 사전적 정의를 보면 아래와 같습니다. 뜻만 보더라도 어떤 기능인지 알 수 있듯 MicroController를 '방해'하고 '중단'시키는 기능입니다. 좀 더 일상에서 비유를 들자면 우리는 숙제(Main Task)를 하고 있다고 가정해봅시다. 숙제를 하는 중간에 전화(Digital Input)가 오기로 해서 전화(Digital Input)를 받아야 합니다. 이런 상황에서 지난 게시글의 이론 기반으로 Code를 짠다면, 다음과 같은 행동을 보이게 될 것입니다. 우리는 숙제(Main Task)를 하고 있는 도중에 전화(Digital Input)가 왔을 때, 숙제(Main Ta..
1. 기초 이론 오늘 다룰 내용은 아두이노에서 제공하는 DigitalRead() 함수에 대한 것입니다. 아두이노는 특정 전압 이상의 값을 받았을때, 이를 0 또는 1로 읽어올 수 있습니다. 여기서 특정 전압이라 하면, Microcontroller마다 기준이 다를 것입니다. 사람으로 예를 들면 '맵다'라는 기준이 다르듯이 말이에요. 아래 가져온 자료는 ATMEGA2560의 Vcc(Voltage Source)에 따른 Input voltage 기준 전압 자료입니다. 쉽게 말해서 사람(MicroController)도 식사량(Vcc)과 그 날 몸 컨디션(Chip의 온도)에 따라서 '맵다'(입력 전압이 0인지 1인지)의 기준이 달라지는 것입니다. 하지만 애초에 Digital로 값을 읽어오는 경우에는 이러한 모호한 ..
1. Arduino? 아두이노는 오픈 소스를 기반으로 한 단일 보드 MicroController로 완성된 보드와 관련 개발 도구 및 환경을 말한다. 2005년 이탈리아의 Interation Design Insitutelvera에서 하드웨어에 익숙지 않은 학생들이 자신들의 디자인 작품을 손쉽게 제어할 수 있게 하려고 고안된 아두이노는 처음에 AVR을 기반으로 만들어졌으며, ATMEL AVR 계열의 보드가 현재 가장 많이 판매되고 있다. ARM 계열의 Cortex-M0(Arduino M0 Pro)과 Cortex-M3(Arduino Due)를 이용한 제품도 존재한다. Hardware reference의 경우 CAD 파일을 다운로드하여 이용이 가능하다. Software의 경우 무료로 이용이 가능하다. (Ardu..