STM32單片機(jī)小Tips 玩轉(zhuǎn)IAR開發(fā)STM32
BKP還沒(méi)有搞完,怎么又換到了RTC上了,因?yàn)镽TC和BKP有些聯(lián)系,想不關(guān)聯(lián)還不行呢。
本文引用地址:http://m.butianyuan.cn/article/226866.htm以下是數(shù)據(jù)手冊(cè)上有關(guān)RTC的介紹:
RTC 簡(jiǎn)介
實(shí)時(shí)時(shí)鐘是一個(gè)獨(dú)立的定時(shí)器。RTC模塊擁有一組連續(xù)計(jì)數(shù)的計(jì)數(shù)器,在相應(yīng)軟件配置下,可提供時(shí)鐘日歷的功能。修改計(jì)數(shù)器的值可以重新設(shè)置系統(tǒng)當(dāng)前的時(shí)間和日期。RTC模塊和時(shí)鐘配置系統(tǒng)(RCC_BDCR寄存器)是在后備區(qū)域,即在系統(tǒng)復(fù)位或從待機(jī)模式喚醒后RTC的設(shè)置和時(shí)間維持不變。
系統(tǒng)復(fù)位后,禁止訪問(wèn)后備寄存器和RTC,防止對(duì)后備區(qū)域(BKP)的意外寫操作。執(zhí)行以下操作使能對(duì)后備寄存器和RTC的訪問(wèn):
● 設(shè)置寄存器RCC_APB1ENR的PWREN和BKPEN位來(lái)使能電源和后備接口時(shí)鐘
● 設(shè)置寄存器PWR_CR的DBP位使能對(duì)后備寄存器和RTC的訪問(wèn)。
解決方法
打開Options for Target項(xiàng),把那個(gè)Use MicroLIB前面打上勾,重新編譯鏈接即可。
出現(xiàn)問(wèn)題的原因,網(wǎng)上的相關(guān)解釋是:這是Printf庫(kù)函數(shù)的問(wèn)題,需要使用MicroLIB這個(gè)庫(kù)來(lái)替代默認(rèn)的庫(kù)。原因是默認(rèn)printf并非使用串口,所以要改掉。例子的運(yùn)行
即其中有提示RTC沒(méi)有初始化,要求進(jìn)行設(shè)置的提示,根據(jù)提示分別送入小時(shí),分鐘,秒的數(shù)值,即完成設(shè)置工作,程序不斷地將當(dāng)前時(shí)間通過(guò)串口送出。
STM32單片機(jī)小Tips之玩轉(zhuǎn)IAR,開發(fā)STM32
我選用keil,理由是keil比較熟,并且,如果需要用到IAR時(shí),肯定上手也很快。這回要用IAR了,看一看上手究竟快不快啦!
評(píng)論