* * $Log: ds1307rtc.c,v $ * Revision 1.4 2006/10/08 16:39:33 haraldkipp * Corrected range check in DS1307RamRead(). Thanks to Helmut Holbach. * * Revision 1.3 2006/10/05 17:18:49 haraldkipp * Hardware independant RTC layer added. * * Revision 1.2 2006/08/25 13:42:55 olereinhardt * avr-gcc 3.4 does not understand binary representation of numbers, * changed to hex * * Revision 1.1 2006/06/30 22:05:51 christianwelzel * Initial check in. * * *
#include <cfg/os.h>
#include <dev/twif.h>
#include <sys/event.h>
#include <sys/timer.h>
#include <stdlib.h>
#include <string.h>
#include <dev/ds1307rtc.h>
Defines | |
#define | I2C_SLA_RTC 0x68 |
Functions | |
int | DS1307Init (void) |
Initialize the interface to an Dallas DS1307 hardware clock. | |
int | DS1307RamRead (u_char addr, u_char *buff, size_t cnt) |
Read contents from DS1307 RAM. | |
int | DS1307RamWrite (u_char addr, CONST void *buff, size_t len) |
Store buffer contents in DS1307 RAM. | |
int | DS1307RtcGetClock (struct _tm *tm) |
Get date and time from an DS1307 hardware clock. | |
int | DS1307RtcReadRegs (u_char reg, u_char *buff, size_t cnt) |
Read RTC registers. | |
int | DS1307RtcSetClock (CONST struct _tm *tm) |
Set the DS1307 hardware clock. | |
int | DS1307RtcWrite (CONST u_char *buff, size_t cnt) |
Write to RTC registers. | |
Variables | |
NUTRTC | rtcDs1307 |
int DS1307Init | ( | void | ) |
Initialize the interface to an Dallas DS1307 hardware clock.
Read contents from DS1307 RAM.
addr | Start location. | |
buff | Points to a buffer that receives the contents. | |
cnt | Number of bytes to read. |
int DS1307RamWrite | ( | u_char | addr, | |
CONST void * | buff, | |||
size_t | len | |||
) |
Store buffer contents in DS1307 RAM.
addr | Storage start location. | |
buff | Points to a buffer that contains the bytes to store. | |
len | Number of valid bytes in the buffer. |
int DS1307RtcGetClock | ( | struct _tm * | tm | ) |
Get date and time from an DS1307 hardware clock.
tm | Points to a structure that receives the date and time information. |
Read RTC registers.
reg | The first register to read. | |
buff | Pointer to a buffer that receives the register contents. | |
cnt | The number of registers to read. |
int DS1307RtcSetClock | ( | CONST struct _tm * | tm | ) |
Set the DS1307 hardware clock.
tm | Points to a structure which contains the date and time information. |
int DS1307RtcWrite | ( | CONST u_char * | buff, | |
size_t | cnt | |||
) |
Write to RTC registers.
buff | This buffer must contain all bytes to be transfered to the RTC chip, including the register address. | |
cnt | Number of valid bytes in the buffer. |
NUTRTC rtcDs1307 |
Initial value:
{ DS1307Init, DS1307RtcGetClock, DS1307RtcSetClock, NULL, NULL, NULL, NULL }