diff options
Diffstat (limited to 'testhal/STM32/I2C/max1236.c')
-rw-r--r-- | testhal/STM32/I2C/max1236.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/testhal/STM32/I2C/max1236.c b/testhal/STM32/I2C/max1236.c index 13779b99a..3e3dbd0c1 100644 --- a/testhal/STM32/I2C/max1236.c +++ b/testhal/STM32/I2C/max1236.c @@ -29,11 +29,12 @@ static void i2c_max1236_error_cb(I2CDriver *i2cp, const I2CSlaveConfig *i2cscfg) /* This callback raise up when transfer finished */
static void i2c_max1236_cb(I2CDriver *i2cp, const I2CSlaveConfig *i2cscfg){
(void)*i2cp;
+ (void)*i2cscfg;
/* get ADC data */
- ch1 = ((i2cscfg->rxbuf[0] & 0xF) << 8) + i2cscfg->rxbuf[1];
- ch2 = ((i2cscfg->rxbuf[2] & 0xF) << 8) + i2cscfg->rxbuf[3];
- ch3 = ((i2cscfg->rxbuf[4] & 0xF) << 8) + i2cscfg->rxbuf[5];
- ch4 = ((i2cscfg->rxbuf[6] & 0xF) << 8) + i2cscfg->rxbuf[7];
+ ch1 = ((max1236_rx_data[0] & 0xF) << 8) + max1236_rx_data[1];
+ ch2 = ((max1236_rx_data[2] & 0xF) << 8) + max1236_rx_data[3];
+ ch3 = ((max1236_rx_data[4] & 0xF) << 8) + max1236_rx_data[5];
+ ch4 = ((max1236_rx_data[6] & 0xF) << 8) + max1236_rx_data[7];
}
@@ -42,8 +43,6 @@ static void i2c_max1236_cb(I2CDriver *i2cp, const I2CSlaveConfig *i2cscfg){ static const I2CSlaveConfig max1236 = {
i2c_max1236_cb,
i2c_max1236_error_cb,
- max1236_rx_data,
- max1236_tx_data,
};
#define max1236_addr 0b0110100
@@ -56,13 +55,13 @@ void init_max1236(void){ /* this data we must send via IC to setup ADC */
#define RXBYTES 0
#define TXBYTES 2
- max1236.txbuf[0] = 0b10000011; /* config register content. Consult datasheet */
- max1236.txbuf[1] = 0b00000111; /* config register content. Consult datasheet */
+ max1236_tx_data[0] = 0b10000011; /* config register content. Consult datasheet */
+ max1236_tx_data[1] = 0b00000111; /* config register content. Consult datasheet */
/* transmit out 2 bytes */
i2cAcquireBus(&I2CD2);
- i2cMasterTransmit(&I2CD2, &max1236, max1236_addr, TXBYTES, RXBYTES);
+ i2cMasterTransmit(&I2CD2, &max1236, max1236_addr, max1236_tx_data, TXBYTES, max1236_rx_data, RXBYTES);
while(I2CD2.id_state != I2C_READY){
chThdSleepMilliseconds(1);
}
@@ -78,7 +77,7 @@ void read_max1236(void){ #define RXBYTES 8
i2cAcquireBus(&I2CD2);
- i2cMasterReceive(&I2CD2, &max1236, max1236_addr, RXBYTES);
+ i2cMasterReceive(&I2CD2, &max1236, max1236_addr, max1236_rx_data, RXBYTES);
i2cReleaseBus(&I2CD2);
#undef RXBYTES
#undef TXBYTES
|