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

📄 ds12887.c

📁 ds18b20的C语言使用范例
💻 C
字号:
/*
管脚配置:
MOT: 接地
CS:  接地  地址:0xbf00

AS:  接单片机 ALE
R/W: 接 RW
DS:    接 RD
RESET:  接高
IRQ: 空
SQW:    空
*/

#include <reg52.h>

#define         DS12887   0xbf00     //定义时钟芯片的片选基址

#define  DS12887_sec   DS12887+0x00 // 秒
#define  DS12887_min   DS12887+0x02  // 分
#define  DS12887_hour  DS12887+0x04  // 时

#define  DS12887_day   DS12887+0x06  // 星期
#define  DS12887_date  DS12887+0x06  // 日期
#define  DS12887_month DS12887+0x08  //月份
#define  DS12887_year  DS12887+0x09  //年

#define  DS12887_Reg_A DS12887+0x0a //寄存器A
#define  DS12887_Reg_B DS12887+0x0b //寄存器B
#define  DS12887_Reg_C DS12887+0x0c //寄存器C
#define  DS12887_Reg_D DS12887+0x0d //寄存器D

unsigned char  xdata  *REG_ADD;

unsigned char Date_Time[7]={8,12,28,7,19,46,21};//定义时间数组并设定初始值

void WriteDs12887()
{
   REG_ADD=DS12887_Reg_B;
   *REG_ADD=0x80;

   REG_ADD=DS12887_year;  *REG_ADD=Date_Time[0];  //年
   REG_ADD=DS12887_month; *REG_ADD=Date_Time[1];  //月
   REG_ADD=DS12887_date;  *REG_ADD=Date_Time[2];  //日期
   REG_ADD=DS12887_day;   *REG_ADD=Date_Time[3];  //星期
   REG_ADD=DS12887_hour;  *REG_ADD=Date_Time[4];  //时
   REG_ADD=DS12887_min;   *REG_ADD=Date_Time[5];  //分
   REG_ADD=DS12887_sec;   *REG_ADD=Date_Time[6];  //秒


   REG_ADD=DS12887_Reg_A; *REG_ADD=0x20;
   REG_ADD=DS12887_Reg_B; *REG_ADD=0x06;

}

void ReadDs127887()
{  unsigned char temp;

   REG_ADD=DS12887_Reg_B;
   do
   {
     temp=*REG_ADD;
   }while((temp&0x80)==0x80);

   REG_ADD=DS12887_year;  Date_Time[0]=*REG_ADD;  //年
   REG_ADD=DS12887_month; Date_Time[1]=*REG_ADD;  //月
   REG_ADD=DS12887_date;  Date_Time[2]=*REG_ADD;  //日期
   REG_ADD=DS12887_day;   Date_Time[3]=*REG_ADD;  //星期
   REG_ADD=DS12887_hour;  Date_Time[4]=*REG_ADD;  //时
   REG_ADD=DS12887_min;   Date_Time[5]=*REG_ADD;  //分
   REG_ADD=DS12887_sec;   Date_Time[6]=*REG_ADD;  //秒

}

void main()

{


  WriteDs12887();

  while(1)
  {
     ReadDs127887();

}

}






















⌨️ 快捷键说明

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