7. ブレッドボードで電子工作
基板の上のブレッドボードに LED と抵抗を 1 つずつ挿して、プログラムから点滅させます。
ブレッドボードと J1
ブレッドボードの穴は、縦に 5 つずつ 中でつながっています(溝の上の a〜e、下の f〜j)。 同じ列の 5 つの穴のどこに挿しても、つながり方は同じです。
ブレッドボードの右にある J1 から、電源と GPIO を取ります。 GPIO は、プログラムから電圧を出したり(出力)、電圧を読んだり(入力)できるマイコンのピンです。
| J1 の印刷 | 意味 |
|---|---|
02 03 08 … 27 | GPIO の番号。プログラムでは GPIO.new(2, ...) のように使います |
G | GND(0V) |
3V3 | 3.3V |
5V | 5V(GPIO にはつながないでください) |
コンソールのシミュレータでも、ブレッドボードを押して拡大すると、部品を挿せます。 回路の電流を実際に計算しているので、抵抗を入れ忘れると警告が出ます。
LED を点滅させる
rb
▶ コンソールで開く# チュートリアル 7: ブレッドボードの LED を点滅させる。下の配線のとおりに挿す(シミュレータは読み込むとこの配線になる)。
# 配線:
# wire J1-5 a13 J1 の 02(GPIO2)から a13 へジャンパ線
# resistor b13 b9 抵抗 1kΩ
# led c9 g10 青 LED。長い足(+)を c9、短い足(−)を溝の向こうの g10
# wire h10 J1-3 h10 から J1 の G(GND)へジャンパ線
led = GPIO.new(2, GPIO::OUT) # GPIO2 を出力にする
while true
led.write(1) # 3.3V を出す → 光る
sleep_ms 500
led.write(0) # 0V にする → 消える
sleep_ms 500
endつなぎ方
コードの先頭の「配線:」のとおりに挿します。
- J1 の
02(GPIO2)から、ジャンパ線で a13 へつなぎます - 抵抗(1kΩ)を b13 と b9 に挿します
- 青 LED の 長い足(+)を c9、短い足(−)を溝の向こうの g10 に挿します
- h10 から、ジャンパ線で J1 の
Gへつなぎます
電気は GPIO2 → 抵抗 → LED → GND と流れます。LED は向きがあるので、逆に挿すと光りません。 抵抗は、LED に流れる電気を小さくして、LED と GPIO を守ります。
シミュレータで配線する
上のコードの「▶ コンソールで開く」から開くと、この配線が自動で挿さります。 自分で挿すときは、ブレッドボードの下の「▸ 配線を文字で見る・貼り付ける」に次を貼り付けて「この配線にする」を押します。
text
wire J1-5 a13
resistor b13 b9
led c9 g10
wire h10 J1-3プログラム
ruby
led = GPIO.new(2, GPIO::OUT) # GPIO2 を出力にする
led.write(1) # 3.3V を出す
led.write(0) # 0V にするやってみよう
- 点滅の速さを変えてみましょう
- 基板の A ボタンを押しているあいだだけ LED が点くようにしてみましょう(チュートリアル 4 の
pressed?)
気をつけること
- LED には必ず抵抗を入れてください。GPIO に直接つなぐと、大きな電気が流れます
- 3V3 や 5V を、G(GND)と直接つながないでください
- GPIO に 5V をつながないでください