回覆列表
  • 1 # 貝爾外道衝車

    不用中斷一樣的實現,而且可以有多少個按鍵就可以有多少種流水燈方式。

    你使用的鍵盤函式直接呼叫流水燈函式就可以。

    比如使用獨立鍵盤,if(P1.1==0) light_water(); 然後:void light_water(){ num=1; for(a=0;a<8;a++) { P1.1=num<<1; delay(1000); //延時; keyboard();//執行時又不停掃描鍵盤函式; }}這樣就會有一個LED從右往左移動8次;那麼當第一次流水未完時,又呼叫第二個流水函式light_water1就能中斷當前執行的流水函式又去執行第二個流水燈函式了。希望我的回答能幫助到你。

  • 2 # daazhu1

    這個很簡單,有兩種基本方法,

    1、STC12-40P微控制器有36個IO口,你把這些LED一一對應串聯個電阻接在每個IO 口上面就能寫程式碼控制,這個最基本的程式碼,很簡單,看看教程,一天就學會了;

    2、51微控制器用3-8譯碼器只要微控制器的12個IO口加上4片3-8譯碼器就能控制32個燈了;

    還有其他複雜的方法我就不說了,總之一片微控制器控制幾百個led都可以的。

  • 3 # 使用者3196995656495352

    51微控制器的IO口接按鍵,實現外部觸發(外部中斷,高低電平,上下降沿),觸發後再透過IO控制LED的開關即可。

  • 中秋節和大豐收的關聯?
  • 當蝸牛睡覺時你怎樣叫醒它?