久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10427|回復: 21
打印 上一主題 下一主題
收起左側

51單片機128×64液晶顯示多功能萬年歷程序資料

  [復制鏈接]
跳轉到指定樓層
樓主
51單片機128×64液晶顯示多功能萬年歷采用12864液晶屏顯示,DS18B20采集溫度,DS1302芯片實時記錄時間(單片斷電仍可以正常計時),按鍵調整溫度及陽歷農歷的切換,蜂鳴器整點報時。51單片機128×64液晶顯示多功能萬年歷供電可以用干電池或USB,任意切換。51單片機128×64液晶顯示多功能萬年歷128×64液晶屏顯示的內容有:
     陽歷:年份,生肖,日期,時間,星期,溫度,國際節日。
     陰歷:天干地支,陰歷日期,時間,星期,溫度。
     需要51單片機128×64液晶顯示多功能萬年歷程序資料的可以自己下載附件。


結構簡單的單片機控制8×16點陣時鐘.zip (707.76 KB, 下載次數: 243)



評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的積分獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏7 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:1 發表于 2014-12-12 23:30 | 只看該作者
下面是源碼:
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int

uchar fen,shi,miao,miao1,fen1,fen2,shi1,shi2,count,tt;

uchar code  mm[]={0x14,0x00,};//秒點數組

uchar code  TAB[]=
{
0x7F,0x41,0x7F,0x00,//0
0x42,0x7F,0x40,0x00,//1
0x79,0x49,0x4F,0x00,//2
0x49,0x49,0x7F,0x00,//3
0x0F,0x08,0x7F,0x00,//4
0x4F,0x49,0x79,0x00,//5
0x7F,0x49,0x79,0x00,//6
0x01,0x01,0x7F,0x00,//7
0x7F,0x49,0x7F,0x00,//8
0x4F,0x49,0x7F,0x00,//9
};//數字組

uchar code lie[]=
{
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,
}; //列掃描

uchar code  TAB2[]={
/*--  空白區 --*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

/*--  文字:  李  --*/
/*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
0x00,0x80,0x00,0x80,0x3F,0xFE,0x01,0xC0,0x02,0xA0,0x0C,0x90,0x70,0x8C,0x27,0xFB,
0x01,0x00,0x00,0x80,0x7F,0xFE,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xA0,0x00,0x40,

/*--  文字:  斯  --*/
/*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
0x30,0x44,0x0E,0x44,0x02,0xFF,0x02,0x44,0x02,0x7C,0x7E,0x44,0x12,0x44,0x12,0x7C,
0x12,0x44,0x12,0x44,0x12,0xFF,0x12,0x00,0x11,0x24,0x11,0x46,0x10,0xC1,0x10,0x00,

/*--  文字:  羽  --*/
/*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
0x00,0x00,0x3F,0x7E,0x20,0x40,0x20,0x40,0x22,0x44,0x24,0x48,0x24,0x48,0x20,0x60,
0x28,0x50,0x24,0x48,0x23,0x46,0x20,0x40,0x20,0x40,0x20,0x40,0x28,0x50,0x10,0x20,

/*--  文字:  小  --*/
/*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x02,0x90,0x04,0xB0,0x08,0x98,0x18,0x88,
0x30,0x84,0x60,0x82,0x20,0x81,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xA0,0x00,0x40,

/*--  文字:  寶  --*/
/*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
0x00,0x40,0x00,0x80,0x7F,0xFE,0x20,0x02,0x10,0x01,0x1F,0xFC,0x00,0x80,0x00,0x80,
0x00,0x80,0x1F,0xF8,0x02,0x80,0x04,0x80,0x0C,0x80,0x04,0x80,0x7F,0xFE,0x00,0x00,

/*--  文字:  貝  --*/
/*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
0x00,0x00,0x0F,0xF8,0x08,0x08,0x08,0x08,0x08,0x88,0x08,0x88,0x08,0x88,0x08,0x88,
0x08,0x88,0x08,0x88,0x08,0x88,0x01,0x40,0x06,0x20,0x18,0x18,0x10,0x06,0x00,0x00,

/*--  文字:  我  --*/
/*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
0x02,0x60,0x0A,0x1C,0x12,0x10,0x12,0x10,0x02,0x10,0x7F,0xFF,0x02,0x10,0x12,0x10,
0x14,0x70,0x0C,0x1C,0x04,0x13,0x0A,0x10,0x49,0x90,0x50,0x10,0x60,0x14,0x40,0x08,

/*--  文字:  愛  --*/
/*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
0x1F,0x00,0x09,0xFC,0x08,0x48,0x04,0x90,0x7F,0xFC,0x40,0x44,0x00,0x42,0x3F,0xFC,
0x00,0x20,0x0F,0xE0,0x04,0x30,0x02,0xD0,0x03,0x08,0x0C,0xC6,0x70,0x31,0x20,0x0C,

/*--  文字:  你  --*/
/*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
0x00,0x90,0x01,0x90,0x20,0x88,0x7F,0xC8,0x20,0x44,0x12,0x2C,0x02,0x16,0x0A,0x45,
0x12,0xC4,0x12,0x44,0x22,0x24,0x62,0x24,0x22,0x14,0x02,0x84,0x01,0x04,0x00,0x00,



/*--  空白區 --*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};

uchar code  lie2[]={
0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,
};

/******************
    延時程序
*****************/
void delay(uint k)
{
        uint i,j;
        for(i=k;i>0;i--)
                for(j=110;j>0;j--);
}

/******************
    顯示程序
*****************/
void disp8_1(uchar m)  
{
        uint e;
        for(e=0;e<4;e++)
        {
                P0=lie[e];
                P1=lie[e+8];
                P2=TAB[m*4+e];
                delay(1);
                P2=0x00;  //消影
        }
}

void disp8_2(uchar n)
{
        uint f;
        for(f=0;f<4;f++)
        {
                P0=lie[f+4];
                P1=lie[f+8+4];
                P2=TAB[n*4+f];
                delay(1);
                P2=0x00;  //消影  
        }
       
}


void disp8_3(uchar o)
{
        uint g;
        for(g=0;g<4;g++)
        {
                P0=lie[g+9];
                P1=lie[g+8+9];
                P2=TAB[o*4+g];
                delay(1);
                P2=0x00;  //消影  
        }
}

void disp8_4(uchar p)
{
        uint h;
        for(h=0;h<4;h++)
        {
                P0=lie[h+13];
                P1=lie[h+8+13];
                P2=TAB[p*4+h];
                delay(1);
                P2=0x00;  //消影  
        }
       
}

void disp8_5(uchar q)
{
        uint h;
        for(h=0;h<2;h++)
        {
                P0=lie[h+7];
                P1=lie[h+7+8];
                P2=mm[q]; //秒點
                delay(1);
                P2=0x00;  //消影  
        }
       
}

void disp_wz()
{
        uint a,b,c;
    P2=0x01;
        for(a=0;a<152;a++) //掃描全幅
        {
                for(b=0;b<8;b++)  //移動速度
                {
                        for(c=0;c<8;c++)  //掃描1幀
                                {
                                        P2=lie2[c];
                                        P1=~TAB2[2*c+2*a];
                                        P0=~TAB2[2*c+1+2*a];
                                        delay(1);
                                        P1=0xff;  //消影
                                        P0=0xff;  //消影
                                }
                }
        }
        tt=0;//開始顯示時鐘        
}

/******************
    初始化程序
*****************/
inti()
{
        tt=0;

        shi=1;
        fen=3;
        miao=0;
        miao1=0;
       
        shi1=shi/10;//分離時
        shi2=shi%10;
        fen1=fen/10;//分離分  
        fen2=fen%10;
       
        P1=0xff;
        TMOD=0x01;
        TH0=(65536-45872)/256;
        TL0=(65536-45872)%256;
        EA=1;
        ET0=1;
        TR0=1;
}

/******************
     主程序
*****************/
void main()
{
        inti();
        while(1)
        {
                if(tt<=20)
                        {
                                disp8_1(shi2);//顯示小時
                                disp8_2(shi1);//顯示小時
                                disp8_3(fen2);//顯示分鐘  
                                disp8_4(fen1);//顯示分鐘
                                disp8_5(miao);//秒點顯示
                        }
                else
                        {
                                disp_wz();
                        }
        }
}

/******************
     中斷程序
*****************/
void timer0() interrupt 1
{       
        shi1=shi%10;//分離時
        shi2=shi/10;
        fen1=fen%10;//分離分
        fen2=fen/10;

        TH0=(65536-45872)/256;
        TL0=(65536-45872)%256;
        count++;       
        if(count==10)
        {
                count=0;
                tt++;
                miao++;
                miao1++;
                if(miao==2){miao=0;}
                if(miao1==120)
                {
                        miao1=0;
                        fen++;
                        if(fen==60)
                        {
                        fen=0;
                        shi++;
                        if(shi==24){shi=0;}
                        }
                               
                }
        }
}
回復

使用道具 舉報

板凳
ID:72179 發表于 2015-1-14 00:05 | 只看該作者
頂頂頂
回復

使用道具 舉報

地板
ID:72179 發表于 2015-1-14 00:05 | 只看該作者
謝謝分享
回復

使用道具 舉報

5#
ID:65707 發表于 2015-1-14 05:21 | 只看該作者
看起來不錯,就是資料不全啊
回復

使用道具 舉報

6#
ID:70954 發表于 2015-1-14 13:56 | 只看該作者
積分少,資料不全不敢下載,以免浪費了
回復

使用道具 舉報

7#
ID:72611 發表于 2015-1-23 15:32 | 只看該作者
看起來不錯
回復

使用道具 舉報

8#
ID:72611 發表于 2015-4-4 22:38 | 只看該作者
能顯示大數字就好了
回復

使用道具 舉報

9#
ID:76142 發表于 2015-4-4 23:09 | 只看該作者
受教了  學習到了
回復

使用道具 舉報

10#
ID:77965 發表于 2015-4-24 21:21 | 只看該作者
學習學習
回復

使用道具 舉報

11#
ID:77945 發表于 2015-4-28 20:43 | 只看該作者
先看看
回復

使用道具 舉報

12#
ID:75107 發表于 2015-5-3 19:00 | 只看該作者
不錯不錯,學習。。。。。。。。。。。。。。。。。。。
回復

使用道具 舉報

13#
ID:77698 發表于 2015-5-25 22:12 | 只看該作者
12864是不帶字庫的嗎
回復

使用道具 舉報

14#
ID:76480 發表于 2015-5-29 08:29 | 只看該作者
感謝樓主的無私分享。

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 贊一個!

查看全部評分

回復

使用道具 舉報

15#
ID:93176 發表于 2016-2-24 13:43 | 只看該作者
熱轉印線路板做完像篩子,有辦法解決嗎?
回復

使用道具 舉報

16#
ID:120822 發表于 2016-5-14 20:45 | 只看該作者
怎樣才能下載資料
回復

使用道具 舉報

17#
ID:111182 發表于 2016-5-18 15:43 | 只看該作者
真逗  附件跟你描述的一樣嗎? 管理也不關一下
回復

使用道具 舉報

18#
ID:138770 發表于 2016-12-11 15:57 | 只看該作者
謝謝@!資料不是很全
回復

使用道具 舉報

19#
ID:138770 發表于 2016-12-11 15:58 | 只看該作者
感謝樓主的無私分享。
回復

使用道具 舉報

20#
ID:153935 發表于 2016-12-11 17:52 | 只看該作者
真漂亮,PCB做的也好
回復

使用道具 舉報

21#
ID:258032 發表于 2017-12-7 21:28 | 只看該作者
這根本不配套吧,感覺,圖和下載的文件感覺不是一個呢,明顯不對
回復

使用道具 舉報

22#
ID:261637 發表于 2018-1-10 18:48 | 只看該作者
感謝樓主的無私分享。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: zzzwww在线看片免费 | 欧美韩一区二区三区 | 超碰精品在线观看 | 爱爱免费视频 | 亚洲欧洲中文日韩 | www成人免费视频 | 日本视频免费 | 色综合久久久久 | 亚洲免费精品一区 | 91免费观看在线 | 久久九九99 | 九九热精品免费 | 国产一区在线免费观看 | 国产精品国产精品国产专区不片 | 成人激情视频免费在线观看 | 91国产精品在线 | 日本一区视频在线观看 | 国产午夜精品一区二区三区嫩草 | 国产精选一区 | 久久精品中文字幕 | 91天堂| 亚洲日本乱码在线观看 | 日韩亚洲一区二区 | 91免费电影 | 视频一区二区三区四区五区 | 天天色图| 91久久久久 | 精品欧美一区二区在线观看 | 国产高清视频一区二区 | 99精品电影 | 69精品久久久久久 | 亚洲综合视频 | 国产在线观看不卡一区二区三区 | 国产精品一区在线观看 | 欧美一级黄视频 | 一区免费看 | 久久久久久看片 | 国产亚洲一区二区三区在线观看 | 国产成人精品久久二区二区91 | 视频一区二区中文字幕日韩 | 日日噜噜噜夜夜爽爽狠狠视频97 |