新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機2408點陣時鐘電子制作

        單片機2408點陣時鐘電子制作

        作者: 時間:2016-11-25 來源:網絡 收藏
        這是一個鐘電子制作,用單片機直驅點陣,這里用的是STC89C52,驅動能力不是很好,有條件的話用STC12C5A60S,驅動能力已經比較好,屏的亮度會比較高。圖中是用STC89C52單片機,直驅三個8*8的共陽點陣屏,亮度還基本可以,白天看都很清楚!P0口需要接上1K的上拉電阻,P1-P3口分別接三個8*8屏的陰極,用去了單片機的全部32個I/O口。為了能調時間,P2口的P2.0-P2.6接屏的1-7列,P2.7口接一個按扭作于調時間,調整方法: 長按一次是進入調時狀態,短按是加1,長按二次是調分,短按是加1,長按3次回復正常狀態! 感興趣的愛好者可以動手實踐一下,體驗一下電子制作點陣時鐘的樂趣。

        本文引用地址:http://www.104case.com/article/201611/321448.htm



        //單片機點陣電子鐘C語言程序
        //MCU:STC89C52RD 晶振頻率:12MHZ
        //編寫:桃源客 日期:2010-06-7
        //電子小制作整理http://www.5imcu.net/轉載請保留。
        #include
        #include
        #define uchar unsigned char //宏定義
        #define uint unsigned int

        sbit KEY=P2^7; //時調整鍵
        uchar keymode; //鍵狀態
        uchar keydate; //鍵值,
        uint keycount; //鍵延時值
        unsigned char c=0; //時分調整位置變量,0不調,1時調時,2時調分
        bit D7,D6; //鍵值有效,長按標志,
        bit SHAN; //閃爍標志位
        uchar second,minute,hour; //定義秒、分、時寄存器
        //以下字模與ASCII對應是,只要將 A-0x20就可以得到A的字模了
        //高8*5寬 ASCII碼
        //采用"字模提取軟件V2.2"
        //提取方式:縱向取模,字節倒序
        uchar code ASCII86[10][5]=
        {
        {0x3E,0x41,0x49,0x41,0x3E},//0
        {0x00,0x42,0x7F,0x40,0x00},//1
        {0x72,0x49,0x49,0x49,0x46},//2
        {0x21,0x41,0x49,0x4D,0x32},//3
        {0x18,0x14,0x12,0x7F,0x10},//4
        {0x27,0x45,0x45,0x45,0x38},//5
        {0x3C,0x4A,0x49,0x49,0x31},//6
        {0x41,0x21,0x11,0x09,0x07},//7
        {0x36,0x49,0x49,0x49,0x36},//8
        {0x46,0x49,0x49,0x29,0x16},//9
        };
        uchar code seg[24][3]=
        {
        {0xfe,0xff,0xff},
        {0xfd,0xff,0xff},
        {0xfb,0xff,0xff},
        {0xf7,0xff,0xff},
        {0xef,0xff,0xff},
        {0xdf,0xff,0xff},
        {0xbf,0xff,0xff},
        {0x7f,0xff,0xff},
        {0xff,0xfe,0xff},
        {0xff,0xfd,0xff},
        {0xff,0xfb,0xff},
        {0xff,0xf7,0xff},
        {0xff,0xef,0xff},
        {0xff,0xdf,0xff},
        {0xff,0xbf,0xff},
        {0xff,0x7f,0xff},
        {0xff,0xff,0xfe},
        {0xff,0xff,0xfd},
        {0xff,0xff,0xfb},
        {0xff,0xff,0xf7},
        {0xff,0xff,0xef},
        {0xff,0xff,0xdf},
        {0xff,0xff,0xbf},
        {0xff,0xff,0x7f}
        }; //P1,P3,P2掃描列選碼
        uchar disbuf[]={0,0,0,0,0,0};//定義緩沖數組區
        void delay(uchar t); //延時函數
        void init(); //初始化函數
        void display(); //顯示函數


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 景宁| 华宁县| 阳谷县| 佛坪县| 湟源县| 遵义县| 永州市| 新绛县| 康定县| 封丘县| 洱源县| 建宁县| 蓬溪县| 土默特右旗| 多伦县| 武定县| 黄陵县| 临海市| 桂阳县| 田林县| 麦盖提县| 呼和浩特市| 同德县| 隆化县| 石家庄市| 邵东县| 渑池县| 安仁县| 汉川市| 新龙县| 宁阳县| 安岳县| 自治县| 江安县| 永定县| 朔州市| 河东区| 孟州市| 平定县| 光泽县| 金川县|