新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 用單片機做的電子時鐘

        用單片機做的電子時鐘

        作者: 時間:2016-11-29 來源:網絡 收藏
        團隊的第一個小項目就是用單片機做個電子時鐘,因為自己的單片機被自己焊接的不夠嚴謹,導致部分地方短路了,所以便換成用仿真軟件(protuce)來做電子時鐘。經過兩天的奮斗,終于把這個電子時鐘寫好了,雖然很簡單,但收獲很大,在制作的過程中,遇到了很多問題,但。也收獲了很多!


        電路圖如下:


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

        程序用C代碼寫的:
        #include
        #define uint unsigned int
        #define uchar unsigned char
        char code dula[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};
        //char code wela[]={0xfe,0xdf,0xbf,0x7f,0xfe,0xfd,0xfb,0x07};
        char data huan_[]={0x00,0x00,0x0a,0x00,0x00,0x0a,0x00,0x00};
        void delay(uint t) ;
        void display(void);
        static char counter=0x00;
        static char miao=0x00;
        static char fen=0x00;
        static char shi=0x00;
        char temp;
        void delay(uint t)
        {
        while(t--);
        }
        void display(void)
        {
        uint k;
        for(k=0;k<8;k++)
        {
        P0=dula[huan_[k]];
        temp=1;
        temp=temp<P3=~temp;
        delay(500);
        P3=0xff;
        }
        }
        void main()
        {
        TMOD=0x01;
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        EA=1;
        ET0=1;
        TR0=1;
        while(1)
        {
        display();
        }
        }
        void init_time0(void) interrupt 1
        {
        //TMOD=0x01;
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        // EA=1;
        // ET0=1;
        //TR0=1;
        counter++;
        if(counter==20)
        {
        counter=0;miao++;
        if(miao==60)
        {
        miao=0;fen++;
        if(fen==60)
        {
        fen=0;shi++;
        if(shi==24)
        {
        shi=0;
        }
        }
        }
        huan_[1]=miao/10;huan_[0]=miao%10;
        huan_[4]=fen/10;huan_[3]=fen%10;
        huan_[7]=shi/10;huan_[6]=shi%10;
        }
        }


        總體感覺這個電子時鐘其實就是一個C,自己開始的思路一直打不開,后來在http://www.51hei.com/上找了了些別人寫的,慢慢的有了思路,但也別人的思路給固定住了。于是便有了開始那一大段,繁雜而沉重的代碼,并且開始程序老亂跑,答不到理想值。
        后來在陳老師的指導下,靜下心,慢慢的理清思路所有的問題都慢慢的好解決了!
        經驗總結:
        1.按 著需求一步一步的去寫,去設計不要急。
        2 注意細節的處理
        3還是要多動手。



        關鍵詞: 單片機電子時

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 洛宁县| 巧家县| 凤城市| 远安县| 土默特右旗| 策勒县| 海宁市| 临洮县| 化州市| 盈江县| 萨嘎县| 策勒县| 昭觉县| 浪卡子县| 营山县| 锦屏县| 遂溪县| 阳曲县| 灵台县| 桃源县| 屏东市| 沅陵县| 逊克县| 玛曲县| 三门县| 弥勒县| 牙克石市| 丹凤县| 滕州市| 渝中区| 武川县| 定远县| 黄梅县| 永川市| 丹寨县| 临夏县| 融水| 克拉玛依市| 定襄县| 满洲里市| 孙吴县|