53 #error The MCP7940 Library supports only PIC18 devices
65 unsigned char enable_buffer;
67 OpenI2C(MASTER, SLEW_ON);
69 SSPADD = (((crystal_frequency_MHz *1000)/4)/baud_rate_KHz)-1;
85 seconds |= 0b10000000;
96 unsigned char seconds;
101 seconds = seconds & 0b01111111;
123 unsigned char minutes;
127 minutes = minutes & 0b01111111;
150 hours = hours & 0b00111111;
160 static unsigned char time[9];
166 time[1] = (value & 0b00001111)+48;
167 time[0] = (value >> 4)+48;
172 time[4] = (value & 0b00001111)+48;
173 time[3] = (value >> 4)+48;
178 time[7] = (value & 0b00001111)+48;
179 time[6] = (value >> 4)+48;
193 static unsigned char time[6];
199 time[1] = (value & 0b00001111)+48;
200 time[0] = (value >> 4)+48;
205 time[4] = (value & 0b00001111)+48;
206 time[3] = (value >> 4)+48;
234 days = days & 0b00111111;
254 unsigned char months;
258 months = months & 0b00011111;
288 static unsigned char date[9];
294 date[1] = (value & 0b00001111)+48;
295 date[0] = (value >> 4)+48;
300 date[4] = (value & 0b00001111)+48;
301 date[3] = (value >> 4)+48;
307 date[7] = (value & 0b00001111)+48;
308 date[6] = (value >> 4)+48;
326 value = value | 0b01110000;
344 value = value | 0b01110000;
363 value = value | 0b01110000;
381 value = value | 0b01110000;
397 value = value | 0b10000000;
412 value = value & 0b01111111;
428 if (value & 0b00110000) {
432 value = value & 0b11110111;
438 value = value & 0b11110111;
456 unsigned char minutes;
467 if ((minutes&0x0F) > (
unsigned char) 9 ) {
502 if ((hours&0x0F) > (
unsigned char) 9 ) {
537 if ((years&0x0F) > (
unsigned char) 9 ) {
561 unsigned char months;
572 if ((months&0x0F) > (
unsigned char) 9 ) {
606 if ((days&0x0F) > (
unsigned char) 9 ) {