娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

STM32CubeMX之RTC電子鐘

發(fā)布者:心靈之旅最新更新時間:2024-04-30 來源: elecfans關(guān)鍵字:STM32CubeMX  RTC  電子鐘 手機(jī)看文章 掃描二維碼
隨時隨地手機(jī)看文章

1.簡介

實時時鐘是一個獨立的定時器。 RTC模塊擁有一組連續(xù)計數(shù)的計數(shù)器,在相應(yīng)軟件配置下,可提供時鐘日歷的功能。修改計數(shù)器的值可以重新設(shè)置系統(tǒng)當(dāng)前的時間和日期。

2.特性

?● 可編程的預(yù)分頻系數(shù):分頻系數(shù)最高為220。
?● 32位的可編程計數(shù)器,可用于較長時間段的測量。
?● 2個分離的時鐘:用于APB1接口的PCLK1和RTC時鐘(RTC時鐘的頻率必須小于PCLK1時鐘頻率的四分之一以上)。
?● 可以選擇以下三種RTC的時鐘源:
─ HSE時鐘除以128;
─ LSE振蕩器時鐘;
─ LSI振蕩器時鐘
?● 3個專門的可屏蔽中斷:
─ 鬧鐘中斷,用來產(chǎn)生一個軟件可編程的鬧鐘中斷。
─ 秒中斷,用來產(chǎn)生一個可編程的周期性中斷信號(最長可達(dá)1秒)。
─ 溢出中斷,指示內(nèi)部可編程計數(shù)器溢出并回轉(zhuǎn)為0的狀態(tài)。


3.軟件設(shè)計

?3.1 選擇RTC時鐘源

在這里插入圖片描述

3.2 RTC配置

在這里插入圖片描述watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

3.3 配置RTC時鐘源

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

4.生成代碼

?4.1 RTC初始化

在有后備電池供電情況下,為了保證掉電后電子鐘數(shù)據(jù)持續(xù)更新,我們需要開啟后備驅(qū)動。

/*檢查后備區(qū)域是否寫入數(shù)據(jù)*/

  if(HAL_RTCEx_BKUPRead(&hrtc,RTC_BKP_DR1)==0x12)

  {

    return ;

  }

  else HAL_RTCEx_BKUPWrite(&hrtc,RTC_BKP_DR1,0x12);//寫入標(biāo)志位,表示RTC時間配置好,防止重置時間

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

4.2 開時鐘,開RTC中斷

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_7#pic_center

4.3 RTC中斷

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

void RTC_IRQHandler(void)

{

  /* USER CODE BEGIN RTC_IRQn 0 */

  RTC_TimeTypeDef sTime = {0};

  RTC_DateTypeDef DateToUpdate = {0};

  /* USER CODE END RTC_IRQn 0 */

  HAL_RTCEx_RTCIRQHandler(&hrtc);

  /* USER CODE BEGIN RTC_IRQn 1 */

if(HAL_RTC_GetTime(&hrtc,&sTime,RTC_FORMAT_BIN)==HAL_OK)

{

printf('%d:%d:%d  ',sTime.Hours,sTime.Minutes,sTime.Seconds);

}

if(HAL_RTC_GetDate(&hrtc,&DateToUpdate,RTC_FORMAT_BIN)==HAL_OK)

{

printf('%d/%d/%d  星期:%drn',DateToUpdate.Year,DateToUpdate.Month,DateToUpdate.Date,DateToUpdate.WeekDay);

}

  /* USER CODE END RTC_IRQn 1 */

}

4.4 時間顯示和校準(zhǔn)

  if(usart1_flag)

    {

      printf('%srn',usart1_buff_rx);

      if(usart1_buff_rx[0]== '*')

      {

        DateToUpdate.Year=(usart1_buff_rx[3]-'0')*10+(usart1_buff_rx[4]-'0')*1;//年

        DateToUpdate.Month=(usart1_buff_rx[5]-'0')*10+(usart1_buff_rx[6]-'0')*1;//月

        DateToUpdate.Date=(usart1_buff_rx[7]-'0')*10+(usart1_buff_rx[8]-'0')*1;//日


        sTime.Hours=(usart1_buff_rx[9]-'0')*10+(usart1_buff_rx[10]-'0')*1;

        sTime.Minutes=(usart1_buff_rx[11]-'0')*10+(usart1_buff_rx[12]-'0')*1;

        sTime.Seconds=(usart1_buff_rx[13]-'0')*10+(usart1_buff_rx[14]-'0')*1;

        printf('%d/%d/%d -- %d:%d:%drn',DateToUpdate.Year,DateToUpdate.Month,DateToUpdate.Date,sTime.Hours,sTime.Minutes,sTime.Seconds);

        HAL_RTC_SetDate(&hrtc, &DateToUpdate,RTC_FORMAT_BIN);

        HAL_RTC_SetTime(&hrtc,&sTime,RTC_FORMAT_BIN);       

      }

      usart1_flag=0;

      usart1_count=0;

    }

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_centerpoYBAGKThW2AXQraAAdd0SZ8v9s622.png

