
RTC Control Register Low
RTC register를 configure 하기 위해선 세곳의 레지스터 설정을 거쳐야 합니다.
RCC_BDCR(RCC Backup Domain Control Register)에서 Backup Domain에 clock공급을 해줘야 하며
PWR_CR(PWR Control Register)에서 Backup Domain에 걸려있는 write protection을 해제 시켜줘야 합니다.
그리고 마지막으로 이 곳! RTC_CRL에서 레지스터에 엑세스 한다는 인증 절차(?)를 거치면 비로소 RTC 레지스터를 설정 할 수 있게 됩니다.
Register map
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Reserved |
RTOFF |
CNF |
RSF |
OWF |
ALRF |
SECF | |||||||||
r |
rw |
rc_w0 |
rc_w0 |
rc_w0 |
rc_w0 |
Register Access Type[레지스터 설명을 보시려면 클릭!]
Address Offset
0x04
Reset Value
0x0020
bit 0
second flag Show/Hide bookmarks
0 : second flag condition not met // 1 : second flag condition met
bit 1
alarm flag
0 : alarm not detected // 1 : alarm deteted
bit 2
overflow flag
0 : overflow not detected // 1 : 32-bit programmable counter overflow occurred
bit 3
register synchronized flag
0 : register not yet synchronized // 1 : register synchronized
bit 4
configuration flag
0 : exit configuration mode // 1 : enter configuration mode
bit 5
RTC operation OFF
0 : last write operation on RTC register is still ongoing // 1 : last write operation on RTC register terminated
0,1,2번 bit는 flag라고 되있어서 처음엔 약간 의아했지만 pending 역할을 합니다.
0으로 클리어 함으로써 인터럽트 핸들러로 넘어간 작업을 다시 되돌리는 역할을 하죠.
그리고 프로그래밍을 하면서 RTC레지스터 설정을 하는 작업을 하신 다면 4과 5번 비트를 제일 많이 쓰시지 않을까 하네요.
RTC레지스터를 설정 하기 위해선 이 4,5번 비트를 설정 해야 합니다.
'RTC(Real Time Clock)' 카테고리의 다른 글
Reset and Clock Control (0) | 2009.08.27 |
---|---|
RCC_BDCR (0) | 2009.08.21 |