#include <i2c.h>
Go to the source code of this file.
#define RTCC_ALARM_CONTROL_REG_1_ADDR 0x0D |
#define RTCC_ALARM_CONTROL_REG_2_ADDR 0x14 |
#define RTCC_CONFIGURATION_REG_ADDR 0x07 |
#define RTCC_DAYS_ADDR 0x04 |
#define RTCC_DAYS_ALARM_2_ADDR 0x15 |
#define RTCC_DAYS_ALARM_ADDR 0x0E |
#define RTCC_ENABLE_OFF 0b10000000 |
#define RTCC_ENABLE_ON 0b00000000 |
#define RTCC_HOURS_ADDR 0x02 |
#define RTCC_HOURS_ALARM_2_ADDR 0x13 |
#define RTCC_HOURS_ALARM_ADDR 0x0C |
#define RTCC_MAX_DAYS 0x32 |
#define RTCC_MAX_HOURS 0x24 |
#define RTCC_MAX_MINUTES 0x60 |
#define RTCC_MAX_MONTHS 0x13 |
#define RTCC_MAX_YEARS 0xA0 |
#define RTCC_MINUTES_ADDR 0x01 |
#define RTCC_MINUTS_ALARM_2_ADDR 0x12 |
#define RTCC_MINUTS_ALARM_ADDR 0x0B |
#define RTCC_MONTHS_ADDR 0x05 |
#define RTCC_SECONDS_ADDR 0x00 |
#define RTCC_SECONDS_ALARM_2_ADDR 0x11 |
#define RTCC_SECONDS_ALARM_ADDR 0x0A |
#define RTCC_WRITE_ADD 0b11011110 |
#define RTCC_YEARS_ADDR 0x06 |
unsigned char get_minutes_RTCC |
( |
void |
| ) |
|
This function reads the minutes from the RTC.
- Returns
- Minutes that are read back, in BCD format (eg. 22 min. is 0x22 or 0b00100010).
- Note
- Seconds are in BCD format.
void MCP7940_initialize |
( |
unsigned char |
crystal_frequency_MHz, |
|
|
unsigned int |
baud_rate_KHz |
|
) |
| |
This function initialize the I2C module accordingly to the clock and baud rate.
- Parameters
-
crystal_frequency_MHz | Clock frequency expressed in MHz |
baud_rate_KHz | Baud rate expressed in KHz |
- Returns
- Note
- If other devices are connected on the I2C bus the baud rate would be changed by the function. Among several calls from different device initializations, only the last one will be reflected in the I2C module configuration.
Definition at line 63 of file MCP7940.c.
References RTCC_set_seconds().
signed char RTCC_disable_alarm_interrupt |
( |
void |
| ) |
|
This function disable the interrupt pin functionality.
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
Definition at line 357 of file DS1337.c.
signed char RTCC_enable_alarm_interrupt |
( |
void |
| ) |
|
This function enables the interrupt pin functionality.
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
Definition at line 344 of file DS1337.c.
unsigned char* RTCC_get_date |
( |
void |
| ) |
|
This function reads the Date from the RTC. The Format DD/MM/YY
- Returns
- Date that is read back, as ASCII string terminated with /0
Definition at line 262 of file DS1337.c.
unsigned char RTCC_get_days |
( |
void |
| ) |
|
This function reads the day from the RTC.
- Returns
- Days that are read back, in BCD format (eg. 12 is 0x12 or 0b00010010).
- Note
- Days are in BCD format.
Definition at line 204 of file DS1337.c.
unsigned char RTCC_get_hours |
( |
void |
| ) |
|
This function reads the hours from the RTC.
- Returns
- Hours that are read back, in BCD format (eg. 12 is 0x12 or 0b00010010).
- Note
- Hours are in BCD format.
Definition at line 120 of file DS1337.c.
unsigned char RTCC_get_months |
( |
void |
| ) |
|
This function reads the months from the RTC.
- Returns
- Months that are read back, in BCD format (eg. 12 is 0x12 or 0b00010010).
- Note
- Months are in BCD format.
Definition at line 228 of file DS1337.c.
unsigned char RTCC_get_seconds |
( |
void |
| ) |
|
This function reads the second from the RTC.
- Returns
- Second that are read back, in BCD format (eg. 22 sec. is 0x22 or 0b00100010).
- Note
- Seconds are in BCD format.
Definition at line 70 of file DS1337.c.
unsigned char* RTCC_get_time |
( |
void |
| ) |
|
This function reads the time from the RTC. The format is HH:MM (without seconds)
- Returns
- Time that is read back, as ASCII string terminated with /0
Definition at line 167 of file DS1337.c.
unsigned char* RTCC_get_time_seconds |
( |
void |
| ) |
|
This function reads the time from the RTC. The format is HH:MM.ss
- Returns
- Time that is read back, as ASCII string terminated with /0
Definition at line 134 of file DS1337.c.
unsigned char RTCC_get_years |
( |
void |
| ) |
|
This function reads the Year from the RTC.
- Returns
- Year that is read back, in BCD format (eg. 12 is 0x12 or 0b00010010 represents 2012).
- Note
- Year are in BCD format. 2012 is read as 0x12.
Definition at line 251 of file DS1337.c.
signed char RTCC_increment_days |
( |
void |
| ) |
|
This function increments the Days inside the RTCC.
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Note
- The function automatically checks the overflow.
Definition at line 530 of file DS1337.c.
signed char RTCC_increment_hours |
( |
void |
| ) |
|
This function increments the hours inside the RTCC.
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Note
- The function automatically checks the overflow.
Definition at line 426 of file DS1337.c.
signed char RTCC_increment_minutes |
( |
void |
| ) |
|
This function increments the minutes inside the RTCC.
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Note
- The function automatically checks the overflow and automatically increments the hours.
Definition at line 391 of file DS1337.c.
signed char RTCC_increment_months |
( |
void |
| ) |
|
This function increments the Months inside the RTCC.
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Note
- The function automatically checks the overflow.
Definition at line 496 of file DS1337.c.
signed char RTCC_increment_years |
( |
void |
| ) |
|
This function increments the Years inside the RTCC.
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Note
- The function automatically checks the overflow.
Definition at line 461 of file DS1337.c.
unsigned char RTCC_is_alarm_ON |
( |
void |
| ) |
|
This function checks if the Alarm id ON using polling method.
- Returns
- status Alarm status 1: ON 0:OFF
- Note
- If the alarm is on, AF flag is automatically cleaned.
Definition at line 367 of file DS1337.c.
signed char RTCC_set_days |
( |
unsigned char |
days | ) |
|
This function writes the days in the RTC.
- Parameters
-
days | Day to be written, as 2 digits BCD format (eg. 12 is 0x12 or 0b00010010). |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Days are in BCD format. Decimal format won't work!
Definition at line 195 of file DS1337.c.
signed char RTCC_set_days_alarm |
( |
unsigned char |
days, |
|
|
unsigned char |
alarm_enable |
|
) |
| |
This function writes the Days for the alarm, in the RTC.
- Parameters
-
days | Days to be written, as 2 digits BCD format (eg. 12 is 0x12 or 0b00010010). |
alarmEnable | Enable the alarm or not (for matching) [ENABLE_ON , ENABLE_OFF] |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Days are in BCD format. Decimal format won't work!
- Note
- Use the constants ENABLE_ON and ENABLE_OFF
Definition at line 332 of file DS1337.c.
signed char RTCC_set_hours |
( |
unsigned char |
hours | ) |
|
This function writes the hours in the RTC.
- Parameters
-
hours | Hours to be written, as 2 digits BCD format (eg. 12 is 0x12 or 0b00010010). |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Hours are in BCD format. Decimal format won't work!
Definition at line 111 of file DS1337.c.
signed char RTCC_set_hours_alarm |
( |
unsigned char |
hours, |
|
|
unsigned char |
alarm_enable |
|
) |
| |
This function writes the hours for the alarm, in the RTC.
- Parameters
-
hours | Hours to be written, as 2 digits BCD format (eg. 12 is 0x12 or 0b00010010). |
alarmEnable | Enable the alarm or not (for matching) [ENABLE_ON , ENABLE_OFF] |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Hours are in BCD format. Decimal format won't work!
- Note
- Use the constants ENABLE_ON and ENABLE_OFF
Definition at line 321 of file DS1337.c.
signed char RTCC_set_minutes |
( |
unsigned char |
minutes | ) |
|
This function writes the seconds in the RTC.
- Parameters
-
minutes | Minutes to be written, as 2 digits BCD format (eg. 22 min. is 0x22 or 0b00100010). |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Minutes are in BCD format. Decimal format won't work!
Definition at line 87 of file DS1337.c.
signed char RTCC_set_minutes_alarm |
( |
unsigned char |
minutes, |
|
|
unsigned char |
alarm_enable |
|
) |
| |
This function writes the minutes for the alarm, in the RTC.
- Parameters
-
minutes | Minutes to be written, as 2 digits BCD format (eg. 12 is 0x12 or 0b00010010). |
alarmEnable | Enable the alarm or not (for matching) [ENABLE_ON , ENABLE_OFF] |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Minutes are in BCD format. Decimal format won't work!
- Note
- Use the constants ENABLE_ON and ENABLE_OFF
Definition at line 308 of file DS1337.c.
signed char RTCC_set_months |
( |
unsigned char |
months | ) |
|
This function writes the moths in the RTC.
- Parameters
-
months | Months to be written, as 2 digits BCD format (eg. 12 is 0x12 or 0b00010010). |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Months are in BCD format. Decimal format won't work!
Definition at line 218 of file DS1337.c.
signed char RTCC_set_seconds |
( |
unsigned char |
seconds | ) |
|
This function writes the seconds in the RTC.
- Parameters
-
seconds | Seconds to be written, as 2 digits BCD format (eg. 22 sec. is 0x22 or 0b00100010). |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Seconds are in BCD format. Decimal format won't work!
Definition at line 60 of file DS1337.c.
signed char RTCC_set_seconds_alarm |
( |
unsigned char |
seconds, |
|
|
unsigned char |
alarm_enable |
|
) |
| |
This function writes the seconds for the alarm, in the RTC.
- Parameters
-
seconds | Seconds to be written, as 2 digits BCD format (eg. 12 is 0x12 or 0b00010010). |
alarmEnable | Enable the alarm or not (for matching) [ENABLE_ON , ENABLE_OFF] |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Seconds are in BCD format. Decimal format won't work!
- Note
- Use the constants ENABLE_ON and ENABLE_OFF
Definition at line 296 of file DS1337.c.
References RTCC_ALARM_CONTROL_REG_1_ADDR, RTCC_ENABLE_ON, RTCC_SECONDS_ALARM_ADDR, and RTCC_WRITE_ADD.
signed char RTCC_set_years |
( |
unsigned char |
years | ) |
|
This function writes the Year in the RTC.
- Parameters
-
years | Year to be written, as 2 digits BCD format (eg. 2012 is only 0x12 or 0b00010010). |
- Returns
- status 1: The info has been properly written -1: Bus Collision error -2: Not Ack error condition -3: Write collision
- Warning
- Years are in BCD format. Decimal format won't work!
- Note
- 2012 is written as 12.
Definition at line 242 of file DS1337.c.