My Project  1.3
WaveShare DS1302 Clock Module
Functions | Variables
ds1302.c File Reference

Clock Calender device. More...

#include "ds1302.h"
#include "simpletools.h"
#include "sys/time.h"

Functions

int DS1302_read (short)
 
void DS1302_write (short, short)
 
void DS1302_open (short mosi, short cs, short sclk, short miso)
 open connection to clock chip More...
 
short DS1302_getSeconds ()
 get seconds More...
 
short DS1302_getMinutes ()
 get minutes More...
 
short DS1302_getHours ()
 get hours More...
 
char * DS1302_getAMPM ()
 get am/pm string More...
 
short DS1302_getDay ()
 get day More...
 
short DS1302_getMonth ()
 get month More...
 
short DS1302_getWeekDay ()
 get day of the week More...
 
short DS1302_getYear ()
 get year More...
 
void DS1302_setDate (short year, short month, short day)
 set Date More...
 
void DS1302_setYear (short yr)
 set year More...
 
void DS1302_setMonth (short mn)
 set month More...
 
void DS1302_setDay (short dy)
 set day More...
 
void DS1302_setWeekDay (short weekday)
 set day of the week More...
 
void DS1302_setTime (short hours, short minutes, short seconds)
 set time More...
 
void DS1302_setHour (short hr)
 set hours More...
 
void DS1302_set12Hour (short hr, char AmPm)
 set 12 hour format More...
 
void DS1302_setMinute (short mn)
 set minutes More...
 
void DS1302_setSecond (short s)
 set seconds More...
 
short DS1302_getWriteProtect ()
 get write protect state More...
 
void DS1302_setWriteProtect ()
 set write protect state @detailed prevents any register from being written to
 
void DS1302_clearWriteProtect ()
 clear write protect state @detailed must be called before changing any date/time value or message
 
void DS1302_setDateTime (void)
 set propeller date/time @detailed This sets the tick value for unix date time functions used in the propeller libraries and the time must be accessed before every 54 seonds or time will be lost
 
void DS1302_setMessage (char *msg)
 set message in ram @string message @detailed save a short message to ram 31 bytes max
 
char * DS1302_getMessage ()
 get message from ram More...
 

Variables

short _MM [] = {0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334}
 
char AMPM [][3] = {"AM", "PM"}
 
char _Msg [32]
 
short _AMPM
 
short _SCLK
 
short _MOSI
 
short _CS
 
short _MISO
 

Detailed Description

Clock Calender device.

Author
Michael Burmeister
Date
January 14, 2017
Version
1.0

Function Documentation

◆ DS1302_getAMPM()

char* DS1302_getAMPM ( void  )

get am/pm string

Returns
ampm

◆ DS1302_getDay()

short DS1302_getDay ( void  )

get day

Returns
day

◆ DS1302_getHours()

short DS1302_getHours ( void  )

get hours

Returns
seconds @detailed return the hours in 24 hour format or 12 hour format. In 12 hour format use getAMPM to return a string with AM/PM value.

◆ DS1302_getMessage()

char* DS1302_getMessage ( void  )

get message from ram

Returns
message

◆ DS1302_getMinutes()

short DS1302_getMinutes ( void  )

get minutes

Returns
minutes

◆ DS1302_getMonth()

short DS1302_getMonth ( void  )

get month

Returns
month

◆ DS1302_getSeconds()

short DS1302_getSeconds ( void  )

get seconds

Returns
seconds

◆ DS1302_getWeekDay()

short DS1302_getWeekDay ( void  )

get day of the week

Returns
day

◆ DS1302_getWriteProtect()

short DS1302_getWriteProtect ( void  )

get write protect state

Returns
0 - false 1 - true

◆ DS1302_getYear()

short DS1302_getYear ( void  )

get year

Returns
year

◆ DS1302_open()

void DS1302_open ( short  mosi,
short  cs,
short  sclk,
short  miso 
)

open connection to clock chip

Parameters
mosiMaster out slave in
csChip Select
sclkSystem Clock
misoMaster in slave out

◆ DS1302_set12Hour()

void DS1302_set12Hour ( short  hour,
char  AmPm 
)

set 12 hour format

Parameters
hourin 12 hour format
AmPmuse A for AM and P for PM

◆ DS1302_setDate()

void DS1302_setDate ( short  year,
short  month,
short  day 
)

set Date

Parameters
yearlast two digits only
month
day

◆ DS1302_setDay()

void DS1302_setDay ( short  day)

set day

Parameters
day

◆ DS1302_setHour()

void DS1302_setHour ( short  hour)

set hours

Parameters
hour@detailed must be in 24 hour format

◆ DS1302_setMinute()

void DS1302_setMinute ( short  minutes)

set minutes

Parameters
minutes

◆ DS1302_setMonth()

void DS1302_setMonth ( short  month)

set month

Parameters
month

◆ DS1302_setSecond()

void DS1302_setSecond ( short  seconds)

set seconds

Parameters
seconds

◆ DS1302_setTime()

void DS1302_setTime ( short  hours,
short  minutes,
short  seconds 
)

set time

Parameters
hours
minutes
seconds

◆ DS1302_setWeekDay()

void DS1302_setWeekDay ( short  weekday)

set day of the week

Parameters
weekday1-sunday, 7 - saturday

◆ DS1302_setYear()

void DS1302_setYear ( short  year)

set year

Parameters
year