Hal庫下備份寄存器

首先要確保有外部電源給VBAT供電
在這里插入圖片描述
生成后應該會有這兩個文件(不知道為什么生成了好幾次都沒有,復制工程在試一次就有了)
在這里插入圖片描述

可以看到stm32f407有20個備份寄存器

在這里插入圖片描述
讀寫函數

void HAL_RTCEx_BKUPWrite(RTC_HandleTypeDef *hrtc, uint32_t BackupRegister, uint32_t Data)
uint32_t HAL_RTCEx_BKUPRead(RTC_HandleTypeDef *hrtc, uint32_t BackupRegister)

如果要讀寫BKP寄存器的數據,首先要先解除BKP寄存器的寫保護,代碼如下
__HAL_RCC_PWR_CLK_ENABLE();//使能電源時鐘 PWR
HAL_PWR_EnableBkUpAccess();//取消備份區域寫保護
__HAL_RCC_RTC_ENABLE();//RTC 時鐘使能
if(HAL_RTCEx_BKUPRead(&hrtc,RTC_BKP_DR1)!=0x9193)
{
HAL_RTCEx_BKUPWrite(&hrtc,RTC_BKP_DR1,0x9193);
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/81614.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/81614.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/81614.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用 Vue3 + Webpack 和 Vue3 + Vite 實現微前端架構(基于 Qiankun)

在現代前端開發中,微前端架構逐漸成為一種流行的解決方案,尤其是在大型項目中。通過微前端,我們可以將一個復雜的單體應用拆分為多個獨立的小型應用,每個子應用可以獨立開發、部署和運行,同時共享主應用的基礎設施。本…

【c++】【STL】list詳解

目錄 list的作用list的接口構造函數賦值運算符重載迭代器相關sizeemptyfrontbackassignpush_frontpop_frontpush_backpop_backinserteraseswapresizeclearspliceremoveremove_ifuniquemergesortreverse關系運算符重載(非成員函數) list的模擬實現結點類迭…

Redis持久化:

什么是Redis持久化: Redis 持久化是指將 Redis 內存中的數據保存到硬盤等持久化存儲介質中,以便在 Redis 服務器重啟或出現故障時能夠恢復數據,保證數據的可靠性和持續性。Redis 提供了兩種主要的持久化方式:RDB(Redi…

VBA 64位API聲明語句第009講

跟我學VBA,我這里專注VBA, 授人以漁。我98年開始,從源碼接觸VBA已經20余年了,隨著年齡的增長,越來越覺得有必要把這項技能傳遞給需要這項技術的職場人員。希望職場和數據打交道的朋友,都來學習VBA,利用VBA,起碼可以提高…

在pycharm profession 2020.3將.py程序使用pyinstaller打包成exe

一、安裝pyinstaller 在pycharm的項目的Terminal中運行pip3 install pyinstaller即可。 安裝后在Terminal中輸入pip3 list看一下是否成功 二、務必在在項目的Terminal中輸入命令打包,命令如下: python3 -m PyInstaller --noconsole --onefile xxx.py …

Unity SpriteRenderer(精靈渲染器)

🏆 個人愚見,沒事寫寫筆記 🏆《博客內容》:Unity3D開發內容 🏆🎉歡迎 👍點贊?評論?收藏 🔎SpriteRenderer:精靈渲染器 💡Sprite Renderer是精靈渲染器,所有…

2.LED燈的控制和按鍵檢測

目錄 STM32F103的GPIO口 GPIO口的作用 GPIO口的工作模式 input輸入檢測 -- 向內檢測 output控制輸出 -- 向外輸出 寄存器 寄存器地址的確定 配置GPIO口的工作模式 時鐘的開啟和關閉 軟件編程驅動 LED 燈 硬件 軟件 軟件編程驅動 KEY 按鍵 硬件 軟件 按鍵消抖 代碼 STM32F…

Flink 的狀態機制

在實時流處理領域,狀態管理是構建復雜業務邏輯的核心能力。Apache Flink 通過統一的狀態抽象和高效的容錯機制,為開發者提供了從毫秒級窗口聚合到 TB 級歷史數據關聯的全場景支持。本文將深入剖析 Flink 狀態機制的底層原理,結合實際案例展示…

【查看.ipynp 文件】

目錄 如何打開 .ipynb 文件? 如果確實是 .ipynp 文件: .ipynp 并不是常見的 Jupyter Notebook 文件格式。通常,Jupyter Notebook 文件的擴展名是 .ipynb(即 Interactive Python Notebook)。如果你遇到的是 .ipynb 文…

Runnable組件重試機制降低程序錯誤率

一、LangChain 重試機制深度解析 當構建生產級AI應用時,with_retry() 機制可有效提升系統容錯性,典型應用場景包括: API調用頻率限制時的自動恢復模型服務臨時不可用的故障轉移網絡波動導致的瞬時異常處理 參數詳解與配置策略 1. 參數配置…

k8s筆記——kubebuilder工作流程

kubebuilder工作流程 Kubebuilder 工作流程詳解 Kubebuilder 是 Kubernetes 官方推薦的 Operator 開發框架,用于構建基于 Custom Resource Definitions (CRD) 的控制器。以下是其核心工作流程的完整說明: 1. 初始化項目 # 創建項目目錄 mkdir my-opera…

Java框架“若依RuoYi”前后端分離部署

運行環境 Eclipse IDE for Enterprise Java and Web Developers 下載Eclipse解壓Eclipse到文件夾 Maven 下載Maven解壓Maven到文件夾配置環境變量MAVEN_HOME為Maven安裝位置配置環境變量path為%MAVEN_HOME%\bin Redis 下載Redis解壓Redis到文件夾配置環境變量path為Redis安裝位…

游戲引擎學習第249天:清理調試宏

歡迎大家,讓我們直接進入調試代碼的改進工作 接下來,我們來看一下上次停留的位置。如果我沒記錯的話,上一場直播的結尾我有提到一些我想做的事情,并且在代碼中留下了一個待辦事項。所以也許我們今天首先做的就是解決這個問題。但…

二極管反向恢復的定義和原理

二極管的反向恢復定義 二極管的反向恢復是指二極管從正向導通狀態切換到反向阻斷狀態時,電流從正向變為負向并最終回到零所需的時間。具體過程如下: 正向導通:當二極管正向偏置時,電流可以順利通過,此時二極管處于導…

音視頻開發技術總結報告

音視頻開發技術總結報告 一、音視頻開發基礎 1、音頻基礎 聲音原理 聲波特性:頻率、振幅、波長人耳聽覺范圍:20Hz-20kHz聲音三要素:音調、音量、音色 數字音頻基礎 采樣率:常見44.1kHz、48kHz、96kHz量化位數:8bit、…

中間件和組件

文章目錄 1. 前言2. 中間件介紹3. 組件介紹4. 區別對比5. 簡單類比6. 總結 中間件和組件 1. 前言 中間件和組件是軟件開發中兩個重要的概念,但它們的定位和作用完全不同。中間件解決的事通信、跨系統、安全等問題,組件是解決具體業務模塊,提高…

AI超級智能體教程(五)---自定義advisor擴展+結構化json輸出

文章目錄 1.自定義攔截器1.2自定義Advisor1.2打斷點調試過程1.3Re-reading Advisor自定義實現 2.戀愛報告開發--json結構化輸出2.1原理介紹2.1代碼實現2.3編寫測試用例2.4結構化輸出效果 1.自定義攔截器 1.2自定義Advisor spring里面的這個默認的是SimpleloggerAdvisor&#…

02_使用 AES 算法實現文件加密上傳至阿里云、解密下載

02_使用 AES 算法實現文件加密上傳至阿里云、解密下載 一、文件上傳下載接口 controller 層 RestController RequestMapping("/api/common/file") Api(tags "公共文件上傳") AllArgsConstructor Slf4j public class FileV2Controller {private final Os…

力扣:24兩兩交換鏈表的節點

目錄 1.題目描述: 2.算法思路: 3.代碼展示: 1.題目描述: 給你一個鏈表,兩兩交換其中相鄰的節點,并返回交換后鏈表的頭節點。你必須在不修改節點內部的值的情況下完成本題(即,只能…

smss源代碼分析之smss!SmpLoadSubSystemsForMuSession函數分析加載csrss.exe

第一部分: Next SmpSubSystemsToLoad.Flink; while ( Next ! &SmpSubSystemsToLoad ) { p CONTAINING_RECORD( Next, SMP_REGISTRY_VALUE, Entry )…