Dependencies:   mbed

main.cpp

Committer:
soulx
Date:
2015-10-27
Revision:
0:b5986cc5eebd
Child:
1:b2b38e1e4d0c

File content as of revision 0:b5986cc5eebd:

#include "mbed.h"

I2C i2c(I2C_SDA, I2C_SCL);
 
const int addr = 0xA0;
 
int main() {
    char cmd[6];
      int len=3;
      char data[1];
  int ack;
  
  i2c.frequency(100000);
    //while (1) {
        cmd[0] = 0x00;
        cmd[1] = 0x01;
        cmd[2] ='t';
        ack = i2c.write((int)addr,(char *)cmd,len);
        printf("ack1 = %d\n",ack);
        //i2c.write(addr, cmd, 2);
    
        wait_ms(5);
 
     ack = i2c.write((int)addr+1,(char *)cmd,len-1,true);
     printf("ack2 = %d\n",ack);
     ack = i2c.read((int)addr,(char *)&data,sizeof(data));
     printf("ack3 = %d\n",ack);
     printf("Temp1 = %c\n", data[0]);
     
     
        cmd[2] ='E';
        ack = i2c.write((int)addr,(char *)cmd,len);
        //i2c.write(addr, cmd, 2);
    
        wait_ms(5);
 
     ack = i2c.write((int)addr+1,(char *)cmd,len-1,true);
     
     ack = i2c.read((int)addr,(char *)&data,sizeof(data));
     printf("Temp2 = %c\n\n", data[0]);
     
     //wait_us(100);
 /*
        cmd[0] = 0x00;
        i2c.write(addr, cmd, 1);
        i2c.read(addr, cmd, 6);
        */
 
 //       float tmp = (float((cmd[0]<<8)|cmd[1]) / 256.0);
       // printf("Temp = %s\n", cmd);
    //}
}