首页 > 其他分享 >ST回忆录——RTC

ST回忆录——RTC

时间:2024-10-29 13:09:03浏览次数:1  
标签:回忆录 LSE PWR RTC ST 点击 RCC 时钟


1.使能PWR和BKP时钟,使能BKP和RTC的访问

点击查看代码
	/*开启时钟*/
	RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);		//开启PWR的时钟
	RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE);		//开启BKP的时钟
	
	/*备份寄存器访问使能*/
	PWR_BackupAccessCmd(ENABLE);							//使用PWR开启对备份寄存器的访问

2.开启LSE时钟

点击查看代码
		RCC_LSEConfig(RCC_LSE_ON);							//开启LSE时钟
		while (RCC_GetFlagStatus(RCC_FLAG_LSERDY) != SET);	//等待LSE准备就绪
3.选择RTCCLK来源为LSE,并使能
点击查看代码
		RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE);				//选择RTCCLK来源为LSE
		RCC_RTCCLKCmd(ENABLE);								//RTCCLK使能
4.等待RTC和APB1时钟同步
点击查看代码
		RTC_WaitForSynchro();								//等待同步
		RTC_WaitForLastTask();								//等待上一次操作完成
5.设置RTC预分频器(实际为PRL重装载寄存器),外部低速晶振为32.768K
点击查看代码
		RTC_SetPrescaler(32768 - 1);						//设置RTC预分频器,预分频后的计数频率为1Hz
		RTC_WaitForLastTask();								//等待上一次操作完成

6.设置时间或读取时间函数

点击查看代码
	RTC_SetCounter(time_cnt);						//将秒计数器写入到RTC的CNT中
	RTC_WaitForLastTask();							//等待上一次操作完成
    
    time_cnt = RTC_GetCounter() + 8 * 60 * 60;		//读取RTC的CNT,获取当前的秒计数器
													//+ 8 * 60 * 60为东八区的时区调整

标签:回忆录,LSE,PWR,RTC,ST,点击,RCC,时钟
From: https://www.cnblogs.com/qjjim4231/p/18512821

相关文章

  • 自动化测试工具Ranorex Studio(十五)-自定义代码ACTION
    在Recorder提供的功能不能够满足的情况下,可以使用自定义代码。这里有一些例子,可以方便演示自定义代码Action。•   自定义验证•   访问测试用例相关的数据和参数•   扩展报告在项目视图窗口中,仔细看一个录制模块文件,你会看到有两个相关的代码文件。 图:录......
  • Java常见List面试题
    前言本来想着给自己放松一下,刷刷博客,突然被几道面试题难倒!获取一个类Class对象的方式有哪些?ArrayList和LinkedList的区别有哪些?用过ArrayList吗?说一下它有什么特点?有数组了为什么还要搞个ArrayList呢?说说什么是fail-fast?似乎有点模糊了,那就大概看一下Java基础面试......
  • rust写php扩展
    php版本必须>=8.0文档地址https://docs.rs/ext-php-rs/0.12.0/ext_php_rs/index.html创建lib项目cargonewext_php_rs--libcdext_php_rs编辑toml[dependencies]ext-php-rs="0.12"[lib]crate-type=["cdylib"]编辑lib.rs这里直接用的官网示例。#![cfg_attr(w......
  • 【项目实战】分布式日志搜索系统之数据同步方案(Logstash-input-jdbc、go-mysql-elast
    在构建分布式日志搜索系统时,数据同步是一个核心环节。以下是针对您提出的五种数据同步方案的详细分析:一、Logstash-input-jdbcLogstash是ElasticStack的一部分,用于从各种来源收集数据,并将其发送到Elasticsearch。Logstash-input-jdbc插件允许Logstash从关系型数据库(如My......
  • 【项目实战】分布式日志搜索系统之Elastic Stack日志抽取(filebeat、heartbeat、packet
    一、ElasticStack是什么?ElasticStack,以前称为ELKStack,是一套开源的日志分析解决方案。ElasticStack,由Elastic公司开发和维护。ElasticStack,包括了几个核心组件,这些组件协同工作以帮助用户收集、处理、存储、搜索和可视化数据。ElasticStack,因其灵活性和强大的功能......
  • zblog获取tag列表函数GetTagList参数和使用方法介绍说明
    函数位置:zblogphp.php文件,大约2641行。函数参数:$select:数组,获取指定数据。$where:数组,数据获取限制规则。$order:数组,数据获取排序规则。$limit:数组,获取数据数量限制。$option:数组,附加限制选项,可用来获取指定范围内的数据。函数输出:输出一个数组。示例:{......
  • C# 中的Stream流
    C#中的Stream流 流就是一个类的对象,很多文件的输入输出操作都以类的成员函数的方式来提供;流其实是一种信息的转换,是有序的,有输入和输出流(IO);1.FileStream文件流,读取和保存文件操作使用;//写入FileStreamfs=newFileStream("data.txt",FileMode.OpenOrCreate);strin......
  • Java学习第一天《String字符串的使用》
    1.获取字符最后一次出现的位置(函数返回值为int类型)                字符串的变量名.lastIndexOf(Stringstr);                               查找a最后出现的位置               System.out.print("请......
  • api 接口 验证 timestamp 接口api测试
    接口(API)测试没有总结,就不能认识自己,就不知成功在哪里,失败在哪里;没有思考,就没有提高,没有进步自动化测试分层【什么是API】API是ApplicationProgrammingInterface的简写。实现了两个或多个独立系统或模块间的通信和数据交换能力。【什么是API测试】API测试不同于UI自......
  • Vue项目在npm install 报版本错误 解决方案
    1.在npminstall后提示版本npm过高的解决办法:npm降级:比如现在的版本是8.XX.XX,想要还原到6.XX.XX:[email protected].删除npm缓存,执行清楚缓存命令在降级前需要打开win+R,输入%appdata%找到npm以及npm-cache删除这两个包,并且执行npmcacheclean--force清空缓......