「Arduino Mega 2560 LESSON:25 シリアルモニタ」の版間の差分
編集の要約なし |
編集の要約なし |
||
| 137行目: | 137行目: | ||
} | } | ||
</code></pre></div><script></freescript> | </code></pre></div><script></freescript> | ||
[[ファイル:Mega2560 L25 01 シリアルモニタ.png|380px||none|シリアルモニタ]] | |||
赤枠のところに入力してEnterを押したら「char ch = Serial.read();」みたいな命令で読み取れるよっていう感じのことだけ。 | |||
[[Arduino Mega 2560]]に戻る。 | [[Arduino Mega 2560]]に戻る。 | ||
2026年11月6日 (金) 16:51時点における最新版
概要
74HC595 と8個の LEDを接続するレッスンの続きです。
完成図は以下のとおりです。
PCB図は以下のようなものです。
3Dプレビュー図は以下のようなものです。
コードは以下のようなものです。
//www.elegoo.com
//2017.12.9
int latchPin = 11;
int clockPin = 9;
int dataPin = 12;
byte leds = 0;
void updateShiftRegister()
{
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clockPin, LSBFIRST, leds);
digitalWrite(latchPin, HIGH);
}
void setup()
{
pinMode(latchPin, OUTPUT);
pinMode(dataPin, OUTPUT);
pinMode(clockPin, OUTPUT);
updateShiftRegister();
Serial.begin(9600);
while (! Serial); // Wait untilSerial is ready - Leonardo
Serial.println("Enter LED Number 0 to 7 or 'x' to clear");
}
void loop()
{
if (Serial.available())
{
char ch = Serial.read();
if (ch >= '0' && ch <= '7')
{
int led = ch - '0';
bitSet(leds, led);
updateShiftRegister();
Serial.print("Turned on LED ");
Serial.println(led);
}
if (ch == 'x')
{
leds = 0;
updateShiftRegister();
Serial.println("Cleared");
}
}
}
赤枠のところに入力してEnterを押したら「char ch = Serial.read();」みたいな命令で読み取れるよっていう感じのことだけ。