아두이노:편의함수

학교의 모든 지식. SMwiki
Sam (토론 | 기여)님의 2022년 4월 28일 (목) 12:10 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
둘러보기로 이동 검색으로 이동

아두이노 관련 정보를 모으기 위한 틀. 틀:아두이노

  1. 아두이노:개요
  2. 아두이노:하드웨어
    1. 아두이노:우노보드
  3. 아두이노:코드
    1. 아두이노:기초 문법
    2. 아두이노:라이브러리
    3. 아두이노:컴퓨터에서 보드로
    4. 아두이노:안드로이드에서 보드로
  4. 아두이노:핀 사용
    1. 아두이노:전원공급
  5. 아두이노:시리얼 통신
    1. 아두이노:엑셀기록
    2. 아두이노:파이썬과 통신
  6. 아두이노:편의함수
  7. 센서 사용
    1. 아두이노:모션센서
    2. 아두이노:온습도센서
    3. 아두이노:조도센서
    4. 아두이노:pH미터 만들기(Gravity 아날로그 pH센서)
  8. 아두이노:LCD 사용
  9. 아두이노:스위치 사용
  10. 아두이노:릴레이
  11. 아두이노:WIFI
  12. 아두이노:해결되지 않은 다양한 의문들
  13. 수업용 간단 실습
    1. 아두이노:LED
    2. 아두이노:초음파센서
  14. 분류:아두이노 프로젝트

개요[편집 | 원본 편집]

아두이노에서 사용할 수 있는 편리한 함수들을 소개한다.

map[편집 | 원본 편집]

특정 값을 특정한 범위 안으로 매핑.

아두이노의 아날로그핀으로 받는 값은 주로 0~1023까지이다. 이는 직관적이지 않아 백분률로 바꿀 때 사용한다.

int percent = map(넣을값, 시작값, 끝값, 0, 100); 형태로 사용한다.

millis[편집 | 원본 편집]

현재 시간을 담아준다. delay 함수는 코드 전체를 멈추게 하기 때문에 특정 함수는 특정 시간만큼 기다리면서도 다른 작동은 해야 하는 경우가 있다. 이럴 경우 다음과 같이 활용할 수 있다.

unsigned long currTime = 0;
unsigned long prevTime = 0;

...

void loop(){
    currTime = millis();  // 현재시간을 담는다.
    if(currTime - prevTime >= 1000){  // 1초보다 크다면..
        prevTime = currTime;
        명령
    }
}

1초마다 작동하게 하면서 다른 움직임을 막지 않을 수 있다.