commands:reference:idown
Idown()
명령어
| 명령어 | 인수 | 반환값 | 동작 |
|---|---|---|---|
Idown(id, input) | uint8_t idbool input | bool | 입력이 ON에서 OFF로 바뀌는 순간에만 true를 반환합니다. |
예제
const uint8_t COMMAND_INPUT = 0; 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, run); // 입력 상승 순간마다 지정한 상태를 ON·OFF로 반전합니다. digitalWrite(MOTOR_OUTPUT, run ? HIGH : LOW); if (started) Serial.println(F("motor started")); if (stopped) Serial.println(F("command released")); }
주의사항
서로 다른 신호에 같은 id를 사용하면 이전 상태가 섞일 수 있습니다. Iscale 입력 범위의 최솟값과 최댓값을 같게 지정하지 마십시오.
같은 카테고리의 내장 명령어
commands/reference/idown.txt · 마지막으로 수정됨: 저자 127.0.0.1
