2021年7月11日 星期日

先千位元7seg順時針繞

 int seg7[] = {2, 3, 4, 5, 6, 7, 8};

char com3[]={  0xFE,0xFD,0xFB,0xF7,0xEF,0xDF };


int com[] = {9,10,11,12};

int i, j;


//-----------------------------------------------------------------------------

void setup()

{

  for (i = 0; i < 8; i++)

  {

    pinMode(seg7[i], OUTPUT);//資料端

  }

  for (i = 0; i < 4; i++)

  {

    pinMode(com[i], OUTPUT);//掃瞄端

  }

}

void tx(byte data)

{

   for (int j=0; j<7; j++) {

    if (data % 2==1)  // 取出 data 的最低位元

      digitalWrite(seg7[j], LOW);  

    else

      digitalWrite(seg7[j], HIGH);   

    data=data/2;  // 除2,進行下一位元的處理

  } 

}

//-----------------------------------------------------------------------------

void loop()

{

int b;

    digitalWrite(12,HIGH);

    for (b = 0; b < 6; b++) //千位數 com3 

    {

      tx(com3[b]);delay(500);

    }

}

沒有留言:

張貼留言

algorithm

 #include <iostream> #include <string.h> using namespace std; int main(int argc, char** argv)  { for(int j=2;j<=100;j++)//j...