program for I2C master device

Dependencies:   mbed

Fork of I2C_HelloWorld_Mbed by mbed official

Committer:
marcus255
Date:
Wed Dec 16 19:42:37 2015 +0000
Revision:
8:3e6945d5d9a1
Parent:
7:b07706b16279
Child:
9:36fc715eb54c
Reading/Writting EEPROM works fine, Reading/Writting works fine when temperature sensor connected to the i2c bus. Device addresses must be hardcoded for now.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
marcus255 4:1ec553356dcc 1 #ifndef MAIN_H
marcus255 4:1ec553356dcc 2 #define MAIN_H
marcus255 4:1ec553356dcc 3
marcus255 4:1ec553356dcc 4 #include "mbed.h"
marcus255 4:1ec553356dcc 5 #define SLAVE_ADDR 0xA0
marcus255 7:b07706b16279 6 #define DATA_SIZE 16
marcus255 8:3e6945d5d9a1 7 #define RTC_ADDR 0xD0
marcus255 8:3e6945d5d9a1 8 #define TEMPERATURE_REGISTER 0x11
marcus255 4:1ec553356dcc 9
marcus255 4:1ec553356dcc 10 I2C i2c(PTE0, PTE1);
marcus255 4:1ec553356dcc 11 Serial pc(USBTX, USBRX);
marcus255 4:1ec553356dcc 12 DigitalOut led(LED_GREEN);
marcus255 4:1ec553356dcc 13 Ticker i2c_ticker;
marcus255 5:8dc6d7d81250 14 void write_data(void);
marcus255 7:b07706b16279 15 void read_data(char*);
marcus255 5:8dc6d7d81250 16 void write_and_read(void);
marcus255 8:3e6945d5d9a1 17
marcus255 8:3e6945d5d9a1 18 void rtc_sensor();
marcus255 8:3e6945d5d9a1 19 void get_temperature_raw(char*);
marcus255 8:3e6945d5d9a1 20 float proceed_temperature(char*);
marcus255 8:3e6945d5d9a1 21
marcus255 4:1ec553356dcc 22 void init(void);
marcus255 4:1ec553356dcc 23 char data[DATA_SIZE];
marcus255 4:1ec553356dcc 24
marcus255 4:1ec553356dcc 25
marcus255 4:1ec553356dcc 26 #endif