⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ds12c887.h

📁 很实用的单片机例程
💻 H
字号:
#define DS_A_REGISTER          10
#define DS_B_REGISTER          11
#define DS_C_REGISTER          12
#define DS_D_REGISTER          13
#define IN_RAM_PARA_TEMP       0XE5

sbit DSDS      =P3^4;
sbit DSRW      =P3^5;
sbit DSAS      =P3^6;
sbit DSCS      =P3^7;

unsigned char
                hoursetup,
                minutesetup,
                secondsetup,
                monthsetup,
                datesetup,
                yearsetup,
                minutesetup1,
                hoursetup1,
                datesetup1;

unsigned char read_ds12887_char(unsigned char address)
{
    unsigned char dsdata;
    DSDS=1;
    DSRW=1;
    DSAS=1;
    DSCS=0;
    P2=address;
    DSAS=0;
    DSDS=0;
    P2=0xff;
    delay(10);
    dsdata=P2;
    DSDS=1;
    DSCS=1;
    DSAS=1;
    return (dsdata);
}

/*********************************************************************
* 函数原型:write_ds12887_char(unsigned char adress,unsigned char temp) *
* 功能:    在ds12887指定地址写一个char的数据                            *
*********************************************************************/

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


void write_ds12887_char(unsigned char address,unsigned char dsdata)
{
    DSCS=0;
    DSDS=1;
    DSAS=1;
    DSRW=1;
    P2=address;
    DSAS=0;
    DSRW=0;
    P2=dsdata;
    DSAS=1;
    DSRW=1;
    DSCS=1;
 }

void time_set1(unsigned char adress,unsigned char time_data)
{
    write_ds12887_char(DS_A_REGISTER,0x70);
    write_ds12887_char(DS_B_REGISTER,0xA2);
    write_ds12887_char(adress,time_data);
    write_ds12887_char(DS_B_REGISTER,0x26);
    write_ds12887_char(DS_A_REGISTER,0x20);
}
void time_init()//初始化,设定时间
{
  time_set1(0x09,yearsetup);       //年
  time_set1(0x08,monthsetup);       //月
  time_set1(0x07,datesetup);       //日
  time_set1(0x04,hoursetup);
  time_set1(0x02,minutesetup);
  time_set1(0x00,secondsetup);
}
void time_iv()//读取时间
{
  yearsetup=read_ds12887_char(0x09);
  monthsetup=read_ds12887_char(0x08);
  datesetup=read_ds12887_char(0x07);
  hoursetup=read_ds12887_char(0x04);
  minutesetup=read_ds12887_char(0x02);
  secondsetup=read_ds12887_char(0x00);

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -