第五章 七段顯示器
利用七段顯示器來顯示 0-9 的數字
1. 動作說明︰
能控制一顆七段顯示器,在七段顯示器上依序顯示從 0 到 9 的數字,製作數字計數的效果。
2. 使用材料:略
3. 電路及接線圖:
專題板接線
說明:
1.板使用專題板 4 中 JP7 的接腳 a~g 及 JP8 的接腳 com4。
2. 將專題板 JP7 的接腳 a~g 接到主控板的接腳 2~8,專題板 JP8 的接腳 com4 接到主控板的 +5V 接腳。
4.程式碼
程式碼:
//定義變數
int a=2; //seg_a接到D2
int b=3; //seg_b接到D3
int c=4; //seg_c接到D4
int d=5; //seg_d接到D5
int e=6; //seg_e接到D6
int f=7; //seg_f接到D7
int g=8; //seg_g接到D8
int dp=9; //seg_dp接到D9
void setup() { //
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
pinMode(dp, OUTPUT);
digitalWrite(dp, 0); // 關閉小數點
}
//傳送0-9資料
void loop()
{
digitalWrite(a, 1); // 顯示 “0”
digitalWrite(b, 1);
digitalWrite(c, 1);
digitalWrite(d, 1);
digitalWrite(e, 1);
digitalWrite(f, 1);
digitalWrite(g,0);
delay(1000);
digitalWrite(a,0); // 顯示 “1”
digitalWrite(b, 1);
digitalWrite(c, 1);
digitalWrite(d, 0);
digitalWrite(e, 0);
digitalWrite(f, 0);
digitalWrite(g,0);
delay(1000);
digitalWrite(a,1); // 顯示 “2”
digitalWrite(b, 1);
digitalWrite(c, 0);
digitalWrite(d, 1);
digitalWrite(e, 1);
digitalWrite(f, 0);
digitalWrite(g,1);
delay(1000);
digitalWrite(a,1); // 顯示 “3”
digitalWrite(b, 1);
digitalWrite(c, 1);
digitalWrite(d, 1);
digitalWrite(e, 0);
digitalWrite(f, 0);
digitalWrite(g,1);
delay(1000);
digitalWrite(a,0); // 顯示 “4”
digitalWrite(b, 1);
digitalWrite(c, 1);
digitalWrite(d, 0);
digitalWrite(e, 0);
digitalWrite(f, 1);
digitalWrite(g,1);
delay(1000);
digitalWrite(a,1); // 顯示 “5”
digitalWrite(b, 0);
digitalWrite(c, 1);
digitalWrite(d, 1);
digitalWrite(e, 0);
digitalWrite(f, 1);
digitalWrite(g,1);
delay(1000);
digitalWrite(a,1); // 顯示 “6”
digitalWrite(b, 0);
digitalWrite(c, 1);
digitalWrite(d, 1);
digitalWrite(e, 1);
digitalWrite(f, 1);
digitalWrite(g,1);
delay(1000);
digitalWrite(a,1); // 顯示 “7”
digitalWrite(b, 1);
digitalWrite(c, 1);
digitalWrite(d, 0);
digitalWrite(e, 0);
digitalWrite(f, 0);
digitalWrite(g,0);
delay(1000);
digitalWrite(a,1); // 顯示 “8”
digitalWrite(b, 1);
digitalWrite(c, 1);
digitalWrite(d, 1);
digitalWrite(e, 1);
digitalWrite(f, 1);
digitalWrite(g,1);
delay(1000);
digitalWrite(a,1); // 顯示 “9”
digitalWrite(b, 1);
digitalWrite(c, 1);
digitalWrite(d, 1);
digitalWrite(e, 0);
digitalWrite(f, 1);
digitalWrite(g,1);
delay(1000);
}
5.延伸思考與應用
1.能使用陣列以及副程式技巧,進而簡化程式
2.能延續上單元-使用3顆按鈕來控制三顆LED做到基本IO控制
並加上七段顯示器之後分別於按下不同按鈕後==>顯示 F S b