stm32---实时时钟(RTC,BKP, PWR)

图文概述:

代码:

MyRTC.c:

#include "stm32f10x.h"                  // Device header
#include <time.h>

/* 设置显示的初始的日期时间结构体 */
struct tm MainTime = {57, 59, 23, 9, 10, 2023}; //秒 分 时 日 月(偏移量-1) 年(从1970开始算,有偏移)

void MyRTC_SetTime(void);

/**
  * @brief  MyRTC_Init---对RTC进行初始化
  * @param  无
  * @retval 无
  */
void MyRTC_Init(void)
{
	//1.开启PWR和BKP外设的时钟
	RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE);
	RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
	//2.PWR使能BKP
	PWR_BackupAccessCmd(ENABLE);

	/*
	判断备用电源有没有断电:若断电过则备用寄存器的值会清除,
	就需要重新初始化,若没有断电过则不需要再进行初始化
	(0xA5A5相当于一个标志,用来查看是否还存在备用寄存器内)
	*/
	if(BKP_ReadBackupRegister(BKP_DR1) != 0xA5A5)
	{
		//3.开启
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值