example of i2c slave device supporting block transfers

Dependencies:   lib_i2c_slave_block

Tested on nucleo board as slave. Use with i2c_master_block_example on raspberry pi as master.

Master I2C write will print on serial terminal 115200. User button will raise an irq; the RPi test program will service the interrupt.

See lib_i2c_slave_block for explanation of code.

cmds.c

Committer:
Wayne Roberts
Date:
2019-02-03
Revision:
3:0288d257446a
Parent:
2:d7e05c75f240

File content as of revision 3:0288d257446a:

#include <stdint.h>
#include "cmds.h"

const uint8_t cmd_to_length[] =
{
    /* 0x00 CMD_TEST3   */ 3,
    /* 0x01 CMD_TEST12  */ 12,
    /* 0x02 CMD_TEST32  */ 32,
    /* 0x03 CMD_IRQ     */ sizeof(irq_t),
    /* 0x04 CMD_BUFFER  */ 32
};