commands:reference:idown
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
| commands:reference:idown [2026/09/01 20:04] – 만듦 - 바깥 편집 127.0.0.1 | commands:reference:idown [2026/09/08 00:53] (현재) – 바깥 편집 127.0.0.1 | ||
|---|---|---|---|
| 줄 11: | 줄 11: | ||
| ^ 명령어 ^ 인수 ^ 반환값 ^ 동작 ^ | ^ 명령어 ^ 인수 ^ 반환값 ^ 동작 ^ | ||
| | '' | | '' | ||
| + | |||
| ===== 예제 ===== | ===== 예제 ===== | ||
| <code cpp> | <code cpp> | ||
| - | if (Idown(1, digitalRead(0))) { | + | const uint8_t COMMAND_INPUT = 0; |
| - | digitalWrite(32, LOW); | + | const uint8_t MOTOR_OUTPUT = 32; |
| + | |||
| + | void setup() { | ||
| + | Serial.begin(115200); | ||
| + | } | ||
| + | |||
| + | void loop() { | ||
| + | const bool input = IdigitalRead(COMMAND_INPUT, 5); // 입력을 여러 번 연속으로 읽고, 모든 값이 같을 때만 상태를 갱신합니다. HIGH와 LOW가 섞이면 이전 안정 상태를 유지합니다. | ||
| + | const bool started = Iup(0, input); // 입력이 OFF에서 ON으로 바뀌는 순간에만 true를 반환합니다. | ||
| + | const bool stopped = Idown(0, input); // 입력이 ON에서 OFF로 바뀌는 순간에만 true를 반환합니다. | ||
| + | static bool run = false; | ||
| + | Ialt(started, | ||
| + | |||
| + | digitalWrite(MOTOR_OUTPUT, run ? HIGH : LOW); | ||
| + | if (started) Serial.println(F(" | ||
| + | if (stopped) Serial.println(F(" | ||
| } | } | ||
| </ | </ | ||
| 줄 23: | 줄 39: | ||
| 서로 다른 신호에 같은 '' | 서로 다른 신호에 같은 '' | ||
| + | |||
| + | ===== 같은 카테고리의 내장 명령어 ===== | ||
| + | |||
| + | * [[commands: | ||
| [[commands: | [[commands: | ||
commands/reference/idown.1788260660.txt.gz · 마지막으로 수정됨: 저자 127.0.0.1
