*/
#include <project.h>
#include <stdio.h>
#include "DS1307.h"
#define ADDR 0x68
#define SET_TIME 1
uint8 wrBuff[9] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
int main()
{
uint32 rdStatus = 0;
uint32 wrStatus = 0;
uint32 nTime = 0;
uint8 rdBuff[16];
CyGlobalIntEnable; /* Uncomment this line to enable global interrupts. */
LCD_Start();
LCD_PrintString("Hello");
I2CM_Start();
// SetTimeArray(&wrBuff[1], 0x00104500, 0x02131209, (DS1307_ST_12HR|DS1307_ST_PM|DS1307_ST_SQOUT_1HZ) );
SetTimeArray(&wrBuff[1], 0x00054000, 0x01131215, (DS1307_ST_12HR|DS1307_ST_PM|DS1307_ST_SQOUT_1HZ) );
CyDelay(200);
// Set time function, uncomment to set time.
// wrStatus = I2CM_I2CMasterWriteBuf(ADDR, wrBuff, 9, I2CM_I2C_MODE_COMPLETE_XFER);
CyDelay(20);
;
for(;;)
{
I2CM_I2CMasterClearStatus();
wrStatus = I2CM_I2CMasterWriteBuf(ADDR, wrBuff, 1, I2CM_I2C_MODE_COMPLETE_XFER);
CyDelay(20);
wrStatus = I2CM_I2CMasterStatus();
I2CM_I2CMasterClearStatus();
rdStatus = I2CM_I2CMasterReadBuf(ADDR, rdBuff, 8, I2CM_I2C_MODE_COMPLETE_XFER);
CyDelay(20);
rdStatus = I2CM_I2CMasterStatus();
LCD_Position(0,0);
LCD_PrintString(GetTimeString(rdBuff, (DS1307_TIMEDATE2|DS1307_AMPM)));
LCD_Position(1,0);
LCD_PrintString(GetTimeString(rdBuff, DS1307_MDY));
nTime = GetSeconds(rdBuff);
LCD_Position(1,9);
LCD_PrintInt16((uint16)(nTime >> 8) );
LCD_Position(1,13);
LCD_PrintInt8((uint8)(nTime & 0x00FF));
CyDelay(500);
/* Place your application code here. */
}
}
/* [] END OF FILE */