新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機學習之4-數碼管

        51單片機學習之4-數碼管

        作者: 時間:2016-11-30 來源:網絡 收藏




        上圖是六位共陰型數碼管搭配兩片74HC573芯片的電路圖。L2是控制數碼管的a、b、c、d、e、f、g、dp,L3是選擇要顯示的數碼管。
        下圖是74HC573芯片接在單片機上的10個IO口。(完美詮釋74HC573的實用性,哈哈~)



        下圖是編碼列表



        利用數碼管顯示秒表程序源碼:

        /*****************************************

        *說明:動態顯示方式控制數碼管。秒表源碼

        *設計者:L、QQ:1007566569

        *開發板:DB-51Ver2.1

        *數碼管:六位共陰型

        ******************************************/

        #include

        #include

        #defineuintunsignedint

        #defineucharunsignedchar

        sbitdual=P2^6;//控制L2的74HC573芯片是否鎖存

        sbitweal=P2^7;//控制L3的74HC573芯片是否鎖存

        ucharaa;

        //數碼管顯示數字的編碼table[0]就是顯示0

        ucharcodetable[]={

        0x3f,0x06,0x5b,0x4f,

        0x66,0x6d,0x7d,0x07,

        0x7f,0x6f,0x77,0x7c,

        0x39,0x5e,0x79,0x71};

        //要顯示指定數字的數碼管

        ucharcodetablewe[]={

        0xfe,0xfd,0xfb,0xf7,0xef,0xdf};

        #defineTime50000

        #defineYsTime1

        voidShowTime(ucharbai,ucharshi,ucharge);

        voiddelay(uintz);

        /********主函數********/

        voidmain()

        {

        ucharb,s,g;

        TMOD=0x01;//選擇定時器工作方式1

        TH0=(65536-Time)/256;//(65536-(50000/(12*(1/12))))/256;

        TL0=(65536-Time)%256;//(65536-(50000/(12*(1/12))))%256;

        EA=1;//開啟總中斷

        ET0=1;//開啟定時器0中斷

        TR0=1;//啟動定時器0



        關鍵詞: 51單片機數碼

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 定南县| 阿坝县| 桃江县| 濉溪县| 互助| 汝城县| 银川市| 渭南市| 垦利县| 新丰县| 马尔康县| 湟中县| 天柱县| 柯坪县| 司法| 涞水县| 瓦房店市| 凤台县| 玉屏| 元谋县| 陆川县| 义乌市| 平定县| 九江市| 嘉义县| 蕲春县| 博客| 开封市| 仲巴县| 新昌县| 青川县| 黑龙江省| 惠东县| 维西| 永嘉县| 蓬莱市| 施甸县| 乌鲁木齐县| 揭阳市| 邛崃市| 榆林市|