| Periph ID AIC | Symbol | Description |
|---|---|---|
| 1 | (AT91C_ID_SYS) | System Peripheral |
| Function | Description |
|---|---|
| AT91F_RTC_CfgPMC | Enable Peripheral clock in PMC for RTC |
| Offset | Field | Description |
|---|---|---|
| 0x0 | RTC_CR | Control Register |
| 0x4 | RTC_MR | Mode Register |
| 0x8 | RTC_TIMR | Time Register |
| 0xC | RTC_CALR | Calendar Register |
| 0x10 | RTC_TIMALR | Time Alarm Register |
| 0x14 | RTC_CALALR | Calendar Alarm Register |
| 0x18 | RTC_SR | Status Register |
| 0x1C | RTC_SCCR | Status Clear Command Register |
| 0x20 | RTC_IER | Interrupt Enable Register |
| 0x24 | RTC_IDR | Interrupt Disable Register |
| 0x28 | RTC_IMR | Interrupt Mask Register |
| 0x2C | RTC_VER | Valid Entry Register |
| Function | Description |
|---|---|
| AT91F_RTC_InterruptEnable | Enable RTC Interrupt |
| AT91F_RTC_InterruptDisable | Disable RTC Interrupt |
| AT91F_RTC_IsInterruptMasked | Test if RTC Interrupt is Masked |
| AT91F_RTC_GetInterruptMaskStatus | Return RTC Interrupt Mask Status |
| Offset | Name | Description | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | RTC_UPDTIM AT91C_RTC_UPDTIM | Update Request Time Register 0 = No effect. 1 = Stops the RTC time counting. Time counting consists of second, minute and hour counters. Time counters can be programmed once this bit is set and acknowledged by the bit ACKUPD of the Status Register. | |||||||||||||||
| 1 | RTC_UPDCAL AT91C_RTC_UPDCAL | Update Request Calendar Register 0 = No effect. 1 = Stops the RTC calendar counting. Calendar counting consists of day, date, month, year and century counters. Calendar counters can be programmed once this bit is set. | |||||||||||||||
| 9..8 | RTC_TIMEVSEL AT91C_RTC_TIMEVSEL | Time Event Selection The event that generates the flag TIMEV in RTC_SR (Status Register) depends on the value of TIMEVSEL.
| |||||||||||||||
| 17..16 | RTC_CALEVSEL AT91C_RTC_CALEVSEL | Calendar Event Selection The event that generates the flag CALEV in RTC_SR depends on the value of CALEVSEL.
|
| Offset | Name | Description |
|---|---|---|
| 0 | RTC_HRMOD AT91C_RTC_HRMOD | 12-24 hour Mode 0 = 24-hour mode is selected. 1 = 12-hour mode is selected. All non-significant bits read zero. |
| Offset | Name | Description |
|---|---|---|
| 6..0 | RTC_SEC AT91C_RTC_SEC | Current Second The range that can be set is 0-59 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| 14..8 | RTC_MIN AT91C_RTC_MIN | Current Minute The range that can be set is 0-59 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| 20..16 | RTC_HOUR AT91C_RTC_HOUR | Current Hour The range that can be set is 1-12 (BCD) in 12-hour mode or 0-23 (BCD) in 24-hour mode. |
| 22 | RTC_AMPM AT91C_RTC_AMPM | Ante Meridiem, Post Meridiem Indicator This bit is the AM/PM indicator in 12-hour mode. 0 = AM. 1 = PM. All non-significant bits read zero. |
| Offset | Name | Description |
|---|---|---|
| 5..0 | RTC_CENT AT91C_RTC_CENT | Current Century The range that can be set is 19-20 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| 15..8 | RTC_YEAR AT91C_RTC_YEAR | Current Year The range that can be set is 00-99 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| 20..16 | RTC_MONTH AT91C_RTC_MONTH | Current Month The range that can be set is 01-12 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| 23..21 | RTC_DAY AT91C_RTC_DAY | Current Day The range that can be set is 1-7 (BCD). The significance of the number (which number represents which day) is user defined as it has no effect on the date counter. |
| 29..24 | RTC_DATE AT91C_RTC_DATE | Current Date The range that can be set is 01-31 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| Offset | Name | Description |
|---|---|---|
| 6..0 | RTC_SEC AT91C_RTC_SEC | Current Second The range that can be set is 0-59 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| 7 | RTC_SECEN AT91C_RTC_SECEN | Second Alarm Enable 0 = The second-matching alarm is disabled. 1 = The second-matching alarm is enabled. |
| 14..8 | RTC_MIN AT91C_RTC_MIN | Current Minute The range that can be set is 0-59 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| 15 | RTC_MINEN AT91C_RTC_MINEN | Minute Alarm 0 = The minute-matching alarm is disabled. 1 = The minute-matching alarm is enabled. |
| 20..16 | RTC_HOUR AT91C_RTC_HOUR | Current Hour The range that can be set is 1-12 (BCD) in 12-hour mode or 0-23 (BCD) in 24-hour mode. |
| 22 | RTC_AMPM AT91C_RTC_AMPM | Ante Meridiem, Post Meridiem Indicator This bit is the AM/PM indicator in 12-hour mode. 0 = AM. 1 = PM. All non-significant bits read zero. |
| 23 | RTC_HOUREN AT91C_RTC_HOUREN | Current Hour 0 = The hour-matching alarm is disabled. 1 = The hour-matching alarm is enabled. |
| Offset | Name | Description |
|---|---|---|
| 20..16 | RTC_MONTH AT91C_RTC_MONTH | Current Month The range that can be set is 01-12 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| 23 | RTC_MONTHEN AT91C_RTC_MONTHEN | Month Alarm Enable 0 = The month-matching alarm is disabled. 1 = The month-matching alarm is enabled. |
| 29..24 | RTC_DATE AT91C_RTC_DATE | Current Date The range that can be set is 01-31 (BCD). The lowest four bits encode the units. The higher bits encode the tens. |
| 31 | RTC_DATEEN AT91C_RTC_DATEEN | Date Alarm Enable 0 = The date-matching alarm is disabled. 1 = The date-matching alarm is enabled. |
| Offset | Name | Description |
|---|---|---|
| 0 | RTC_ACKUPD AT91C_RTC_ACKUPD | Acknowledge for Update 0 = Time and Calendar registers cannot be updated. 1 = Time and Calendar registers can be updated. |
| 1 | RTC_ALARM AT91C_RTC_ALARM | Alarm Flag 0 = No alarm matching condition occurred. 1 = An alarm matching condition has occurred. |
| 2 | RTC_SECEV AT91C_RTC_SECEV | Second Event 0 = No second event has occurred since the last clear. 1 = At least one second event has occurred since the last clear. |
| 3 | RTC_TIMEV AT91C_RTC_TIMEV | Time Event 0 = No time event has occurred since the last clear. 1 = At least one time event has occurred since the last clear. The time event is selected in the TIMEVSEL field in RTC_CTRL (Control Register) and can be any one of the following events: minute change, hour change, noon, midnight (day change). |
| 4 | RTC_CALEV AT91C_RTC_CALEV | Calendar event 0 = No calendar event has occurred since the last clear. 1 = At least one calendar event has occurred since the last clear. The calendar event is selected in the CALEVSEL field in RTC_CTRL and can be any one of the following events: week change, month change, year change.s |
| Offset | Name | Description |
|---|---|---|
| 0 | RTC_ACKUPD AT91C_RTC_ACKUPD | Acknowledge for Update 0 = Time and Calendar registers cannot be updated. 1 = Time and Calendar registers can be updated. |
| 1 | RTC_ALARM AT91C_RTC_ALARM | Alarm Flag 0 = No alarm matching condition occurred. 1 = An alarm matching condition has occurred. |
| 2 | RTC_SECEV AT91C_RTC_SECEV | Second Event 0 = No second event has occurred since the last clear. 1 = At least one second event has occurred since the last clear. |
| 3 | RTC_TIMEV AT91C_RTC_TIMEV | Time Event 0 = No time event has occurred since the last clear. 1 = At least one time event has occurred since the last clear. The time event is selected in the TIMEVSEL field in RTC_CTRL (Control Register) and can be any one of the following events: minute change, hour change, noon, midnight (day change). |
| 4 | RTC_CALEV AT91C_RTC_CALEV | Calendar event 0 = No calendar event has occurred since the last clear. 1 = At least one calendar event has occurred since the last clear. The calendar event is selected in the CALEVSEL field in RTC_CTRL and can be any one of the following events: week change, month change, year change.s |
| Offset | Name | Description |
|---|---|---|
| 0 | RTC_ACKUPD AT91C_RTC_ACKUPD | Acknowledge for Update 0 = Time and Calendar registers cannot be updated. 1 = Time and Calendar registers can be updated. |
| 1 | RTC_ALARM AT91C_RTC_ALARM | Alarm Flag 0 = No alarm matching condition occurred. 1 = An alarm matching condition has occurred. |
| 2 | RTC_SECEV AT91C_RTC_SECEV | Second Event 0 = No second event has occurred since the last clear. 1 = At least one second event has occurred since the last clear. |
| 3 | RTC_TIMEV AT91C_RTC_TIMEV | Time Event 0 = No time event has occurred since the last clear. 1 = At least one time event has occurred since the last clear. The time event is selected in the TIMEVSEL field in RTC_CTRL (Control Register) and can be any one of the following events: minute change, hour change, noon, midnight (day change). |
| 4 | RTC_CALEV AT91C_RTC_CALEV | Calendar event 0 = No calendar event has occurred since the last clear. 1 = At least one calendar event has occurred since the last clear. The calendar event is selected in the CALEVSEL field in RTC_CTRL and can be any one of the following events: week change, month change, year change.s |
| Offset | Name | Description |
|---|---|---|
| 0 | RTC_ACKUPD AT91C_RTC_ACKUPD | Acknowledge for Update 0 = Time and Calendar registers cannot be updated. 1 = Time and Calendar registers can be updated. |
| 1 | RTC_ALARM AT91C_RTC_ALARM | Alarm Flag 0 = No alarm matching condition occurred. 1 = An alarm matching condition has occurred. |
| 2 | RTC_SECEV AT91C_RTC_SECEV | Second Event 0 = No second event has occurred since the last clear. 1 = At least one second event has occurred since the last clear. |
| 3 | RTC_TIMEV AT91C_RTC_TIMEV | Time Event 0 = No time event has occurred since the last clear. 1 = At least one time event has occurred since the last clear. The time event is selected in the TIMEVSEL field in RTC_CTRL (Control Register) and can be any one of the following events: minute change, hour change, noon, midnight (day change). |
| 4 | RTC_CALEV AT91C_RTC_CALEV | Calendar event 0 = No calendar event has occurred since the last clear. 1 = At least one calendar event has occurred since the last clear. The calendar event is selected in the CALEVSEL field in RTC_CTRL and can be any one of the following events: week change, month change, year change.s |
| Offset | Name | Description |
|---|---|---|
| 0 | RTC_ACKUPD AT91C_RTC_ACKUPD | Acknowledge for Update 0 = Time and Calendar registers cannot be updated. 1 = Time and Calendar registers can be updated. |
| 1 | RTC_ALARM AT91C_RTC_ALARM | Alarm Flag 0 = No alarm matching condition occurred. 1 = An alarm matching condition has occurred. |
| 2 | RTC_SECEV AT91C_RTC_SECEV | Second Event 0 = No second event has occurred since the last clear. 1 = At least one second event has occurred since the last clear. |
| 3 | RTC_TIMEV AT91C_RTC_TIMEV | Time Event 0 = No time event has occurred since the last clear. 1 = At least one time event has occurred since the last clear. The time event is selected in the TIMEVSEL field in RTC_CTRL (Control Register) and can be any one of the following events: minute change, hour change, noon, midnight (day change). |
| 4 | RTC_CALEV AT91C_RTC_CALEV | Calendar event 0 = No calendar event has occurred since the last clear. 1 = At least one calendar event has occurred since the last clear. The calendar event is selected in the CALEVSEL field in RTC_CTRL and can be any one of the following events: week change, month change, year change.s |
| Offset | Name | Description |
|---|---|---|
| 0 | RTC_NVTIM AT91C_RTC_NVTIM | Non valid Time 0 = No invalid data has been detected in RTC_TIMR (Time Register). 1 = RTC_TIMR has contained invalid data since it was last programmed. |
| 1 | RTC_NVCAL AT91C_RTC_NVCAL | Non valid Calendar 0 = No invalid data has been detected in RTC_CALR (Calendar Register). 1 = RTC_CALR has contained invalid data since it was last programmed. |
| 2 | RTC_NVTIMALR AT91C_RTC_NVTIMALR | Non valid time Alarm 0 = No invalid data has been detected in RTC_TIMALR (Time Alarm Register). 1 = RTC_TIMALR has contained invalid data since it was last programmed. |
| 3 | RTC_NVCALALR AT91C_RTC_NVCALALR | Nonvalid Calendar Alarm 0 = No invalid data has been detected in RTC_CALALR (Calendar Alarm Register). 1 = RTC_CALALR has contained invalid data since it was last programmed. |