Japanische Kampfflugzeuge

Dependents:   Bulme-Timer

Fork of RTC8563 by HIMBED_3AHELI

Committer:
bulmecisco
Date:
Thu Apr 16 10:34:46 2015 +0000
Revision:
0:e7072e1b5fa5
RTC8563 library for real time clock  PCF8563

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bulmecisco 0:e7072e1b5fa5 1 //
bulmecisco 0:e7072e1b5fa5 2 // @ Project : RTC Date Time Clock
bulmecisco 0:e7072e1b5fa5 3 // @ File Name : RTC8563.cpp
bulmecisco 0:e7072e1b5fa5 4 // @ Date : 06.04.2015
bulmecisco 0:e7072e1b5fa5 5 // @ Author : Franz Pucher
bulmecisco 0:e7072e1b5fa5 6 // @ Copyright : pe@bulme.at
bulmecisco 0:e7072e1b5fa5 7 //
bulmecisco 0:e7072e1b5fa5 8
bulmecisco 0:e7072e1b5fa5 9 #include "mbed.h"
bulmecisco 0:e7072e1b5fa5 10 #include "const.h"
bulmecisco 0:e7072e1b5fa5 11
bulmecisco 0:e7072e1b5fa5 12 #include "RTC8563.h"
bulmecisco 0:e7072e1b5fa5 13
bulmecisco 0:e7072e1b5fa5 14 RTC8563::RTC8563() : i2c(p28, p27) // delete void and add call to base constructor
bulmecisco 0:e7072e1b5fa5 15 {
bulmecisco 0:e7072e1b5fa5 16 // Initialise I2C
bulmecisco 0:e7072e1b5fa5 17 i2c.frequency(40000);
bulmecisco 0:e7072e1b5fa5 18 char init1[2] = {0x6, 0x00};
bulmecisco 0:e7072e1b5fa5 19 char init2[2] = {0x7, 0xff};
bulmecisco 0:e7072e1b5fa5 20 i2c.write(0x40, init1, 2);
bulmecisco 0:e7072e1b5fa5 21 i2c.write(0x40, init2, 2);
bulmecisco 0:e7072e1b5fa5 22 }
bulmecisco 0:e7072e1b5fa5 23
bulmecisco 0:e7072e1b5fa5 24 RTC8563::RTC8563(PinName sda, PinName scl) : i2c(sda, scl)
bulmecisco 0:e7072e1b5fa5 25 {
bulmecisco 0:e7072e1b5fa5 26 // Initialise I2C
bulmecisco 0:e7072e1b5fa5 27 i2c.frequency(40000);
bulmecisco 0:e7072e1b5fa5 28 char init1[2] = {0x6, 0x00};
bulmecisco 0:e7072e1b5fa5 29 char init2[2] = {0x7, 0xff};
bulmecisco 0:e7072e1b5fa5 30 i2c.write(0x40, init1, 2);
bulmecisco 0:e7072e1b5fa5 31 i2c.write(0x40, init2, 2);
bulmecisco 0:e7072e1b5fa5 32 }
bulmecisco 0:e7072e1b5fa5 33
bulmecisco 0:e7072e1b5fa5 34 char RTC8563::rtc_read(char address)
bulmecisco 0:e7072e1b5fa5 35 {
bulmecisco 0:e7072e1b5fa5 36 char value;
bulmecisco 0:e7072e1b5fa5 37 i2c.start();
bulmecisco 0:e7072e1b5fa5 38 i2c.write(RTC8563_ADR);
bulmecisco 0:e7072e1b5fa5 39 i2c.write(address);
bulmecisco 0:e7072e1b5fa5 40 i2c.start();
bulmecisco 0:e7072e1b5fa5 41 i2c.write(RTC8563_ADR | _READ);
bulmecisco 0:e7072e1b5fa5 42 value = i2c.read(0);
bulmecisco 0:e7072e1b5fa5 43 i2c.stop();
bulmecisco 0:e7072e1b5fa5 44
bulmecisco 0:e7072e1b5fa5 45 return value;
bulmecisco 0:e7072e1b5fa5 46 }
bulmecisco 0:e7072e1b5fa5 47
bulmecisco 0:e7072e1b5fa5 48 void RTC8563::rtc_write(char address, char value)
bulmecisco 0:e7072e1b5fa5 49 {
bulmecisco 0:e7072e1b5fa5 50 i2c.start();
bulmecisco 0:e7072e1b5fa5 51 i2c.write(RTC8563_ADR);
bulmecisco 0:e7072e1b5fa5 52 i2c.write(address);
bulmecisco 0:e7072e1b5fa5 53 i2c.write(value);
bulmecisco 0:e7072e1b5fa5 54 i2c.stop();
bulmecisco 0:e7072e1b5fa5 55 }
bulmecisco 0:e7072e1b5fa5 56
bulmecisco 0:e7072e1b5fa5 57 void RTC8563::rtc_init()
bulmecisco 0:e7072e1b5fa5 58 {
bulmecisco 0:e7072e1b5fa5 59 }
bulmecisco 0:e7072e1b5fa5 60
bulmecisco 0:e7072e1b5fa5 61 void RTC8563::rtc_alarm()
bulmecisco 0:e7072e1b5fa5 62 {
bulmecisco 0:e7072e1b5fa5 63 }