基於STM32F103可調時鐘萬年曆的實現

2021-10-20 12:36:54 字數 1664 閱讀 2123

總結

一、如何用stm32f103內部rtc實現可調時鐘萬年曆?

通常我們都是利用微控制器驅動外設來實現可調時鐘萬年曆的,但是如果手裡沒有相應的外設又想做乙個可調時鐘萬年曆怎麼辦,先不要著急,找乙個stm32微控制器我們利用其內部rtc就可以實現,是不是方便了好多呀。

int

main

(void

)lcd_shownum(60

,162

,calendar.hour,2,

16);lcd_shownum(84

,162

,calendar.min,2,

16);lcd_shownum

(108

,162

,calendar.sec,2,

16); led0=

!led0;

keynum =

key_scan(0

);if(keynum==1)

//設定

else

if(keynum==3)

//設定

else

if(keynum==2)

//關聲音

}delay_ms(10

);};

}

void

main_set()

//時鐘萬年曆調時函式

}else

if(keynum>1)

if(state==1)

//設定秒,我這裡秒不作為可設定開放所以注釋掉了

else

if(state==2)

//設定分

else

if(state==3)

//設定時

// else if(state==4)//設定周,我這裡周不作為可設定開放所以注釋掉了

//

else

if(state==4)

//設定日

else

if(state==5)

//設定月

else

if(state==6)

//設定年,這裡年只開放2000-2023年的設定

else}if

(state==0)

}}

void

alarm_set()

//調鬧鈴函式

}else

if(keynum>1)

if(state==1)

//設定秒

else

if(state==2)

//設定分

else

if(state==3)

//設定時

// else if(state==4)//設定周

//

else

if(state==4)

//設定日

else

if(state==5)

//設定月

else

if(state==6)

//設定年

else}if

(state==0)

}}

以上就是今天分享的內容,本文僅僅簡單介紹了stm32如何實現可調萬年曆的方法及主要程式的思想,由於時間的原因,日後再行完善哈哈哈。

STM32F103 時鐘配置

stm32f103外部8m的振盪器,經過倍頻後最高可以達到72m。void rcc deinit void 將外設rcc暫存器重設為預設值 void rcc hseconfig u32 rcc hse 設定外部高速晶振 hse rcc hse 取值如下 rcc hse offhse晶振off rcc...

STM32F103 時鐘配置

由於stm32的庫預設是外部晶振8m的情況下實現的,所以配置波特率的時候也是按8m,包括主頻,如果用12m晶振就需要改動幾個地方 在system stm32f10x.c中找到相應型別的檔案,進行如下修改。1 72m主頻 8m時 rcc cfgr uint32 t rcc cfgr pllsrc hs...

基於stm32f103的矩陣鍵盤

我現在的任務是做乙個8 8的矩陣鍵盤,制pcb版之前,我用電路板搭了乙個3 3的矩陣鍵盤來模擬一下,設定pa0 pa1 pa2為pp輸出,設定p3 p4 p5下拉輸入。大多數的晶元內部上拉或下拉電阻都是弱上拉或弱下拉,stm32f103的內部也一樣,內部上拉或下拉的電阻阻值約為40k,這樣可以方便外...