离线
TA的每日心情 | 慵懒 2021-7-23 17:16 |
---|
签到天数: 17 天 [LV.4]
|
有人预言,RISC-V或将是继Intel和Arm之后的第三大主流处理器体系。欢迎访问全球首家只专注于RISC-V单片机行业应用的中文网站
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 草帽王子 于 2021-9-10 18:12 编辑
本章教程主要通过使用后备寄存器(BKP)进行上电计数。
1、BKP简介及相关函数介绍
关于BKP相关介绍,在前面第十六章已经进行过相关介绍,在此不再赘述。更多具体信息,可参考CH32V103应用手册。
2、硬件设计
本章教程使用BKP进行上电计数,无需进行硬件连接。
3、软件设计
本章教程使用BKP进行上电计数,程序较为简单,仅一个主函数,具体程序如下:
main.c文件
- /********************************** (C) COPYRIGHT *******************************
- * File Name : main.c
- * Author : WCH
- * Version : V1.0.0
- * Date : 2020/04/30
- * Description : Main program body.
- *******************************************************************************/
- #include "debug.h"
- /*******************************************************************************
- * Function Name : main
- * Description : Main program.
- * Input : None
- * Return : None
- *******************************************************************************/
- int main(void)
- {
- unsigned short i = 0;
- USART_Printf_Init(115200);
- printf("SystemClk:%d\r\n",SystemCoreClock);
- RCC_APB1PeriphClockCmd( RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE ); //使能PWR时钟和BKP时钟
- PWR_BackupAccessCmd( ENABLE ); //启用对RTC和备份寄存器的访问。
- i=BKP_ReadBackupRegister(BKP_DR1); //读取后备数据寄存器的值
- printf("上电次数%d \r\n",i);
- i++;
- BKP_WriteBackupRegister(BKP_DR1,i); //向后备数据寄存器写入值
- while(1);
- }
复制代码 main.c文件主要开启BKP时钟、启用对备份寄存器的访问以及进行计数。
4、下载验证
将编译好的程序下载到开发板并复位,打开串口调试助手,串口打印显示如下,每当开发板重新上电,记一次数:
78、BKP-上电计数.rar
78、BKP-上电计数.rar
(456.84 KB, 下载次数: 9)
链接:https://pan.baidu.com/s/1JT-QY9ZDxBHaUY1WRcvDcg
提取码:k54f
复制这段内容后打开百度网盘手机App,操作更方便哦
完
|
上一篇: 第七十八章:CH32V103应用教程——USART-空闲中断下一篇: 第八十章:CH32V103应用教程——直流有刷电机按键控制
|