• 您現在的位置是:首頁 >動態 > 2023-08-02 20:00:13 來源:

    at89c51最小系統圖(at89c51流水燈)

    導讀 大家好,我是小夏,我來為大家解答以上問題。at89c51最小系統圖,at89c51流水燈很多人還不知道,現在讓我們一起來看看吧!我給你個簡單的例...

    大家好,我是小夏,我來為大家解答以上問題。at89c51最小系統圖,at89c51流水燈很多人還不知道,現在讓我們一起來看看吧!

    我給你個簡單的例子:

    #include?<AT89X51.H>?//預處理文件里面定義了特殊寄存器的名稱如P1?口定義為P1

    void?main(void)

    {

    //定義花樣數據

    const?unsigned?char?design[32]={0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,

    0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,0xFF,

    0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x0,

    0xE7,0xDB,0xBD,0x7E,0xFF};

    unsigned?int?a;?//定義循環用的變量

    unsigned?char?b;?//在C51?編程中因內存有限盡可能注意變量類型的使用

    //盡可能使用少字節的類型,在大型的程序中很

    受用

    do{

    for?(b=0;?b<32;?b++)

    {

    for(a=0;?a<30000;?a++);?//延時一段時間

    P1?=?design[b];?//讀已定義的花樣數據并寫花樣數據到P1?口

    }

    }while(1);

    }

    程序中的花樣數據可以自以去定義,因這里我們的LED?要AT89C51?的P1?引腳為低電平才

    會點亮,所以我們要向P1?口的各引腳寫數據O?對應連接的LED?才會被點亮,P1?口的八個引

    腳剛好對應P1?口特殊寄存器的八個二進位,如向P1?口定數據0xFE,轉成二進制就是

    11111110,最低位D0?為0?這里P1.0?引腳輸出低電平,LED1?被點亮。如此類推,大家不難算

    出自己想要做的效果了。

    本文到此講解完畢了,希望對大家有幫助。

  • 成人app