![]() |
AVR1631 - Energy Meter Reference Design with ATxmega32A4
Rev 1.0
|
XMEGA RTC driver header file. More...
#include "avr_compiler.h"Go to the source code of this file.
Macros | |
| #define | RTC_Busy() ( RTC.STATUS & RTC_SYNCBUSY_bm ) |
| This macro checks the RTC busy flag. | |
| #define | RTC_GetOverflowFlag() ( RTC.INTFLAGS & RTC_OVFIF_bm ) |
| This macro returns the status of the RTC overflow flag. | |
| #define | RTC_GetCompareFlag() ( RTC.INTFLAGS & RTC_COMPIF_bm ) |
| This macro returns the status of the RTC compare flag. | |
| #define | RTC_SetCount(_rtccnt) ( RTC.CNT = (_rtccnt) ) |
| This macro sets a new RTC count value. | |
| #define | RTC_GetCount() ( RTC.CNT ) |
| This macro returns the current RTC count value. | |
| #define | RTC_SetPeriod(_rtcper) ( RTC.PER = (_rtcper) ) |
| This macro sets a new RTC period. | |
| #define | RTC_GetPeriod() ( RTC.PER ) |
| This macro returns the current RTC period value. | |
| #define | RTC_SetCompareValue(_cmpVal) ( RTC.COMP = (_cmpVal) ) |
| This macro sets a new RTC compare value. | |
| #define | RTC_GetCompareValue() ( RTC.COMP ) |
| This macro returns the current RTC compare value. | |
Functions | |
| void | RTC_Initialize (uint16_t period, uint16_t count, uint16_t compareValue, RTC_PRESCALER_t prescaler) |
| This function initializes the RTC with period, initial count, compare value and clock prescaler. | |
| void | RTC_SetOverflowIntLevel (RTC_OVFINTLVL_t intLevel) |
| void | RTC_SetCompareIntLevel (RTC_COMPINTLVL_t intLevel) |
| void | RTC_SetIntLevels (RTC_OVFINTLVL_t ovfIntLevel, RTC_COMPINTLVL_t compIntLevel) |
| This function sets the RTC overflow interrupt level. | |
| void | RTC_SetAlarm (uint16_t alarmTimeout) |
| void | RTC_SetPrescaler (RTC_PRESCALER_t prescaler) |
XMEGA RTC driver header file.
This file contains the function prototypes and enumerator definitions for various configuration parameters for the XMEGA RTC driver. The driver is not intended for size and/or speed critical code, since most functions are just a few lines of code, and the function call overhead would decrease code performance. The driver is intended for rapid prototyping and documentation purposes for getting started with the XMEGA RTC module. For size and/or speed critical code, it is recommended to copy the function contents directly into your application instead of making a function call.
Copyright (c) 2008, Atmel Corporation All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Definition in file rtc_driver.h.
| #define RTC_Busy | ( | ) | ( RTC.STATUS & RTC_SYNCBUSY_bm ) |
This macro checks the RTC busy flag.
Definition at line 70 of file rtc_driver.h.
| #define RTC_GetCompareFlag | ( | ) | ( RTC.INTFLAGS & RTC_COMPIF_bm ) |
This macro returns the status of the RTC compare flag.
Definition at line 82 of file rtc_driver.h.
| #define RTC_GetCompareValue | ( | ) | ( RTC.COMP ) |
This macro returns the current RTC compare value.
This is the compare value of the RTC, which will be compared to the count sequence. The compare value must be less than the RTC period.
Definition at line 141 of file rtc_driver.h.
| #define RTC_GetCount | ( | ) | ( RTC.CNT ) |
This macro returns the current RTC count value.
This is the count value of the RTC, which will count up to the RTC period.
Definition at line 101 of file rtc_driver.h.
| #define RTC_GetOverflowFlag | ( | ) | ( RTC.INTFLAGS & RTC_OVFIF_bm ) |
This macro returns the status of the RTC overflow flag.
Definition at line 76 of file rtc_driver.h.
| #define RTC_GetPeriod | ( | ) | ( RTC.PER ) |
This macro returns the current RTC period value.
This is the period value of the RTC, which is the top of the count sequence.
Definition at line 120 of file rtc_driver.h.
| #define RTC_SetCompareValue | ( | _cmpVal | ) | ( RTC.COMP = (_cmpVal) ) |
This macro sets a new RTC compare value.
This is the compare value of the RTC, which will be compared to the count sequence. The compare value must be less than the RTC period.
| _cmpVal | The new compare value. |
Definition at line 132 of file rtc_driver.h.
| #define RTC_SetCount | ( | _rtccnt | ) | ( RTC.CNT = (_rtccnt) ) |
This macro sets a new RTC count value.
This is the count value of the RTC, which will count up to the RTC period.
| _rtccnt | The new count value. |
Definition at line 93 of file rtc_driver.h.
| #define RTC_SetPeriod | ( | _rtcper | ) | ( RTC.PER = (_rtcper) ) |
This macro sets a new RTC period.
This is the period value of the RTC, which is the top of the count sequence.
| _rtcper | The new RTC period. |
Definition at line 112 of file rtc_driver.h.
| void RTC_Initialize | ( | uint16_t | period, |
| uint16_t | count, | ||
| uint16_t | compareValue, | ||
| RTC_PRESCALER_t | prescaler | ||
| ) |
This function initializes the RTC with period, initial count, compare value and clock prescaler.
All the synchronized registers are written at the same time to save time. The program code need to check if the RTC is busy before calling this function. The RTC_Busy() function can be used to do this.
| period | RTC period. Topvalue = Period - 1. |
| count | Initial RTC count. |
| compareValue | Compare value. |
| prescaler | Clock prescaler setting. |
Definition at line 75 of file rtc_driver.c.
| void RTC_SetIntLevels | ( | RTC_OVFINTLVL_t | ovfIntLevel, |
| RTC_COMPINTLVL_t | compIntLevel | ||
| ) |
This function sets the RTC overflow interrupt level.
| intLevel | The overflow interrupt level. |
This function sets the RTC compare interrupt level.
| intLevel | The compare interrupt level. |
This function sets both compare and overflow interrupt levels in one go.
| ovfIntLevel | The overflow interrupt level. |
| compIntLevel | The compare interrupt level. |
Definition at line 113 of file rtc_driver.c.