Arduino勉強会/09-7セグメントLEDを使ってみる
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
[[Arduino勉強会]]
#contents
2014/12/21からのアクセス回数 &counter;
** ブレッドボードを組み立てる [#k566373a]
7セグメントLEDをつないでみましょう。
必要な部品は、以下の通りです。
- Arduino Pro Mini
- 7セグメントLED(C-551SR)
- トランジスター(2SC1815)
- 抵抗(4.7KΩ)
部品が揃ったら、以下の様につないで下さい。
&ref(7SegmentLED_brd.png);
*** 7セグメントのピン配置 [#b08ecb87]
7セグメントのピンの配置
((CQ出版のhttp://www.cqpub.co.jp/hanbai/books/37/37271/37...
は、以下の様になっています。
&ref(C-551SR_pin.png);
C-551SRは、以下の様にカソードを共通とするタイプです。
&ref(C551X.png);
*** 2SC1815のピン配置 [#l5f1d8b7]
トランジスターは、7セグメントLEDをArduinoで駆動するための...
出力タイミングを制御するために使用します。
使用するトランジスターはよく使われる2SC1815です。
2SC1815のデータシートで、ピンの設定を確認します。下の図は...
&ref(2SC1815_pin.png);
セレクターとベース間の抵抗は、7セグメントLEDの各LEDに10mA...
$$
ベース電流 = \frac{5V - 0.6V}{4.7KΩ} = 0.9mA
$$
これから増幅率hf = 100として、以下の関係から90mAと十分な...
$$
コレクター電流 = ベース電流*hf = 0.9 \times 100 = 90mA
$$
** スケッチで動作確認 [#mc106f2d]
できたブレッドボードの回路を以下のスケッチで動かしてみま...
#pre{{
int a = 11;
int b = 10;
int c = 8;
int d = 7;
int e = 6;
int f = 5;
int g = 4;
int leds[] = { a, b, c, d, e, f, g};
int sel = 12;
int ptrn[][7] = {
{1,1,1,1,1,1,0},
{0,1,1,0,0,0,0},
{1,1,0,1,1,0,1},
{1,1,1,1,0,0,1},
{0,1,1,0,0,1,1},
{1,0,1,1,0,1,1},
{1,0,1,1,1,1,1},
{1,1,1,0,0,0,0},
{1,1,1,1,1,1,1},
{1,1,1,0,0,1,1},
{1,1,1,0,1,1,1},
{0,0,1,1,1,1,1},
{1,0,0,1,1,1,0},
{0,1,1,1,1,0,1},
{1,0,0,1,1,1,1},
{1,0,0,0,1,1,1},
{0,0,0,0,0,0,0}
};
void setup() {
pinMode(sel, OUTPUT);
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
digitalWrite(sel, HIGH);
}
void loop() {
for (int i = 0; i < 17; i++) {
for (int j = 0; j < 7; j++) {
digitalWrite(leds[j], ptrn[i][j]);
}
delay(1000);
}
}
}}
上手くできていたら、以下の様に0〜Fと全て消灯を1秒間隔で...
&ref(7SegementLED_setting.png);
** コメント [#rdef8629]
#vote(おもしろかった[3],そうでもない[1],わかりずらい[1])
皆様のご意見、ご希望をお待ちしております。勉強会で分から...
スパム防止に画像の文字列も入力してください。
#comment_kcaptcha
終了行:
[[Arduino勉強会]]
#contents
2014/12/21からのアクセス回数 &counter;
** ブレッドボードを組み立てる [#k566373a]
7セグメントLEDをつないでみましょう。
必要な部品は、以下の通りです。
- Arduino Pro Mini
- 7セグメントLED(C-551SR)
- トランジスター(2SC1815)
- 抵抗(4.7KΩ)
部品が揃ったら、以下の様につないで下さい。
&ref(7SegmentLED_brd.png);
*** 7セグメントのピン配置 [#b08ecb87]
7セグメントのピンの配置
((CQ出版のhttp://www.cqpub.co.jp/hanbai/books/37/37271/37...
は、以下の様になっています。
&ref(C-551SR_pin.png);
C-551SRは、以下の様にカソードを共通とするタイプです。
&ref(C551X.png);
*** 2SC1815のピン配置 [#l5f1d8b7]
トランジスターは、7セグメントLEDをArduinoで駆動するための...
出力タイミングを制御するために使用します。
使用するトランジスターはよく使われる2SC1815です。
2SC1815のデータシートで、ピンの設定を確認します。下の図は...
&ref(2SC1815_pin.png);
セレクターとベース間の抵抗は、7セグメントLEDの各LEDに10mA...
$$
ベース電流 = \frac{5V - 0.6V}{4.7KΩ} = 0.9mA
$$
これから増幅率hf = 100として、以下の関係から90mAと十分な...
$$
コレクター電流 = ベース電流*hf = 0.9 \times 100 = 90mA
$$
** スケッチで動作確認 [#mc106f2d]
できたブレッドボードの回路を以下のスケッチで動かしてみま...
#pre{{
int a = 11;
int b = 10;
int c = 8;
int d = 7;
int e = 6;
int f = 5;
int g = 4;
int leds[] = { a, b, c, d, e, f, g};
int sel = 12;
int ptrn[][7] = {
{1,1,1,1,1,1,0},
{0,1,1,0,0,0,0},
{1,1,0,1,1,0,1},
{1,1,1,1,0,0,1},
{0,1,1,0,0,1,1},
{1,0,1,1,0,1,1},
{1,0,1,1,1,1,1},
{1,1,1,0,0,0,0},
{1,1,1,1,1,1,1},
{1,1,1,0,0,1,1},
{1,1,1,0,1,1,1},
{0,0,1,1,1,1,1},
{1,0,0,1,1,1,0},
{0,1,1,1,1,0,1},
{1,0,0,1,1,1,1},
{1,0,0,0,1,1,1},
{0,0,0,0,0,0,0}
};
void setup() {
pinMode(sel, OUTPUT);
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
digitalWrite(sel, HIGH);
}
void loop() {
for (int i = 0; i < 17; i++) {
for (int j = 0; j < 7; j++) {
digitalWrite(leds[j], ptrn[i][j]);
}
delay(1000);
}
}
}}
上手くできていたら、以下の様に0〜Fと全て消灯を1秒間隔で...
&ref(7SegementLED_setting.png);
** コメント [#rdef8629]
#vote(おもしろかった[3],そうでもない[1],わかりずらい[1])
皆様のご意見、ご希望をお待ちしております。勉強会で分から...
スパム防止に画像の文字列も入力してください。
#comment_kcaptcha
ページ名:
SmartDoc