日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]F4的RTC與F1的RTC有很大的差別。F1系列的RTC就是一個(gè)簡單的計(jì)數(shù)器,要想獲得時(shí)間,得自己計(jì)算。F4的就不需要這么麻煩了,讀出來的直接就是時(shí)間?!局饕攸c(diǎn)】STM32F4的RTC是一個(gè)獨(dú)立的BCD/時(shí)鐘計(jì)數(shù)器。RTC提供時(shí)間日

F4的RTC與F1的RTC有很大的差別。F1系列的RTC就是一個(gè)簡單的計(jì)數(shù)器,要想獲得時(shí)間,得自己計(jì)算。F4的就不需要這么麻煩了,讀出來的直接就是時(shí)間。

【主要特點(diǎn)】

STM32F4的RTC是一個(gè)獨(dú)立的BCD/時(shí)鐘計(jì)數(shù)器。RTC提供時(shí)間日歷和兩路鬧鐘中斷,一個(gè)具有中斷能力的周期可編程的環(huán)形標(biāo)志。他哦南方是RTC還具有管理低功耗模式的喚醒單元。

RTC的秒、分、小時(shí)、日期、月、年以BCD碼的形式存儲在一個(gè)32位寄存器中。

每月的天數(shù)自動(dòng)處理,同時(shí)還具有日間省電功能??删幊痰聂[鐘信息存儲在另一個(gè)寄存器中。

數(shù)字標(biāo)定(校準(zhǔn))功能,可用于處理晶振的偏差

上電時(shí),RTC寄存器被保護(hù)以防止誤寫入數(shù)據(jù)。

不論MCU處于那種工作模式,只要供電電壓在可操作范圍,RTC就不會停止。

【RTC時(shí)鐘】

RTC時(shí)鐘可以使用LSE、LSI和不大于1M的HSE作為時(shí)鐘,對時(shí)鐘分頻可得到1HZ的時(shí)鐘供RTC使用。

本實(shí)驗(yàn)DISCOVERY板子上沒有LSE,外接晶振8M,也不能用。做RTC實(shí)驗(yàn)只能使用LSI時(shí)鐘。

這個(gè)實(shí)驗(yàn)首先應(yīng)使能LSI時(shí)鐘。并將LSI時(shí)鐘設(shè)置成RTC時(shí)鐘。被操作是通過RCC設(shè)置的,在RTC部分沒有配置這個(gè)的寄存器:

RCC_LSICmd(ENABLE);
while(RCC_GetFlagStatus(RCC_FLAG_LSIRDY) == RESET);
RCC_RTCCLKConfig(RCC_RTCCLKSource_LSI);

RCC_RTCCLKCmd(ENABLE);
RTC_WaitForSynchro();

【RTC初始化】

上電時(shí),RTC寄存器寫保護(hù)。要打開寫操作,需要向RTC_WPR寄存器中寫一個(gè)序列。先寫入0xCA,再寫入0x53即可關(guān)閉寫保護(hù)。寫別的數(shù)據(jù)將關(guān)閉寫保護(hù),比如寫入0x00等。

日歷初始化和配置

按照以下步驟設(shè)置RTC的時(shí)間日期以及對時(shí)鐘輸入的預(yù)分頻:

1、設(shè)置初始化和狀態(tài)寄存器RTC_ISR中的INIT為為1進(jìn)入初始化模式。在這個(gè)模式下,RTC時(shí)間寄存器計(jì)數(shù)停止,可被更新

2、判斷RTC_ISR中的INITF位,判斷RTC是否已經(jīng)被初始化過。當(dāng)讀出數(shù)據(jù)為1時(shí),即可進(jìn)入初始化模式。這個(gè)過程將持續(xù)大約兩個(gè)RTC時(shí)鐘周期

3、為了得到1Hz的計(jì)數(shù)器時(shí)鐘,先對RTC_PRER寄存器中的同步分頻值PREDIV_S[14:0]進(jìn)行設(shè)置再對該寄存器中的一部分頻值PREDIV_A[6:0]進(jìn)行設(shè)置。即使只有一個(gè)分頻值需要寫入,另一個(gè)分頻值也需要再寫入一遍。

4、將要設(shè)置的時(shí)間和日期寫入RTC_CR和RTC_DR的影子寄存器,在RTC_CR中設(shè)置時(shí)間格式。

5、向INTI位寫入0,退出初始化模式。這是,RTC_DR和RTC_CR就會將日期信息從影子寄存器中加載到寄存器中,并在4個(gè)RTC時(shí)鐘周期后自動(dòng)開始運(yùn)行。

實(shí)現(xiàn)代碼如下:

void RTC_Config(void)
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR,ENABLE);
PWR_BackupAccessCmd(ENABLE);//使能備份寄存器操作

RCC_LSICmd(ENABLE);
while(RCC_GetFlagStatus(RCC_FLAG_LSIRDY) == RESET);
RCC_RTCCLKConfig(RCC_RTCCLKSource_LSI);
RCC_RTCCLKCmd(ENABLE);
RTC_WaitForSynchro();

if(RTC_ReadBackupRegister(RTC_BKP_DR0) != 0x9527) //一個(gè)變量,看看RTC初始化沒
{

RTC_WriteProtectionCmd(DISABLE);

RTC_EnterInitMode();
RTC_InitStructure.RTC_HourFormat = RTC_HourFormat_24;
RTC_InitStructure.RTC_AsynchPrediv = 0x7D-1;
RTC_InitStructure.RTC_SynchPrediv = 0xFF-1;
RTC_Init(&RTC_InitStructure);

RTC_TimeStructure.RTC_Seconds = 0x00;
RTC_TimeStructure.RTC_Minutes = 0x01;
RTC_TimeStructure.RTC_Hours = 0x01;
RTC_TimeStructure.RTC_H12 = RTC_H12_AM;
RTC_SetTime(RTC_Format_BCD,&RTC_TimeStructure);

RTC_DateStructure.RTC_Date = 30;
RTC_DateStructure.RTC_Month = 5;
RTC_DateStructure.RTC_WeekDay= RTC_Weekday_Thursday;
RTC_DateStructure.RTC_Year = 12;
RTC_SetDate(RTC_Format_BCD,&RTC_DateStructure);

RTC_ExitInitMode();
RTC_WriteBackupRegister(RTC_BKP_DR0,0X9527);
RTC_WriteProtectionCmd(ENABLE);
RTC_WriteBackupRegister(RTC_BKP_DR0,0x9527); //初始化完成,設(shè)置標(biāo)志
}
PWR_BackupAccessCmd(DISABLE);
}

編譯運(yùn)行,在主函數(shù)中使用RTC_GetTime讀取時(shí)間。跟蹤到這里可以看到時(shí)間在變化

以后只要每次用RTC_GetTime就可以讀取時(shí)間了。

要設(shè)置時(shí)間,只需要用RTC_SetTime就行了,RTC_GetTime函數(shù)自己會打開寫保護(hù)。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢抑制與過流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