2022年7月24日 星期日

3個7Segment的計數器

3個7Segment的計數器


接線:

1.請使用單一個 7-segment  的接線圖

2.新增兩個 7-segment,把 abcdefg 七條線並聯

3.重點--藍色線: arduino的pin 9,10,11 分別接到三顆七段顯示器的共陽(pin3),pin9接最左邊(最高位數)

工作原理:

一、抓出數字的百位數,十位數,個位數

    if(dig==0)   { x=cnt%10; }   // 個位數

    if(dig==1)   { x=(cnt/10)%10;}   // 十位數

    if(dig==2)   { x=cnt/100; }   // 百位數

二、三顆七段顯示器其實是個別顯示的,利用視覺暫留的原理,看起來是同時顯示的。

  for(int kk=0;kk<10;kk++)  <-------重複顯示10次
  {
    for(int dig=0;dig<3;dig++) 
    {
        ****設定哪一顆顯示器可使用(enable)****
        **** digitalWrite(11,HIGH); <----  HIGH 就是啟用
    
         for(int k=0;k<8;k++)    <----------送出資料,其實是同時送給三顆
         {      digitalWrite(seg7P[k],bitRead(segCode[x],k));           } 

          delay(10) ;  <----讓這一個數字顯示10ms
 
        } // for dig
     } //  for kk 持續一段時間  

   **** 每一組三位數數字實際顯示的時間是  10ms x 10 = 100ms

三、殘影---怎麼解決?


四、程式


沒有留言:

張貼留言