51单片机入门-DS1302时钟(十)

目录:

1.DS1302实时时钟

2.DS1302时钟&可调时钟

1.DS1302实时时钟

2.DS1302时钟&可调时钟

需要1602进行显示,拷贝过来1602的代码:

抑制下警告:

定义引脚:

定义读写的方法:

初始化方法:

使用for循环

读:

把写好的方法加到.h里

是个不稳定的数字

不用delay也没关系

9之后直接变成16了

16进制显示

BCD码转换下:

读分钟:

每次读一个东西需要定义一个变量,优化下

这些地址是写入的地址,最低位是0,读出最低位肯定是1

| 0x01可定是读,给地址的时候可以给写的地址,就不需要定义那么多地址了

extern可以不加,数组和函数默认会有,变量需要生明

显示跟数组设置的一样

可调时钟:

需要按键考过来:

闪烁是需要定时器来实现的,考过来:

说明按键式可以用的

定义模式,显示和修改

对时间特别处理:

对月进行处理:

二月:

11再加就变1:

减判断:

DS1302_Time是有符号的,没有负数,不能用<0判断,需要改下,把unsigned去掉,有符号的是-128-127

-的话11月没31需要判断

设置闪烁:

定时器模版:

设置好时间,重新进来设置它显示上一次设置的位:想让他从头开始

相关推荐
v先v关v住v获v取11 小时前
风电机变桨系统8张cad+设计说明书+三维图
科技·单片机·51单片机
如愿小李13 小时前
基于STM32的智能水质监测系统
stm32·单片机·嵌入式硬件
Heartache boy14 小时前
野火STM32_HAL库版课程笔记-TIM通道捕获应用之编码器模式
笔记·stm32·单片机·嵌入式硬件
柔情的菜刀14 小时前
踩坑实录|RK3588 BT1120 输出调试全解(适配GS2972)
嵌入式硬件
Lugas Luo14 小时前
Ascend 310B 定制 SDHCI 主机控制器源码深层次劫持与优化解析
linux·嵌入式硬件
恒森宇电子有限公司16 小时前
芯晞微CSM057 线性充电管理芯片 封装SOT23-6
单片机·嵌入式硬件
蓝凌y17 小时前
51单片机之LCD1602
单片机·嵌入式硬件·51单片机
Lugas Luo17 小时前
Kernel 5.10 针对 eMMC 的 Detect、Power、Add 及深度优化解析
linux·嵌入式硬件
charlie11451419117 小时前
嵌入式C++教程实战之Linux下的单片机编程:从零搭建 STM32 开发工具链(4)从零构建 STM32 构建系统
linux·开发语言·c++·stm32·单片机·学习·嵌入式
欢乐熊嵌入式编程18 小时前
用 ESP32 + WiFi 做远程控制插座(从原理到实战)
单片机·wifi·智能路由器·esp32·远程控制插座