I2C driver cleanup (#21273)
* remove i2c_start and i2c_stop from i2c drivers * remove static i2c_address variable from chibios i2c driver
This commit is contained in:
parent
2b0965944d
commit
e9bd7d7ad3
49 changed files with 280 additions and 603 deletions
|
@ -114,7 +114,7 @@ uint8_t matrix_scan(void)
|
|||
#ifdef RIGHT_HALF
|
||||
uint8_t data = 0x7F;
|
||||
// Receive the columns from right half
|
||||
i2c_receive(I2C_ADDR_WRITE, &data, 1, MCP23018_I2C_TIMEOUT);
|
||||
i2c_receive(I2C_ADDR, &data, 1, MCP23018_I2C_TIMEOUT);
|
||||
cols |= ((~(data) & 0x7F) << 7);
|
||||
#endif
|
||||
|
||||
|
@ -162,7 +162,7 @@ static void matrix_select_row(uint8_t row)
|
|||
//Set the remote row on port A
|
||||
txdata[0] = GPIOA;
|
||||
txdata[1] = 0xFF & ~(1<<row);
|
||||
mcp23018_status = i2c_transmit(I2C_ADDR_WRITE, (uint8_t *)txdata, 2, MCP23018_I2C_TIMEOUT);
|
||||
mcp23018_status = i2c_transmit(I2C_ADDR, (uint8_t *)txdata, 2, MCP23018_I2C_TIMEOUT);
|
||||
#endif
|
||||
|
||||
// select other half
|
||||
|
|
|
@ -39,7 +39,7 @@ uint8_t init_mcp23018(void)
|
|||
data[0] = IODIRA;
|
||||
data[1] = 0b00000000;
|
||||
data[2] = 0b11111111;
|
||||
mcp23018_status = i2c_transmit(I2C_ADDR_WRITE, (uint8_t *)data, 3, MCP23018_I2C_TIMEOUT);
|
||||
mcp23018_status = i2c_transmit(I2C_ADDR, (uint8_t *)data, 3, MCP23018_I2C_TIMEOUT);
|
||||
if (mcp23018_status != I2C_STATUS_SUCCESS)
|
||||
goto out;
|
||||
|
||||
|
@ -50,7 +50,7 @@ uint8_t init_mcp23018(void)
|
|||
data[0] = GPPUA;
|
||||
data[1] = 0b00000000;
|
||||
data[2] = 0b11111111;
|
||||
mcp23018_status = i2c_transmit(I2C_ADDR_WRITE, (uint8_t *)data, 3, MCP23018_I2C_TIMEOUT);
|
||||
mcp23018_status = i2c_transmit(I2C_ADDR, (uint8_t *)data, 3, MCP23018_I2C_TIMEOUT);
|
||||
if (mcp23018_status != I2C_STATUS_SUCCESS)
|
||||
goto out;
|
||||
|
||||
|
@ -61,7 +61,7 @@ uint8_t init_mcp23018(void)
|
|||
data[0] = OLATA;
|
||||
data[1] = 0b11111111;
|
||||
data[2] = 0b11111111;
|
||||
mcp23018_status = i2c_transmit(I2C_ADDR_WRITE, (uint8_t *)data, 3, MCP23018_I2C_TIMEOUT);
|
||||
mcp23018_status = i2c_transmit(I2C_ADDR, (uint8_t *)data, 3, MCP23018_I2C_TIMEOUT);
|
||||
|
||||
out:
|
||||
return (mcp23018_status);
|
||||
|
|
|
@ -23,9 +23,7 @@
|
|||
# include "i2c_master.h"
|
||||
|
||||
// I2C aliases and register addresses (see "mcp23018.md")
|
||||
# define I2C_ADDR 0b0100000
|
||||
# define I2C_ADDR_WRITE ( (I2C_ADDR<<1) | I2C_WRITE )
|
||||
# define I2C_ADDR_READ ( (I2C_ADDR<<1) | I2C_READ )
|
||||
# define I2C_ADDR (0b0100000<<1)
|
||||
# define IODIRA 0x00 // i/o direction register
|
||||
# define IODIRB 0x01
|
||||
# define GPPUA 0x0C // GPIO pull-up resistor register
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue