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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4982|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

DS1302和液晶1602中顯示時(shí)鐘,為什么不走,顯示是時(shí)間也是錯(cuò)誤的

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:244748 發(fā)表于 2017-11-21 17:33 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
# include <reg52.h>
# define uchar unsigned char
# define uint unsigned int


sbit lcden = P3^4;
sbit rs = P3^5;
sbit wr = P3^6;

sbit rst = P1^0;
sbit io = P1^1;
sbit sclk  = P1^2;

uchar code dage[] = "2017-11-17   FRI";
uchar code dage1[] = "     :   :  ";


uchar miao, fen, shi, i;
/*  ***  函數(shù)聲明 ****/
void display();
void write_sfm(uchar, uchar);
void Send_595(uchar);
void delay(uint);
void write_com(uchar);
void write_date(uchar);
void write_byte(uchar);
void init_lcd();
void set_ds1302();
uchar read_ds1302(uchar);
uchar read_byte();


void main()
{
        init_lcd();
        set_ds1302();
        while(1)
        {
                display();
        }
}

void delay(uint z)
{
        uint x, y;
        for(x=z; x>0; x--)
           for(y=110; y>0; y--);
}
/****** 往1602液晶 寫入指令 ****/

void write_com(uchar com)
{
        rs = 0;
        P0 = com;
        delay(5);
        lcden = 1;
        delay(5);
        lcden = 0;
}
/*****  1602液晶 初始化  ******/
void init_lcd()
{
        /*Send_595(0xff);
        Send_595(0x00);
        P_HC595_RCLK = 0;
        P_HC595_RCLK = 1;*/
       
        wr = 0;
        lcden = 0;
       
        write_com(0x38);
        write_com(0x0c);
        write_com(0x06);
        write_com(0x01);
       
        for(i=0; i<16; i++)
        {
        write_date(dage[i]);
        delay(5);
        }

        write_com(0x80+0x40);
       
        for(i=0; i<13; i++)
        {
                write_date(dage1[i]);
                delay(5);
        }
}
/*  *****往1602液晶寫入數(shù)據(jù) ****** */
void write_date(uchar date)
{
        rs = 1;
        P0 = date;
        delay(5);
        lcden = 1;
        delay(5);
        lcden = 0;
}

       

/****** DS1302 中寫入一個(gè)字節(jié) ***/
void write_byte(uchar date)
{
        uchar i, temp;
        temp = date;
        for(i=0; i<8; i++)
        {
                if((temp&0x01) == 1)
                        io = 1;
                else
                        io = 0;
                sclk = 1;
                sclk = 0;
                temp >>= 1;
        }
}
/*****′ ***/
uchar read_byte()
{
        uchar i, temp;
        for(i=0; i<8; i++)
        {
                temp>>=1;
                if(io == 1)
                        temp|=0x80;
                 sclk = 1;
                 sclk = 0;       
        }
        return temp;
}
       
/***** Ö¸¶¨Î»ÖÃD′ ****/
void write_ds1302(uchar addr, uchar date)
{
        rst = 0;
        sclk = 0;
        rst = 1;
       
        write_byte(addr);
        write_byte(date);
       
        sclk = 1;
        rst = 0;
}
/****** Ö¸¶¨Î»Ööá ***/
uchar read_ds1302(uchar addr)
{
        uchar date;
        rst = 0;
        sclk = 0;
        rst = 1;
        write_byte(addr);
        date = read_byte();
        sclk = 1;
        rst = 0;
       
  return date;
}
/******  3õê¼»ˉDS1302  *****/
void set_ds1302()
{
        write_ds1302(0x8e, 0x00);
       
        write_ds1302(0x80, 0x00);
        write_ds1302(0x82, 0x00);
        write_ds1302(0x84, 0x00);
       
        write_ds1302(0x8e, 0x80);       
}
/****** ê±£¬·Ö£¬Ãë £¬·Öàë¸ö£¬ ê®Î»  ****/
void write_sfm(uchar addr, uchar date)
{
        uchar shi, ge;
        shi = date/10;
        ge = date%10;
        write_com(0x80+0x40+addr);
        write_date(0x30+shi);
        write_date(0x30+ge);
}

/****** íù1602ÖDÏÔê¾êy¾Y ****/
void display()
{
        uchar d;
        write_ds1302(0x8e, 0x00);
       
        d = read_ds1302(0x81);
        miao = (d/16)*10 + d%16;
  write_sfm(11, miao);       
       
        d = read_ds1302(0x83);
        miao = (d/16)*10 + d%16;
  write_sfm(7, fen);       
       
        d = read_ds1302(0x85);
        miao = (d/16)*10 + d%16;
  write_sfm(3, shi);       
       
        write_ds1302(0x8e, 0x80);
}


IMG_20171121_170928.jpg (3.78 MB, 下載次數(shù): 53)

IMG_20171121_170928.jpg

JW-51開發(fā)板.pdf

99.63 KB, 下載次數(shù): 3

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

使用道具 舉報(bào)

沙發(fā)
ID:251992 發(fā)表于 2017-11-21 18:26 | 只看該作者
最好把DS1302的各個(gè)寄存器的功能貼出來就好了,
回復(fù)

使用道具 舉報(bào)

板凳
ID:231984 發(fā)表于 2017-11-22 20:57 | 只看該作者
計(jì)時(shí)的功能都沒有,怎么讓時(shí)間加?
回復(fù)

使用道具 舉報(bào)

地板
ID:111634 發(fā)表于 2017-11-22 21:22 | 只看該作者
好像給你介紹過一個(gè)正確有效案例,仔細(xì)去研讀啊!
回復(fù)

使用道具 舉報(bào)

5#
ID:244748 發(fā)表于 2017-11-26 15:23 | 只看該作者
gaohan130 發(fā)表于 2017-11-22 20:57
計(jì)時(shí)的功能都沒有,怎么讓時(shí)間加?

DS1302有自動(dòng)計(jì)時(shí)的功能,不用計(jì)時(shí)器
回復(fù)

使用道具 舉報(bào)

6#
ID:254058 發(fā)表于 2017-11-27 10:53 | 只看該作者
建議去共享區(qū)下載一個(gè)現(xiàn)成的,吃透的再改,看完看懂這個(gè)程序時(shí)間足夠吃透一個(gè)正確的程序了,
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产情侣激情 | 欧美一级免费片 | 国产三区精品 | 求毛片 | 国产成人精品一区二区三区在线 | 中文成人在线 | 欧美成人二区 | 美女一区 | 91精品国产91久久久久久丝袜 | 欧美日韩一区二区三区四区 | 亚洲日本国产 | 久久日本| 久久成人一区 | 色永久 | 欧美精品在欧美一区二区少妇 | 亚洲男女视频在线观看 | 国产成人jvid在线播放 | 国产精品久久久久久久7电影 | 国产一区二区三区在线看 | 国产成人精品一区二区三区网站观看 | 一区二区三区视频免费观看 | 成人小视频在线观看 | av中文字幕在线观看 | 日韩精品久久 | 免费人成激情视频在线观看冫 | 99精品热视频 | 久在草| 午夜精品91 | 成人精品高清 | 亚州国产 | 国产一级黄色网 | 国产 日韩 欧美 在线 | 久久久久国产一区二区三区四区 | 午夜在线 | 亚洲精品久久久蜜桃网站 | 羞羞视频网站在线观看 | 久久精品一 | 成人在线精品视频 | 亚洲视频三区 | 97av在线 | 日韩一区二区在线免费观看 |