2022. 3. 8. 00:10ㆍ학부 강의/Arduino
TinkerCAD 시작하기
실물을 사용하기 전에 시뮬레이터를 사용해서 우선 배운다.
따로 프로그램을 설치할 필요없이 웹기반의 TinkerCAD 사용한다.
회원가입한다.
애플이나 구글의 계정을 이용할 수 있다.
Circuit menu에서 "새로운 회로 작성"을 누른다.
TinkerCAD 구성, 기능
우측에 구성요소(component)를 확인할 수 있을 것이다.
구성요소를 끌어와서 생성하면 구성요소마다 속성값(property)을 설정할 수 있다.
구성요소들을 서로 연결해서 원하는 회로를 구성할 수 있다.
회로의 기본요소인 아두이노 보드는 코드를 작성할 수 있다.
"코드" 버튼을 클릭해서 들어가면 스크레치와 같은 블록 코딩을 지원한다는 것을 확인할 수 있을 것이다.
물론 일반적인 문자 코딩도 지원하다.
아두이노 보드는 C/C++를 바탕으로 조금 변형된 (대채로 간소화된) 방식으로 코드를 작성할 수 있다.
그외에도 TinkerCAD는 내보내기(Export), 공유(Share) 기능을 지원한다.
특히 내보내기(Export) 기능의 경우 원한다면 맞춤형 PCB(Printed Circuit Board)로 제작하기 위해 BRD 파일로 다운로드 받을 수 있다.
LED 반짝이기
LED의 애노드를 아두이노의 13번 핀에 연결하고 캐소드를 그라운드(GND)에 연결합니다.
디지털 핀은 digitalWrite() 함수에 어 떤 값을 쓰는지에 따라 0V도 될 수 있고 5V도 될 수 있습니다.
캐소드에 연결된 선이 그라운드에 연결되었기 때문에 항상 0V의 값을 가집니다.
하지만 13번 핀에 연결된 LED 의 애노드는 디지털 출력 값이 LOW인지 HIGH인지에 따라 0V도 될 수 있고 5V도 될 수 있다.
때문에 0V일 때는 그라운드와 동일한 전압이라 전류가 흐르지 않지만 13번 핀에 5V가 걸리면 5V가 0V보다 높기 때 문에 애노드에서 캐소드로 전류가 흐르면서 LED의 불빛이 켜집니다.
// C++ code
//
void setup()
{
pinMode(13, OUTPUT);
}
void loop()
{
digitalWrite(LED_BUILTIN, HIGH);
delay(1000); // Wait for 1000 millisecond(s)
digitalWrite(LED_BUILTIN, LOW);
delay(1000); // Wait for 1000 millisecond(s)
}
setup(): 아두이노의 전원이 공급되면 가장 먼저 실행되는 함수이자 한 번만 실행되는 함수다.
loop(): 계속해 반복되는 함수로 아두이노가 실행할 수 있는 최대 빠르기로 실행합니다.
pinMode(핀 번호, 모드): 디지털 핀의 용도를 초기에 설정. 매개변수로 사용될 핀 번호와 해당 핀을 출력 모드(OUTPUT)로 사용할지 입력 모드(INPUT)로 사용할지 결정.
digitalWrite(핀 번호, 값): 디지털 핀에 값을 쓰기 위한 목적으로 사용, 값에는 HIGH와 LOW 사용.
delay(ms): loop() 함수가 반복적으로 실행되는 시 간에 지연을 주기위한 목적으로 사용. 매개변수는 지연 시간으로 밀리 초(millisecond, ms) 단위로 입력.
시리얼모니터 출력
Serial.begin(): 함수는 시리얼 통신을 시작하기 전에 통신 속도를 맞추기 위한 목적. 일반적으로 9600(bit)를 Baud Rate로 사용.
Serial.println("text"): 시리얼 모니터로 출력. ln은 개행을 의미.
'학부 강의 > Arduino' 카테고리의 다른 글
2022-04-13 Arduino_5 (0) | 2022.04.13 |
---|---|
2022-04-07 Arduino_4 (0) | 2022.04.07 |
2022-03-30 단축_계산 (0) | 2022.03.30 |
2022-03-30 Arduino_3 (0) | 2022.03.30 |
2022-03-23 Arduino_2 (0) | 2022.03.23 |