: 이번 강좌에서는 mbed의 아날로그 입력을 이용하여, 저항의
축을 회전시키면 저항치가 가변하는 가변 저항을 이용하여 간단한 회로를 구성하고, 가변저항을 하나의 센서로써 생각하고 아날로그 전압 값을 받아
PC의 터미널에 변환된 디지털 값을 표시해 보도록 하겠다.
▶ 아래의 부품을 이용하여 아래의 회로도 처럼 구성하기로
하자.
(※ 이번 강좌에서는 스위치 및 LED는 필요
없지만, 강좌가 이어지는 관계로 함께 구성되어져 있다. 가변 저항 부분만으로 구성하여도 이번 강좌의 진행에는 문제
없다.)
▶ 회로의 배선도이다. 브래드보드에 아래와 같이 mbed 보드와 구성품을 배치, 배선 후 mbed를 PC에 연결하도록
하자.
(※ 이번 강좌에서는 스위치 및 LED는 필요
없지만, 강좌가 이어지는 관계로 함께 구성되어져 있다. 가변 저항 부분만으로 구성하여도 이번 강좌의 진행에는 문제
없다.)
▶
가변저항을 회전시키면 내부 저항값이 변화되는데 이를 이용하여 분배 전압 회로를 만들었다. 다음은 프로그램 적으로 이 분배된 전압을 아날로그 센서
신호로서 받고, 0v ~ 3.3v의 아날로그 전압값을 0~100까지의 디지털 값으로 변환하여, PC의 터미널에 뿌려주는 프로그램이다. 프로그램의 세부 설명은 소스에 기재되어 있는 설명을 참고하도록 하자.
▶
mbed.org 컴파일러에서 직접 코딩하여, 컴파일하기를 추천한다. 아무리 간단한 코딩이라도 할 수록 늘고, 자신감도 붙기 마련이다.아래의
소스를 복사/붙여넣기도 가능하지만, 꼭 직접 코딩하고, 컴파일해보고, 결과를 눈으로 직접 보기를 강력 추천한다.
▶
mbed 소스작성, 컴파일, 업로드 방식은 "mbed 기초 강좌 : 03. mbed 소스작성, 컴파일, 업로드" 를 참고하도록
하자.
▶
USB 가상 시리얼 포트를 통한 통신 방식은 "mbed 기초 강좌 : 04. USB 가상 시리얼 포트를 통한 통신 맛보기" 를 참고하도록
하자.
#include "mbed.h" AnalogIn ain(p16); // Analog In Pin Serial pc(USBTX,USBRX); // Tx, Rx Pin int main() { int data; while(1) { data = ain * 100; // ain (0.0 ~ 1.0) pc.printf("ADC = %d %%\n", data); // mbed -> PC, data(0~100) } } ▶ AnalogIn
▶ Serial
▶
가변 저항을 변화시키면서, PC의 터미널창을 통해 본 실행 결과는 아래와 같다.
[3] mbed
handbook, http://mbed.org/handbook/Serial
작성자: 표윤석(http://robotpilot.net/)
|