作者chcc411135 ()
看板ASM
標題[請益] 關於STM32之RTC使用
時間Tue Apr 22 23:15:12 2014
各位大大 大家好~
本小魯第一次在這個版上發文,如果有冒犯的地方請見諒~~
最近剛開始研究STM32L100的晶片
想要做出一個RTC的calendar(萬年曆:我想要有日期、小時、分鐘),
可是一直無法如願完成....
我的方法:-------------------------------------------------------------------
使用STM32所提供的library("stm32l1xx_rtc.h"註:L小寫和1很像),
並按照他所說的步驟去做,
可是我將時間存入EEPROM後以UART傳至電腦端卻發現時間沒有改變...QAQ
想請問各位大大是否能給予小弟一些指點...
或者是推薦書籍、推薦網站之類呢?
我的程式如下:---------------------------------------------------------------
//RTC init-------------------------------------
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
PWR_RTCAccessCmd(ENABLE);
RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE);
RCC_RTCCLKCmd(ENABLE);
RTC_InitTypeDef *test;
RTC_TimeTypeDef *testtime;
RTC_EnterInitMode();
RTC_Init(kaitest);
RTC_ExitInitMode();
RTC_SetTime(0x000000001, testtime);
while(1){
RTC_GetTime(0x000000001, testtime);
time=testtime->RTC_Seconds;
I2C1_WrireByte(0xA0,mem_address, time);
//寫入EEPROM一定需要等 5ms 再讀取
delay_i(2000);
mem_address++;
//紀錄完要按下按鈕10秒 後,就會執行傳送 USART到電腦
//----------------------------------------------------------------
if(button_f==1){
button_f=0;
//Send USART Data
//-----------------------
//讀取 Device Addr=0xA0
for(unsigned long i=0;i<mem_address;i++){
e_dat=I2C1_ReadByte(0xA0,i);
USART_SendData(USART3, (uint8_t)e_dat);
delay_i(200);
}
}
}
----------------------------------------------------------------------------
文章很長,感謝各位耐心看完這麼多東西~~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.124.73.149
※ 文章網址: http://webptt.com/m.aspx?n=bbs/ASM/M.1398179714.A.8BB.html
1F:→ palapalaqoo:先看STM32的暫存器值有沒有變,再看EEPROM值有沒變 05/05 16:11