關(guān)鍵字:STM32CubeMX  RTC  電子鐘 引用地址:STM32CubeMX之RTC電子鐘

上一篇:STM32之LWIP網(wǎng)絡(luò)協(xié)議棧移植步驟與方案
下一篇:stm32外部時鐘模式1和模式2區(qū)別

推薦閱讀最新更新時間:2025-06-15 05:29

STM32CubeMx圖形化配置工具的主要特征與安裝教程
STM32CubeMx簡介 STM32CubeMX 是意法半導(dǎo)體推出的圖形化配置工具, 通過傻瓜化的操作便能實現(xiàn)相關(guān)配置, 最終能夠生成 C 語言代碼, 支持多種工具鏈, 比如 MDK、 IARFor ARM、 TrueStudio 等。 STM32CubeMx主要特征 1. 直觀的 STM32 微控制器和微處理器選擇 2. 豐富易用的圖形用戶界面, 可配置 3. 具有自動解決沖突的引腳排列 4. 外設(shè)和中間層功能模式與參數(shù)約束的動態(tài)驗證 Arm?Cortex?-M 核心 5. 具有動態(tài)驗證配置的時鐘樹 6. 帶有估計功耗結(jié)果的電源序列 7. 初始化 C 代碼生成項目, 符合 IAR?, Keil?和 GCC 編譯, 運行 ARM
[單片機(jī)]
<font color='red'>STM32CubeMx</font>圖形化配置工具的主要特征與安裝教程
基于STM32cubemx的電磁智能車
一.硬件部分 必需:STM32F103C6T6(或者STM32F103C8T6),舵機(jī)(MG 996R),電機(jī)(TT馬達(dá) 130電機(jī)),L298n驅(qū)動,電磁桿(可以自己制作),干簧管,兩節(jié)18650電池,基礎(chǔ)四輪車模。 輔助:OLED,HC-05藍(lán)牙模塊。 二.軟件部分 必需:ADC多路采集的DMA配置,定時器PWM波輸出,普通GPIO口,濾波,歸一化,差比和,PID算法。 輔助:OLED驅(qū)動,串口打印。 1.舵機(jī) 三根線:VCC,GND,信號線。 我們給VCC接的6V。信號線接相應(yīng)PWM波輸出口。 舵機(jī)調(diào)中值:可以使用編碼器調(diào)節(jié)占空比,看舵機(jī)一共能夠轉(zhuǎn)動多少占空比的范圍(注意!舵機(jī)不是可以360度旋轉(zhuǎn)的)。然后取最中間的占空
[單片機(jī)]
基于<font color='red'>STM32cubemx</font>的電磁智能車
基于STM32設(shè)計的指針式電子鐘與萬年歷
1. 項目簡介 這是基于STM32設(shè)計的一個指針式電子鐘+萬年歷小項目,采用3.5寸的LCD屏顯示時鐘,日歷、溫度、天氣,支持觸摸屏調(diào)整設(shè)置時間,設(shè)置鬧鐘,查看日歷等等。整體項目主要是技術(shù)點就是LCD屏的圖形繪制。比如: 時鐘的時針繪制、分針、秒針、表盤、日歷繪制等等。 時鐘的時間是直接采用STM32本身的RTC時鐘,室內(nèi)的室溫數(shù)據(jù)采用DS18B20溫度傳感器獲取,STM32芯片的具體型號是STM32F103ZET6,只要是STM32F1系列的開發(fā)板,代碼都是可以通用的。 LCD顯示屏采用的正點原子的3.5寸TFT顯示屏,支持8080時序,自帶觸摸屏功能,觸摸屏是電阻屏,驅(qū)動芯片是XPT2046,SPI接口,通信非常方便。
[單片機(jī)]
基于STM32設(shè)計的指針式<font color='red'>電子鐘</font>與萬年歷
AT89C51單片機(jī)數(shù)字電子鐘的設(shè)計
一、 設(shè)計目的與要求 設(shè)計目的:通過設(shè)計,培養(yǎng)運用已學(xué)知識解決實際問題的能力、查閱資料的能力、自學(xué)能力和獨立分析問題、解決問題的能力和能通過獨立思考。 設(shè)計要求:設(shè)計一個時、分可調(diào)的數(shù)字電子鐘、斷電后將數(shù)據(jù)保存,開啟后時間將從斷電后時間繼續(xù)行走。 二、 設(shè)計內(nèi)容與方案制定 具有校時功能,按鍵控制電路其中時鍵、分鍵六個鍵分別控制時、分時間的調(diào)整。按下小時數(shù)實現(xiàn)對小時數(shù)加減,按下分鐘數(shù)實現(xiàn)對分鐘數(shù)進(jìn)行加減,并設(shè)置有復(fù)位鍵,啟始鍵。 以AT89C51單片機(jī)進(jìn)行實現(xiàn)秒、分、時上的正常顯示和進(jìn)位,其中顯示功能由單片機(jī)控制共陰極數(shù)碼管來實現(xiàn),數(shù)碼管進(jìn)行動態(tài)顯示。 通過AT24C02分別寫入時、分、秒數(shù)據(jù)在斷電后實現(xiàn)保存,在下次通電
[單片機(jī)]
AT89C51單片機(jī)數(shù)字<font color='red'>電子鐘</font>的設(shè)計
STM32CubeMX | 42 - 使用DMA2D加速顯存數(shù)據(jù)傳輸
一、使用CPU搬運數(shù)據(jù)到顯存 在上一篇文章中講述了如何配置 LTDC 驅(qū)動 RGB 屏幕: STM32CubeMX | 41-使用LTDC驅(qū)動TFT-LCD屏幕(RGB屏)。 本節(jié)中我們接著上一節(jié)的實驗,講述如何使用 DMA2D 實現(xiàn)打點、畫線、填充等函數(shù),只需要單層全屏即可,修改LTDC層配置如下: 1. 編寫lcd驅(qū)動頭文件 創(chuàng)建lcd_rgb_ltdc_drv.h文件,存放關(guān)于操作LCD屏幕的一些宏定義配置和函數(shù)定義: #ifndef _LCD_RGB_LTDC_DRV_H_ #define _LCD_RGB_LTDC_DRV_H_ #include ltdc.h /** * @brief Window
[單片機(jī)]
<font color='red'>STM32CubeMX</font> | 42 - 使用DMA2D加速顯存數(shù)據(jù)傳輸
STM32CUBEMX】增加自定義 Groups 問題
背景 最近在使用 STM32CUBEMX 生成工程,想新建幾個 Groups 放自己的文件。 平常自建的工程,我都是在 Manage Project Items 里面增加的。在使用STM32CUBEMX 生成的工程,發(fā)現(xiàn)每次在Manage Project Items 里面增加Groups,Keil 直接就崩了,壓根就建不上。下圖中的InterFace就是我自建的 Groups ,點擊 “OK” ,Keil 就會崩掉。 解決方法 可以右鍵“Target XX”,下拉菜單里面有個選項“Add Groups”,使用“Add Groups”就可以新建 Groups。 在新建完后,可以在 Manage Project Items
[單片機(jī)]
【<font color='red'>STM32CUBEMX</font>】增加自定義 Groups 問題
STM32CubeMx + SD Card + FatFs 讀寫SD卡死等問題
Cube Mx使用較新版本 Version:4.24.0 MDK v5.20 STM32F429ZGT6 兩年以前記得試過SD卡讀寫,好像不是單純的Read和Write,應(yīng)該是用了文件系統(tǒng),很順利的試驗成功了,所以源碼和記錄都沒留,這次要做一個新的板子,真所謂苦難重重啊,到現(xiàn)在32.768K的晶振一直沒起振,由原來的10P電容換了6P的,還是不行,應(yīng)該說偶爾可以,但生產(chǎn)代碼中MX_RTC_Init() 依然死在里面,LSE未就緒啊~, 言歸正傳,寫了一個試驗SD卡的程序,f_open 死在路上了,經(jīng)調(diào)試發(fā)現(xiàn)ReadStatus 始終不會置1,唯一修改其值的方法BSP_SD_ReadCpltCallback根本沒人調(diào)用,先是懷疑自己
[單片機(jī)]
STM32CubeMX下FPU,DSP庫的移植
1.關(guān)于FPU的移植 只要是硬件帶有FPU功能的芯片,F(xiàn)PU的使用一般都是默認(rèn)開啟的。也可在Options選項卡中自行選擇; 2.關(guān)于DSP庫的移植 使用STM32的DSP庫一定要開啟FPU功能 使用STM32CubeMx生成的項目工程中,一般都包含了STM32的DSP庫(存在于CMSIS中),不過需要根據(jù)硬件的大小端模式選擇相應(yīng)的DSP庫。其DSP庫位于: 固件庫安裝路徑+ \STM32Cube\Repository\STM32Cube_FW_F4_V1.16.0\Drivers\CMSIS\Lib\ARM 其中arm_cortexM4b_math.lib代表設(shè)備為大端模式; 其中arm_cortexM4bf_math
[單片機(jī)]
小廣播
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 防城港市| 凯里市| 资阳市| 正镶白旗| 环江| 卓资县| 沂水县| 双峰县| 边坝县| 湘西| 十堰市| 四会市| 淅川县| 丹江口市| 高安市| 梅州市| 建始县| 临武县| 扬中市| 永州市| 和田市| 兖州市| 花莲市| 宜宾市| 壶关县| 蛟河市| 府谷县| 孟村| 铜山县| 洛阳市| 都匀市| 象山县| 灵川县| 康保县| 永仁县| 江华| 登封市| 姚安县| 张家界市| 怀化市| 温宿县|