一、简介

1、采用SPI三线接口通信(SCK、SDA、RST)

  • 上升沿数据被写入DS1302,下降沿被读出

二、应用

1、在ds1302.c文件中定义三个数组

unsigned char code READ_A[7]={0X81,0X83,0X85,0X87,0X89,0X8B,0X8D};  //读操作相应寄存器的地址
unsigned char code WRITE_A[7]={0X80,0X82,0X84,0X86,0X88,0X8A,0X8C}; //写操作相应寄存器的地址
unsigned char Time[7]={0x50,0x59,0x23,0x00,0x00,0x00,0x00};         //秒 分 时 日 月 周 年
  • 关键字code:将数据写入ROM,是数据不可被改变

2、手写时钟设置函数、时钟读取函数

void DS1302_Config()
{unsigned char i;Write_Ds1302_Byte(0X8E,0X00);  //写控制寄存器的地址是0x8E   0x00允许写入for(i=0;i<7;i++){Write_Ds1302_Byte(WRITE_A[i],Time[i]);      //将初始化数据写入}Write_Ds1302_Byte(0X8E,0X80);  //0x80禁止写入
}void DS1302_Read_Time()
{unsigned char i;for(i=0;i<7;i++){Time[i]=Read_Ds1302_Byte(READ_A[i]);        //将实时时钟数据读出}
}

3、主函数中修改单一的时间单位数值的操作

Write_Ds1302_Byte(0X8E,0X00);            //允许写入
Write_Ds1302_Byte(WRITE_A[0],Time[0]);   //将更改后的数据写入对应的地址
Write_Ds1302_Byte(0X8E,0X80);            //禁止写入

4、时钟数据换算

  • 以秒为例:

十位=Time[2]/16
        个位=Time[2]%16

  • 为什么DS1302的数据换算要除以16?

因为DS1302使用的是“压缩的BCD码”,不是实际意义上的16进制数据。

例:55秒,在一般的十六进制表示为0x37,但在“压缩的BCD码”表示为0x55

▲文中不足之处请大家指正

蓝桥杯单片机-DS1302时钟模块相关推荐

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

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

  2. 蓝桥杯单片机DS1302时钟

    采用SPI三线接口与MCU进行同步通信,并可采用突发方式一次传送多个字节的时钟参数和RAM数据. 日历时钟寄存器有8个存储单元: 所以,我们需要三个数组: 定义DS1302读操作的日历时钟存储器地址 ...

  3. 蓝桥杯单片机之PCF8591模块的使用

    蓝桥杯单片机之PCF8591模块的使用 简述 原理图: 引脚定义: 相关地址 IIC寻址设备地址 控制地址 IIC时序分析 数模转换D/A 模数转换 代码: 一:光敏电阻和可变电阻的AD转换,S4控制 ...

  4. 蓝桥杯单片机国赛模块儿总结

    前言 明天就是国赛了,时间挺快的,得赶紧复习一下了. 摸鱼摸到现在,差不多已经放弃了. 国赛的模块其实只是比省赛多了几个常见的外设和模块儿,这里就不细述了,具体可以看省赛模块总结 目录 前言 1.串口 ...

  5. 【蓝桥杯单片机】超声波模块(测距原理,驱动方式)

    实验开发板为CT107D蓝桥官方板,编译环境为MDK5 超声波探头测距原理: 发射头发射超声波,遇到障碍物后返回,接收探头接受到返回信号. 两个动作产生的时间差可以是我们根据声音在空气中传播的速度来( ...

  6. 蓝桥杯单片机之LED模块的使用(十六进制)以及关闭蜂鸣器(关闭外设)

    LED模块的使用(十六进制)以及关闭蜂鸣器(关闭外设) 原理图 根据原理图分析 LED共阳接法,二极管正向导通发光,所以当Q1~Q8为低电平时,LED灯会点亮: 74HC573是一颗锁存器CMOS芯片 ...

  7. 蓝桥杯单片机——Ds1302时间开始与暂停

    首先说明一下ds1302时间,开始与暂停的原理: 只要让"秒寄存器"的最高位为1,时钟就会暂停计时. 同理只要让"秒寄存器"的最高位为0,时钟就会开始计时. 时 ...

  8. 蓝桥杯单片机之DS1302时钟模块的使用

    蓝桥杯单片机之DS1302时钟模块的使用 DS1302简介 SPI串口简介 BCD码 阅读手册获取寄存器信息 日历时钟寄存器 控制字 将手册中的数据进行分析可得 完整代码示例: 总结 DS1302简介 ...

  9. 蓝桥杯单片机 赛后资料整理——NE555芯片模块与第十届省赛的总结

    蓝桥杯单片机 赛后资料整理--NE555芯片模块 电路原理 模块特性 驱动方法 代码模板 个人总结 本文适用于 CT107D竞赛板+ IAP15转接板 电路原理 模块特性 NE555是一种时钟芯片,输 ...

最新文章

  1. Springboot 整合 Dubbo/ZooKeeper 详解 SOA 案例
  2. CORDIC算法——圆周系统之旋转模式
  3. 在ubuntu16.04.1配置qemu-img,qemu-nbd
  4. Matplotlib画图常用方法总结(全)
  5. android+listview设置行高,android – 无法在行xml中设置listView行高的高度
  6. vue2.0中的:is和is的区别
  7. 0258资源网正版模板emlog资源网/娱乐网模板
  8. 95-20-060-启动器-Bootstrap
  9. 【Angular 4】数据绑定
  10. FFmpeg的模块介绍(一)
  11. 8Uftp连接服务器错误
  12. python多个条件组合覆盖_白盒测试系列(五)条件组合覆盖
  13. 粒子群课设,粒子群算法(基础精讲)ppt课件
  14. 【Redis】Redis相关
  15. ubuntu16.04根目录磁盘空间扩容及可能遇到的问题(亲测有效)
  16. 救救家长:疫情封控下packetbeat+kafka+ES套件监控青少年上网行为
  17. 谷歌研发智能隐形眼镜
  18. 大数据时代:预测未来5年各行业发展趋势
  19. 【好书推荐】《华为数据之道》
  20. 苹果工具条_苹果iOS 13.4大版本更新正式推送!新功能+新表情登场

热门文章

  1. Hive小咖,是时候穿上你的振金战衣! 与职场高阶雷神之锤High-Five了!!!
  2. wdcp v2.5.15 php版本,wdcp_v2.5.15(20150826) 如何开启 多 SSL 站点!
  3. CANdelaStudio从入门到精通总览
  4. 每日一threeJS(1)
  5. 如何修改文件的扩展名(后缀)
  6. 【Web开发】登录注册功能实现
  7. win10 设定计划任务时提示所指定的账户名称无效,如何解决?
  8. 处理器(CPU)结构
  9. resnet50中的bottleneck
  10. MMGG热点 ▏AssangeDAO提案