Configura kl25z en modo esclavo i2c, para recibir comandos de la Raspsberry Pi en modo Maestro

Dependencies:   mbed

Committer:
franni
Date:
Fri Oct 12 01:46:57 2018 +0000
Revision:
0:b16fccf97adb
KL25Z i2c Slave to Raspberry Pi Master

Who changed what in which revision?

UserRevisionLine numberNew contents of line
franni 0:b16fccf97adb 1 #include "mbed.h"
franni 0:b16fccf97adb 2
franni 0:b16fccf97adb 3 DigitalOut led(LED1);
franni 0:b16fccf97adb 4 Serial pc(USBTX, USBRX); // tx, rx
franni 0:b16fccf97adb 5 I2CSlave slave(PTC9,PTC8); // SDA, SCL
franni 0:b16fccf97adb 6
franni 0:b16fccf97adb 7 const int SLAVE_ADDRESS = 0x0A;
franni 0:b16fccf97adb 8 const int I2C_FREQUENCY = 100000;
franni 0:b16fccf97adb 9 // const int I2C_BUFFER_SIZE = 6;
franni 0:b16fccf97adb 10
franni 0:b16fccf97adb 11
franni 0:b16fccf97adb 12 int main() {
franni 0:b16fccf97adb 13 pc.baud(9600);
franni 0:b16fccf97adb 14
franni 0:b16fccf97adb 15 // Configure I2C
franni 0:b16fccf97adb 16 slave.frequency(I2C_FREQUENCY);
franni 0:b16fccf97adb 17 pc.printf("Frecuencia I2C Slave @ %dHz\r\n", I2C_FREQUENCY);
franni 0:b16fccf97adb 18 slave.address(SLAVE_ADDRESS);
franni 0:b16fccf97adb 19 pc.printf("Direccion Slave @ SLAVE_ADDRESS = 0x%x\r\n", SLAVE_ADDRESS);
franni 0:b16fccf97adb 20
franni 0:b16fccf97adb 21 // I2C buffer
franni 0:b16fccf97adb 22 // char buffer[I2C_BUFFER_SIZE];
franni 0:b16fccf97adb 23
franni 0:b16fccf97adb 24 while (1) {
franni 0:b16fccf97adb 25 int rec = slave.receive();
franni 0:b16fccf97adb 26 pc.printf("Dato recibido %d\r\n", rec);
franni 0:b16fccf97adb 27 }
franni 0:b16fccf97adb 28 }