2023年5月9日 星期二

 //定義變數 

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 

int i=0;

//使用陣列指令將0-9編碼存在陣列內

byte  seven_seg[10][7] = { { 1,1,1,1,1,1,0 },  // = 0

                           { 0,1,1,0,0,0,0 },  // = 1

                           { 1,1,0,1,1,0,1 },  // = 2

                            { 1,1,1,1,0,0,1 },  // = 3

                            { 0,1,1,0,0,1,1 },  // = 4

                            { 1,0,1,1,0,1,1 },  // = 5

                            { 1,0,1,1,1,1,1 },  // = 6

                            { 1,1,1,0,0,0,0 },  // = 7

                            { 1,1,1,1,1,1,1 },  // = 8

                            { 1,1,1,1,0,1,1 }   // = 9

                              };

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);            // 關閉小數點 

void loop() {

  for (i= 0; i <10; ++i) {

    CodeWrite(i); 

 

  }

 // 暫停 2 秒鐘

 delay(2000);

}

void CodeWrite(byte i) {

  digitalWrite(a,seven_seg[i][0]);       

  digitalWrite(b,seven_seg[i][1]);   

  digitalWrite(c,seven_seg[i][2]);  

  digitalWrite(d,seven_seg[i][3]); 

  digitalWrite(e,seven_seg[i][4]); 

  digitalWrite(f,seven_seg[i][5]);   

  digitalWrite(g,seven_seg[i][6]);  

  digitalWrite(dp,seven_seg[i][7]);

  delay(200);

  digitalWrite(a, 0);       

  digitalWrite(b, 0);   

  digitalWrite(c, 0);  

  digitalWrite(d, 0); 

  digitalWrite(e, 0); 

  digitalWrite(f, 0);   

  digitalWrite(g, 0);  

  digitalWrite(dp,0);

  delay(200);

  

}



沒有留言:

張貼留言