코드_주석
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
코드_주석 [2010/01/28 13:17] – created suapapa | 코드_주석 [2013/08/03 05:04] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | <code txt> | ||
+ | 예제 03A: 버튼이 눌리면 LED를 켜고 | ||
+ | 다시 누를 때 까지 유지하기 | ||
+ | 이 예제를 새 아두이노 스케치에 복사해 붙일 것 | ||
+ | LED가 사용하는 핀 번호 | ||
+ | 푸쉬버튼이 연결되어 있는 | ||
+ | 입력 핀 번호 | ||
+ | val은 입력 핀의 상태를 | ||
+ | 저장하기 위해 사용됨 | ||
+ | 0 = LED 꺼짐, 1 = LED 켜짐 | ||
+ | 아두이노에게 LED는 출력 | ||
+ | BUTTON은 입력임을 알려줌 | ||
+ | 입력 값을 읽어 저장 | ||
+ | 입력이 HIGH (버튼이 눌림)인지 와 | ||
+ | 상태가 변했는지 검사 | ||
+ | LED 켬 | ||
+ | 예제 05: 버튼이 눌렸을 때 LED를 켬 | ||
+ | 간단한 바운싱 제거가 포함됨. | ||
+ | 버튼을 누르고 있으면 밝기가 변한다. | ||
+ | 푸쉬버튼이 사용한 입력 핀 | ||
+ | 입력핀의 상태 저장 | ||
+ | " | ||
+ | 밝기 값 저장 | ||
+ | 버튼이 눌리기 시작한 시간 | ||
+ | 냠냠. 새 값이다. | ||
+ | 상태가 변했는지 검사 | ||
+ | 상태를 끔에서 켬으로 또는 | ||
+ | 그 반대로 변경 | ||
+ | millis() 는 아두이노의 시계 임 | ||
+ | 이 함수는 보드가 재시작(reset) | ||
+ | 된 후 지난 시간을 미리초 단위로 | ||
+ | 반환한다. | ||
+ | (이 줄은 마지막으로 버튼이 눌린 | ||
+ | 시간을 기억한다) | ||
+ | 버튼이 계속 눌려 있는지 검사 | ||
+ | 버튼이 500ms 이상 눌려 있는지 | ||
+ | 밝기를 1 만큼 증가 | ||
+ | 밝기가 너무 빨리 변하는 것을 | ||
+ | 방지하기 위해 대기 | ||
+ | 255이 밝기의 최대 값 | ||
+ | 값이 255이 넘는 경우 | ||
+ | 0으로 초기화 함 | ||
+ | val 값은 이제 오래됨. 저장해 둔다 | ||
+ | 현재 밝기로 | ||
+ | LED를 켬 | ||
+ | LED를 끔 | ||
+ | 예제 03C: 버튼을 누르면 LED를 켬 | ||
+ | 간단한 바운스 제거 포함 | ||
+ | 개선된 새 버젼!! | ||
+ | 이 변수는 변수 " | ||
+ | 이전 상태를 저장하기 위함 | ||
+ | 0 = LED 꺼짐, 1 = LED 켜짐 | ||
+ | val 값은 이제 오래됨. 저장해 둔다 | ||
+ | 예제 04: 애플 컴퓨터의 절전기능 처럼 | ||
+ | LED를 서서히 켜고 끄기 | ||
+ | 증가와 감소를 세기 위해 이 변수를 사용 | ||
+ | 0에서 254까지 반복 (서서히 켜짐) | ||
+ | LED의 밝기 설정 | ||
+ | analogWrite의 반응이 즉각적이므로 | ||
+ | 변화를 보기 위해서 10ms 만큼 | ||
+ | 대기해야 함 | ||
+ | 255에서 1까지 반복 (서서히 꺼짐) | ||
+ | 10초간 대기 | ||
+ | 예제 06A: 아나로그 입력 값의 | ||
+ | 비율로 LED를 깜박이기 | ||
+ | 센서에서 들어오는 값을 | ||
+ | 저장하기 위한 변수 | ||
+ | LED는 출력 | ||
+ | 참고: 아나로그 핀들은 자동으로 | ||
+ | 입력으로 설정됨 | ||
+ | 센서로 부터 | ||
+ | 값을 읽음 | ||
+ | LED를 켬 | ||
+ | 일정 시간 만큼 | ||
+ | 프로그램을 멈춤 | ||
+ | LED를 끔 | ||
+ | 예제 07: 아나로그 입력 0번에서 | ||
+ | 읽은 값을 컴퓨터로 전송하기 | ||
+ | 스케치를 올릴 후 반드시 | ||
+ | " | ||
+ | 센서 저항에 사용할 | ||
+ | 입력 핀 선택 | ||
+ | 센서에서 들어오는 값을 | ||
+ | 저장할 변수 | ||
+ | 데이터를 컴퓨터로 전송할 | ||
+ | 시리얼 포트를 연다. | ||
+ | 속도는 초당 9600 비트 | ||
+ | 값을 시리얼 포트에 | ||
+ | 출력 | ||
+ | 매 전송 간 | ||
+ | 100ms 씩 대기 | ||
+ | 예제 08B: 아두이노 네트워크 램프 | ||
+ | 센서에서 들어오는 값을 저장하기 위한 변수 | ||
+ | 시리얼 포트를 연다 | ||
+ | 센서의 값 읽음 | ||
+ | 수신한 바이트를 읽음 | ||
+ | 마커를 찾으면, 따라오는 char 6개가 색 값 | ||
+ | char 6개를 처리 | ||
+ | 버퍼에 저장 | ||
+ | 저장위치(pointer)를 1 만큼 이동 | ||
+ | 이제 16진수(HEX)로 저장된 3개의 숫자를 얻음 | ||
+ | 이 숫자들을 r, g, b 3 바이트로 디코드 해야 함 | ||
+ | 버퍼를 다시 사용하기 위해 저장위치를 초기화 | ||
+ | 변화가 있는지 검사 | ||
+ | 램프를 켜는 경우 | ||
+ | 컴퓨터에서 보내 온 | ||
+ | 색 값으로 | ||
+ | LED를 켠다 | ||
+ | 반대의 경우 끈다 | ||
+ | 각 전송 간 100ms 씩 대기 | ||
+ | 하나의 16진 글자를 숫자로 변환 | ||
+ | 예제 02: 버튼이 눌려있는 동안 LED를 켜기 | ||
+ | 입력이 HIGH (버튼이 눌림) 인지 검사 | ||
+ | 예제 03B: 버튼이 눌리면 LED를 켜기 | ||
+ | 개선된 방법 사용 | ||
+ | 예제 06B: Set the brightness of LED to | ||
+ | a brightness specified by the | ||
+ | 센서에서 받은 | ||
+ | 밝기 값으로 | ||
+ | LED를 켠다 | ||
+ | 예제 01 : LED 깜박이기 | ||
+ | LED는 디지털 핀 | ||
+ | 13번에 연결되어 있음 | ||
+ | 디지털 핀을 | ||
+ | 출력으로 설정 | ||
+ | LED를 켠다 | ||
+ | 1초 동안 대기 | ||
+ | LED를 끈다 | ||
+ | 예제 08A: 아두이노 네트워크 램프 | ||
+ | 일부 코드는 토드 E. 커트가 올린 블로그 포스팅 | ||
+ | (todbot.com)에서 영감을 받음 | ||
+ | 이 예제를 새 프로세싱 스케치에 복사해서 붙일 것 | ||
+ | 매 60초 마다 피드를 받아 옴 | ||
+ | 마지막으로 피드 내용을 받은 시간 | ||
+ | 램프에서 측정한 빛의 밝기 | ||
+ | 아두이노에서 받아 온 글자들을 계산 | ||
+ | 빨리 갱신할 필요는 없다 | ||
+ | 중요 공지: | ||
+ | Serial.list()로 받아온 포트 중 첫번째가 | ||
+ | 포트가 여러분의 아두이노 일 것이다. 아니라면, | ||
+ | 다음 줄 앞의 //을 지워 주석을 해제하고, | ||
+ | 다시 실행하여 시리얼 포트 목록을 확인하라. 그리고, | ||
+ | [ 와 ] 사이의 0을 여러분의 아두이노가 연결된 | ||
+ | 포트의 번호로 바꾸라. | ||
+ | 아두이노에 접속 | ||
+ | 3 값을 기반으로 색을 구성 | ||
+ | 아두이노에 전송할 문자열 준비 | ||
+ | 화면에 색 문자열 출력 | ||
+ | 1023을 100에 맞춤 | ||
+ | 아두이노에 데이터 전송 | ||
+ | 기다리고 있는 데이터가 있는지 검사 | ||
+ | 한 바이트를 읽음 | ||
+ | 바이트가 새 줄(newline)인지 검사 | ||
+ | 버퍼에 추가함 | ||
+ | 줄의 끝에 도착. 이제 데이터를 처리하자 | ||
+ | 충분한 데이터가 있는지 확실히 함 | ||
+ | 마지막 글자(char)를 잘라냄. 이 글자는 캐리지 리턴 임 | ||
+ | (캐리지 리턴은 텍스트에서 각 줄의 끝에 | ||
+ | 위치하는 글자 임) | ||
+ | 버터의 스트링을 십진수로 변환 | ||
+ | 다음 읽기 주기를 위해 버퍼를 비움 | ||
+ | 우리는 아두이노에서 읽은 값들을 받은 후에 | ||
+ | 처리할 것이다. 그러므로, | ||
+ | 으로 하기 위해 버퍼에 쌓여 있던 센서에서 읽은 | ||
+ | 값들을 지운다. | ||
+ | 이 문자열(String)들은 피드를 파싱하기 위해 사용 | ||
+ | 카운터들을 0으로 초기화 | ||
+ | URL을 표현하는 객체 | ||
+ | 접속을 준비 함 | ||
+ | 이제 웹사이트에 접속 | ||
+ | this is a bit of virtual plumbing as we connect | ||
+ | the data coming from the connection to a buffered | ||
+ | reader that reads the data one line at a time. | ||
+ | 피드의 각 줄을 읽음 | ||
+ | 데이터를 분해 함 | ||
+ | 각 데이터 조각은 소문자가 된다 | ||
+ | " | ||
+ | love를 1 만큼 증가 | ||
+ | " | ||
+ | peace를 1 만큼 증가 | ||
+ | " | ||
+ | arduino를 1 만큼 증가 | ||
+ | 64를 우리가 처리할 수 있는 최대 값으로 설정 | ||
+ | 4를 곱함. 최대값은 255가 된다 | ||
+ | 이 값은 4 바이트(ARGB)로 만들어진 색 | ||
+ | 을 만들때 편리하다 | ||
+ | 오류가 있으면 스케치를 멈춤 | ||
+ | </ | ||
<code txt> | <code txt> | ||
예제 03A: Turn on LED when the button is pressed | 예제 03A: Turn on LED when the button is pressed |
코드_주석.1264684655.txt.gz · Last modified: 2013/08/03 05:04 (external edit)