- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am using wiced_i2c_init_combined_message functionn n when the build stopped due to linker error? undefined platform_i2c_init_combined_message
The function wiced_i2c_init_combined_message calls platform_i2c_init_combined_message
#if 0
platform_result_t platform_i2c_init_combined_message( platform_i2c_message_t* message, const void* tx_buffer, void* rx_buffer, uint16_t tx_buffer_length, uint16_t rx_buffer_length, uint16_t retries, wiced_bool_t disable_dma )
{
This is undefined for SDK 3.7.3 using 43907 platform, using a know demo board BCM943907WAE2_1.B1
if you uncomment the if 0, it will result in more errors.
My question: is there a problem for the processor to support combined I2C message
Thanks
Solved! Go to Solution.
- Tags:
- teaser
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The 43907 has the I2C functions wiced_i2c_read and wiced_i2c_write, I suggest using these instead. These functions allow you to choose which conditions are used in the transmission. For example:
uint8_t receive[10];
uint8_t transmit = 0x00;
wiced_i2c_write( &i2c_device, WICED_I2C_START_FLAG, &transmit, 1 );
wiced_i2c_read( &i2c_device, WICED_I2C_REPEATED_START_FLAG | WICED_I2C_STOP_FLAG, receive, 10 );
This will send a START condition, transmit the address & write data, REPEATED_START, then transmit the address & read data, then STOP.