蓝桥杯单片机-DS1302时钟模块
一、简介
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时钟模块相关推荐
- 蓝桥杯单片机DS1302时钟芯片驱动代码注释
蓝桥杯单片机DS1302时钟芯片驱动代码之前的疑惑注释了下 /* DS1302 芯片包含一个 实时时钟/日历和 31 字节的静态 RAM. 与时钟/RAM 通讯只需要三根线: CE,I/O (数据线) ...
- 蓝桥杯单片机DS1302时钟
采用SPI三线接口与MCU进行同步通信,并可采用突发方式一次传送多个字节的时钟参数和RAM数据. 日历时钟寄存器有8个存储单元: 所以,我们需要三个数组: 定义DS1302读操作的日历时钟存储器地址 ...
- 蓝桥杯单片机之PCF8591模块的使用
蓝桥杯单片机之PCF8591模块的使用 简述 原理图: 引脚定义: 相关地址 IIC寻址设备地址 控制地址 IIC时序分析 数模转换D/A 模数转换 代码: 一:光敏电阻和可变电阻的AD转换,S4控制 ...
- 蓝桥杯单片机国赛模块儿总结
前言 明天就是国赛了,时间挺快的,得赶紧复习一下了. 摸鱼摸到现在,差不多已经放弃了. 国赛的模块其实只是比省赛多了几个常见的外设和模块儿,这里就不细述了,具体可以看省赛模块总结 目录 前言 1.串口 ...
- 【蓝桥杯单片机】超声波模块(测距原理,驱动方式)
实验开发板为CT107D蓝桥官方板,编译环境为MDK5 超声波探头测距原理: 发射头发射超声波,遇到障碍物后返回,接收探头接受到返回信号. 两个动作产生的时间差可以是我们根据声音在空气中传播的速度来( ...
- 蓝桥杯单片机之LED模块的使用(十六进制)以及关闭蜂鸣器(关闭外设)
LED模块的使用(十六进制)以及关闭蜂鸣器(关闭外设) 原理图 根据原理图分析 LED共阳接法,二极管正向导通发光,所以当Q1~Q8为低电平时,LED灯会点亮: 74HC573是一颗锁存器CMOS芯片 ...
- 蓝桥杯单片机——Ds1302时间开始与暂停
首先说明一下ds1302时间,开始与暂停的原理: 只要让"秒寄存器"的最高位为1,时钟就会暂停计时. 同理只要让"秒寄存器"的最高位为0,时钟就会开始计时. 时 ...
- 蓝桥杯单片机之DS1302时钟模块的使用
蓝桥杯单片机之DS1302时钟模块的使用 DS1302简介 SPI串口简介 BCD码 阅读手册获取寄存器信息 日历时钟寄存器 控制字 将手册中的数据进行分析可得 完整代码示例: 总结 DS1302简介 ...
- 蓝桥杯单片机 赛后资料整理——NE555芯片模块与第十届省赛的总结
蓝桥杯单片机 赛后资料整理--NE555芯片模块 电路原理 模块特性 驱动方法 代码模板 个人总结 本文适用于 CT107D竞赛板+ IAP15转接板 电路原理 模块特性 NE555是一种时钟芯片,输 ...
最新文章
- Springboot 整合 Dubbo/ZooKeeper 详解 SOA 案例
- CORDIC算法——圆周系统之旋转模式
- 在ubuntu16.04.1配置qemu-img,qemu-nbd
- Matplotlib画图常用方法总结(全)
- android+listview设置行高,android – 无法在行xml中设置listView行高的高度
- vue2.0中的:is和is的区别
- 0258资源网正版模板emlog资源网/娱乐网模板
- 95-20-060-启动器-Bootstrap
- 【Angular 4】数据绑定
- FFmpeg的模块介绍(一)
- 8Uftp连接服务器错误
- python多个条件组合覆盖_白盒测试系列(五)条件组合覆盖
- 粒子群课设,粒子群算法(基础精讲)ppt课件
- 【Redis】Redis相关
- ubuntu16.04根目录磁盘空间扩容及可能遇到的问题(亲测有效)
- 救救家长:疫情封控下packetbeat+kafka+ES套件监控青少年上网行为
- 谷歌研发智能隐形眼镜
- 大数据时代:预测未来5年各行业发展趋势
- 【好书推荐】《华为数据之道》
- 苹果工具条_苹果iOS 13.4大版本更新正式推送!新功能+新表情登场
热门文章
- Hive小咖,是时候穿上你的振金战衣! 与职场高阶雷神之锤High-Five了!!!
- wdcp v2.5.15 php版本,wdcp_v2.5.15(20150826) 如何开启 多 SSL 站点!
- CANdelaStudio从入门到精通总览
- 每日一threeJS(1)
- 如何修改文件的扩展名(后缀)
- 【Web开发】登录注册功能实现
- win10 设定计划任务时提示所指定的账户名称无效,如何解决?
- 处理器(CPU)结构
- resnet50中的bottleneck
- MMGG热点 ▏AssangeDAO提案