UdonLibrary 1.0.0
機械システム研究部 C++ ライブラリ
読み取り中…
検索中…
一致する文字列を見つけられません
Led.hpp
[詳解]
1//
2// LED
3//
4// Copyright (c) 2022-2024 udonrobo
5//
6
7#pragma once
8
9#ifdef ARDUINO
10
11namespace Udon
12{
14 class Led
15 {
16 uint8_t pin;
17
18 public:
19 Led(uint8_t pin)
20 : pin(pin)
21 {
22 }
23
24 void begin() const
25 {
26 pinMode(pin, OUTPUT);
27 }
28
29 void high() const
30 {
31 digitalWrite(true);
32 }
33
34 void low() const
35 {
36 digitalWrite(false);
37 }
38
39 void digitalWrite(bool value) const
40 {
41 ::digitalWrite(pin, value ? HIGH : LOW);
42 }
43
44 void analogWrite(uint8_t value) const
45 {
46 ::analogWrite(pin, value);
47 }
48
52 void flush(uint32_t intervalMs = 500, uint32_t onTimeMs = 50) const
53 {
54 digitalWrite(millis() % intervalMs < onTimeMs);
55 }
56
59 void wave(uint32_t intervalMs = 500) const
60 {
61 analogWrite(abs(map(millis() % intervalMs, 0, intervalMs, 0, 510) - 255));
62 }
63 };
64} // namespace Udon
65
66#endif
Definition Bit.hpp:12