We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]
Rating:
Author: MIKROE
Last Updated: 2019-10-11
Package Version: 1.0.0.0
mikroSDK Library: 1.0.0.0
Category: RTC
Downloaded: 3151 times
Not followed.
License: MIT license
RTC 10 Click is a real time clock module which has an extremely low power consumption, allowing it to be used with a single button cell battery, for an extended period of time. It features the DS3231M, a low-cost, extremely accurate, I2C realtime clock (RTC) from Maxim Integrated.
Do you want to subscribe in order to receive notifications regarding "RTC 10 click" changes.
Do you want to unsubscribe in order to stop receiving notifications regarding "RTC 10 click" changes.
Do you want to report abuse regarding "RTC 10 click".
Library Description
The library covers all the necessary functions to control RTC 10 click board. A library performs a standard I2C interface communication.
Key functions:
void rtc10_setTime( uint8_t timeHours, uint8_t timeMinutes, uint8_t timeSeconds )
- Set time hours, minutes and seconds function.void rtc10_getTime( uint8_t *timeHours, uint8_t *timeMinutes, uint8_t *timeSeconds )
- Get time hours, minutes and seconds function.void rtc10_setDate( uint8_t dayOfTheWeek, uint8_t dateDay, uint8_t dateMonth, uint16_t dateYear )
- Set date hours, minutes and seconds function.Examples description
The application is composed of three sections :
void applicationTask()
{
rtc10_getTime( &timeHours, &timeMinutes, &timeSeconds );
Delay_10ms();
rtc10_getDate( &dayOfTheWeek, &dateDay, &dateMonth, &dateYear );
Delay_10ms();
if ( secFlag != timeSeconds )
{
mikrobus_logWrite( " Time: ", _LOG_TEXT );
displayLogUart( timeHours );
mikrobus_logWrite( ":", _LOG_TEXT );
displayLogUart( timeMinutes );
mikrobus_logWrite( ":", _LOG_TEXT );
displayLogUart( timeSeconds );
mikrobus_logWrite( "", _LOG_LINE );
mikrobus_logWrite( " Date: ", _LOG_TEXT );
displayLogUart( dateDay );
mikrobus_logWrite( ".", _LOG_TEXT );
displayLogUart( dateMonth );
mikrobus_logWrite( ".", _LOG_TEXT );
mikrobus_logWrite( "20", _LOG_TEXT );
displayLogUart( dateYear );
mikrobus_logWrite( ".", _LOG_LINE );
displayDayOfTheWeek( dayOfTheWeek );
if ( timeSeconds == 0 )
{
temperature = rtc10_getTemperature();
mikrobus_logWrite( " Temp.: ", _LOG_TEXT );
FloatToStr( temperature, logText );
ltrim( logText );
rtrim( logText );
mikrobus_logWrite( logText, _LOG_TEXT );
mikrobus_logWrite( degCel, _LOG_LINE );
}
mikrobus_logWrite( "-------------------", _LOG_LINE );
secFlag = timeSeconds;
}
}
Additional Functions :
void displayLogDayOfTheWeek( uint8_t dayOfTheWeek )
- Write day of the week log on USART terminal.void displayLogUart( uint8_t value )
- Write the value of time or date as a two-digit number.Other mikroE Libraries used in the example:
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.