LED clock
 All Files Functions Variables Macros Groups Pages
Macros | Functions
rtc_ds1307.h File Reference

library to communicate with the Maxim DS1307 I2C RTC IC (API) More...

Go to the source code of this file.

Macros

#define SQUARE_WAVE_RCC   RCC_GPIOB
 
#define SQUARE_WAVE_PORT   GPIOB
 
#define SQUARE_WAVE_PIN   GPIO10
 
#define SQUARE_WAVE_EXTI   EXTI10
 

Functions

void rtc_setup (void)
 setup communication with RTC IC configure the I2C port defined in the sources
 
bool rtc_oscillator_disabled (void)
 verify if oscillator is disabled More...
 
uint16_t rtc_read_square_wave (void)
 read square wave output frequency (in Hz) More...
 
uint8_t rtc_read_seconds (void)
 read seconds from RTC IC More...
 
uint8_t rtc_read_minutes (void)
 read minutes from RTC IC More...
 
uint8_t rtc_read_hours (void)
 read hours from RTC IC More...
 
uint8_t rtc_read_day (void)
 read day from RTC IC More...
 
uint8_t rtc_read_date (void)
 read date from RTC IC More...
 
uint8_t rtc_read_month (void)
 read month from RTC IC More...
 
uint16_t rtc_read_year (void)
 read year from RTC IC More...
 
uint16_t * rtc_read_time (void)
 read time from RTC IC More...
 
bool rtc_oscillator_disable (void)
 disable RTC IC oscillator More...
 
bool rtc_oscillator_enable (void)
 enable RTC IC oscillator More...
 
bool rtc_write_square_wave (uint16_t frequency)
 write square wave output frequency (in Hz) More...
 
bool rtc_write_seconds (uint8_t seconds)
 write seconds into RTC IC More...
 
bool rtc_write_minutes (uint8_t minutes)
 write minutes into RTC IC More...
 
bool rtc_write_hours (uint8_t hours)
 write hours into RTC IC More...
 
bool rtc_write_day (uint8_t day)
 write day into RTC IC More...
 
bool rtc_write_date (uint8_t date)
 write date into RTC IC More...
 
bool rtc_write_month (uint8_t month)
 write month into RTC IC More...
 
bool rtc_write_year (uint16_t year)
 write year into RTC IC More...
 
bool rtc_write_time (uint8_t seconds, uint8_t minutes, uint8_t hours, uint8_t day, uint8_t date, uint8_t month, uint16_t year)
 write time into RTC IC More...
 

Detailed Description

library to communicate with the Maxim DS1307 I2C RTC IC (API)

Author
King Kévin kingk.nosp@m.evin.nosp@m.@cuvo.nosp@m.odoo.nosp@m..info
Date
2016
Note
user RAM is not handled
peripherals used: I2C I2C peripheral used to communication with the DS1307 RTC IC, GPIO connect Maxim DS1307 square wave output (on PB10)

Definition in file rtc_ds1307.h.

Function Documentation

bool rtc_oscillator_disable ( void  )

disable RTC IC oscillator

Returns
if disabling oscillator succeeded

Definition at line 289 of file rtc_ds1307.c.

bool rtc_oscillator_disabled ( void  )

verify if oscillator is disabled

Returns
if oscillator is disabled

Definition at line 136 of file rtc_ds1307.c.

bool rtc_oscillator_enable ( void  )

enable RTC IC oscillator

Returns
if enabling oscillator succeeded

Definition at line 297 of file rtc_ds1307.c.

uint8_t rtc_read_date ( void  )

read date from RTC IC

Returns
day of the month (1-31) of the current time

Definition at line 201 of file rtc_ds1307.c.

uint8_t rtc_read_day ( void  )

read day from RTC IC

Returns
day of the week (1-7, 1 is Sunday) of the current time, 1 being Sunday

Definition at line 192 of file rtc_ds1307.c.

uint8_t rtc_read_hours ( void  )

read hours from RTC IC

Returns
number of hours (0-23) of the current time

Definition at line 175 of file rtc_ds1307.c.

uint8_t rtc_read_minutes ( void  )

read minutes from RTC IC

Returns
number of minutes (0-59) of the current time

Definition at line 166 of file rtc_ds1307.c.

uint8_t rtc_read_month ( void  )

read month from RTC IC

Returns
month of the year (1-12) of the current time

Definition at line 210 of file rtc_ds1307.c.

uint8_t rtc_read_seconds ( void  )

read seconds from RTC IC

Returns
number of seconds (0-59) of the current time

Definition at line 157 of file rtc_ds1307.c.

uint16_t rtc_read_square_wave ( void  )

read square wave output frequency (in Hz)

Returns
square wave output frequency in Hz, 0 if disabled

Definition at line 143 of file rtc_ds1307.c.

uint16_t* rtc_read_time ( void  )

read time from RTC IC

Returns
array of {seconds, minutes, hours, day, date, month, year} as defined above

Definition at line 228 of file rtc_ds1307.c.

uint16_t rtc_read_year ( void  )

read year from RTC IC

Returns
year (2000-2099) of the current time

Definition at line 219 of file rtc_ds1307.c.

bool rtc_write_date ( uint8_t  date)

write date into RTC IC

Parameters
[in]dateday of the month (1-31)
Returns
if write succeeded

Definition at line 374 of file rtc_ds1307.c.

bool rtc_write_day ( uint8_t  day)

write day into RTC IC

Parameters
[in]dayday of the week (1-7, 1 is Sunday)
Returns
if write succeeded

Definition at line 364 of file rtc_ds1307.c.

bool rtc_write_hours ( uint8_t  hours)

write hours into RTC IC

Parameters
[in]hoursnumber of hours (0-23)
Returns
if write succeeded

Definition at line 354 of file rtc_ds1307.c.

bool rtc_write_minutes ( uint8_t  minutes)

write minutes into RTC IC

Parameters
[in]minutesnumber of minutes (0-59)
Returns
if write succeeded

Definition at line 344 of file rtc_ds1307.c.

bool rtc_write_month ( uint8_t  month)

write month into RTC IC

Parameters
[in]monthmonth of the year (1-12)
Returns
if write succeeded

Definition at line 384 of file rtc_ds1307.c.

bool rtc_write_seconds ( uint8_t  seconds)

write seconds into RTC IC

Parameters
[in]secondsnumber of seconds (0-59)
Returns
if write succeeded

Definition at line 330 of file rtc_ds1307.c.

bool rtc_write_square_wave ( uint16_t  frequency)

write square wave output frequency (in Hz)

Parameters
[in]frequencysquare wave output frequency in Hz (0 to disable, 1, 4096, 8192, 32768)
Returns
if write succeeded

Definition at line 305 of file rtc_ds1307.c.

bool rtc_write_time ( uint8_t  seconds,
uint8_t  minutes,
uint8_t  hours,
uint8_t  day,
uint8_t  date,
uint8_t  month,
uint16_t  year 
)

write time into RTC IC

Parameters
[in]secondsnumber of seconds (0-59)
[in]minutesnumber of minutes (0-59)
[in]hoursnumber of hours (0-23)
[in]dayday of the week (1-7, 1 is Sunday)
[in]dateday of the month (1-31)
[in]monthmonth of the year (1-12)
[in]yearyear (2000-2099)
Returns
if write succeeded

Definition at line 404 of file rtc_ds1307.c.

bool rtc_write_year ( uint16_t  year)

write year into RTC IC

Parameters
[in]yearyear (2000-2099)
Returns
if write succeeded

Definition at line 394 of file rtc_ds1307.c.