一、引脚连接

二、DS1302初始化

void ds1302_init(void)
{Pin1设置为低电平;     /*RST脚置低*/Pin2设置为低电平        /*SCK脚置低*/Pin1设置为输出     /*RST脚设置为输出*/Pin2设置为输出      /*SCK脚设置为输出*/
}

三、向DS1302输入数据,用来设置开始计时的初始时间

void ds1302_write_byte(unsigned char addr, unsigned char date){unsigned char i;RST引脚设置为高电平,开启DS1302时钟总线;/*写入目标地址:addr*/MCU中的Pin3设置为输出模式;addr = addr & 0xFE;   //最低位置零,开启写,寄存器0位为0时写,为1时读for (i = 0; i < 8; i ++){if (addr & 0x01) {Pin3输出一个高电平;}else {Pin3输出一个低电平;}Pin2输出一个高电平;Pin2输出一个低电平;addr = addr >> 1;//最低位串行输出,数据右移}/*写入数据:d,将对应数据写入对应地址*/MCU中的Pin3设置为输出模式;for (i = 0; i < 8; i ++){if (date& 0x01) {Pin3输出一个高电平;}else {Pin3输出一个低电平;}Pin2输出一个高电平;Pin2输出一个低电平;date = date>> 1;}RST引脚设置为低电平,开启DS1302时钟总线;
}

四、读取DS1302中的时间数据,用以操作

unsigned char ds1302_read_byte(unsigned char addr)
{unsigned char i;unsigned char temp;RST引脚置位高电平,开启总线;/*写入目标地址:addr*/MCU中Pin3设置为输出模式;addr = addr | 0x01;    //最低位置高,寄存器0位为0时写,为1时读for (i = 0; i < 8; i ++) {if (addr & 0x01) {Pin3设置高电平;}else{Pin设置低电平;}Pin2高电平;Pin3低电平;addr = addr >> 1;}/*输出数据:outdate*/Pin3设置为输入模式;for (i = 0; i < 8; i ++){outdate= outdate>> 1;if (Pin3读取的电平为高) {outdate|= 0x80;//最高位设置为1}else {outdate&= 0x7F;//最高位设置为0}Pin2高电平;Pin3低电平;}关闭DS1302总线;                /*停止DS1302总线*/return outdate;
}

五、非注释中文需要自己设计

六、以下为网上可查到的有关DS1302芯片数据的网页

DS1302详解_比特冬哥的博客-CSDN博客_ds1302

基于AVR系列单片机,DS1302时钟芯片的具体用法相关推荐

  1. 蓝桥杯单片机DS1302时钟芯片驱动代码注释

    蓝桥杯单片机DS1302时钟芯片驱动代码之前的疑惑注释了下 /* DS1302 芯片包含一个 实时时钟/日历和 31 字节的静态 RAM. 与时钟/RAM 通讯只需要三根线: CE,I/O (数据线) ...

  2. 51单片机DS1302时钟芯片应用Proteus仿真

    系列文章目录 第一章 51单片机Proteus仿真(一) DS1302使用 文章目录 系列文章目录 前言 一.DS1302时序解读 二.BCD码转十进制解读 三.Proteus仿真 四.详细代码 前言 ...

  3. (给自己看)51单片机DS1302时钟芯片

    老规矩先上DS1302.c的代码 #include <regx52.h>//首先 DS1302_Init(); // DS1302_SetTime();//再在while中DS1302_R ...

  4. 单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》...

    引言 本设计以AT89S52单片机为控制核心,时钟芯片DS1302提供时钟源,配合LCD1602液晶显示模块,组成基本硬件系统,同时利用HC-05嵌入式蓝牙串口通讯模块,可在手机端进行日期.时间的校准 ...

  5. 单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》... 1

    引言 本设计以AT89S52单片机为控制核心,时钟芯片DS1302提供时钟源,配合LCD1602液晶显示模块,组成基本硬件系统,同时利用HC-05嵌入式蓝牙串口通讯模块,可在手机端进行日期.时间的校准 ...

  6. 51单片机进阶案例(1)——基于MATLAB GUI的单片机串口与PC的通信实现实时时钟和双向可调时钟功能(利用DS1302时钟芯片和LCD1602液晶屏)

    目录 一.案例描述 二.实现功能 三.51单片机部分实现 3.1 实时时钟的实现 3.2 串口通信的实现 3.2.1 接收数据 3.2.2 发送数据 四.MATLAB部分实现 4.1 GUI界面 4. ...

  7. 用单片机用c语言做闹钟,基于单片机与ds1302时钟芯片的电子闹钟C程序

    原标题:基于单片机与ds1302时钟芯片的电子闹钟C程序 #include #define w_second 0x80 //秒写入地址 #define w_minute 0x82 //分写入地址 #d ...

  8. 基于51单片机ds1302时钟、ds18b20、lcd12864的恒温器

    目录 项目:基于51单片机ds1302时钟.ds18b20的恒温器 功能说明: 运行流程: 效果展示: 供电方式: 用途: 提高: 附: ​                              ...

  9. 使用51单片机和DS1302时钟芯片做一个简易的电子时钟

    简易的电子时钟实验 一.前言 二.DS1302模块介绍 三.驱动DS1302的代码 3.1 初始化DS1302时钟芯片 3.2 读取DS1302时钟芯片的时间 3.3 设置DS1302时钟芯片的时间 ...

最新文章

  1. jquery easyUI分页dataGrid-Json
  2. mysql grant %_MySQL的Grant命令详解
  3. 二分逼近二分查找 高效解析800万大数据之区域分布
  4. DB-Engines 2018:PostgreSQL 蝉联“年度数据库”称号
  5. 解决Win10不能访问共享文件夹的问题
  6. 用Python盘点那些豆瓣评分低于3.0的奇葩电影
  7. Spring Security HttpSecurity
  8. 力扣-83 删除排序链表中的重复元素
  9. CDN原理 CDN技术是什么
  10. html 自定义打印模板,如何自定义打印模板
  11. 两向量点乘坐标运算_向量点乘(内积)和叉乘(外积、向量积)概念及几何意义解读...
  12. 双十一数码产品选什么好?双十一数码好物推荐
  13. Mockito使用简介
  14. Python - 内置函数详解(截至v3.6.x)
  15. 盗版升级win10仍是盗版
  16. catia利用宏批量改名的方法_CATIA批量改名功能大揭秘
  17. Angular $injector:unpr Unknown provider 问题原因汇总
  18. 大多数企业数字化转型的真正目的其实只是为了能多裁点人
  19. 【刷题】——小红书三套卷
  20. 八张图表示八大排序算法

热门文章

  1. 魔改并封装 YoloV5 Version7 的 detect.py 成 API接口以供 python 程序使用
  2. 分析CI结构和CI是怎么工作的
  3. VMware Tools安装卸载方法
  4. Java transient关键字小记
  5. (十四)SM4分组密码算法
  6. 简易图解移轴镜头 (Tilt-Shift Lens) 原理 简易图解移轴镜头 (Tilt-Shift Lens) 原理
  7. SVM中的KKT条件和拉格朗日对偶
  8. 删除数组中的指定元素
  9. detached HEAD切换分支代码丢失
  10. 电器厂产品发霉处理以及预防发霉方案