mirror of https://github.com/g4klx/MMDVM.git
More I2C changes.
This commit is contained in:
parent
4aa30664b9
commit
a3e0ad82e2
8
I2C3.cpp
8
I2C3.cpp
|
@ -89,7 +89,7 @@ uint8_t CI2C3::write(uint8_t addr, const uint8_t* data, uint16_t length)
|
||||||
size = MAX_NBYTES_SIZE;
|
size = MAX_NBYTES_SIZE;
|
||||||
else
|
else
|
||||||
size = length;
|
size = length;
|
||||||
configureDataTransfer(size);
|
configureDataTransfer(size, addr);
|
||||||
|
|
||||||
// Start Writing Data
|
// Start Writing Data
|
||||||
while (length > 0U) {
|
while (length > 0U) {
|
||||||
|
@ -108,7 +108,7 @@ uint8_t CI2C3::write(uint8_t addr, const uint8_t* data, uint16_t length)
|
||||||
size = MAX_NBYTES_SIZE;
|
size = MAX_NBYTES_SIZE;
|
||||||
else
|
else
|
||||||
size = length;
|
size = length;
|
||||||
configureDataTransfer(size);
|
configureDataTransfer(size, addr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -136,7 +136,7 @@ bool CI2C3::waitISRFlagsSet(uint32_t flags)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CI2C3::configureDataTransfer(uint8_t size)
|
void CI2C3::configureDataTransfer(uint8_t size, uint8_t addr)
|
||||||
{
|
{
|
||||||
I2C3->CR2 &= ~(I2C_CR2_SADD |
|
I2C3->CR2 &= ~(I2C_CR2_SADD |
|
||||||
I2C_CR2_NBYTES |
|
I2C_CR2_NBYTES |
|
||||||
|
@ -145,7 +145,7 @@ void CI2C3::configureDataTransfer(uint8_t size)
|
||||||
(I2C_CR2_RD_WRN & (uint32_t)(I2C_Generate_Start_Write >> (31U - I2C_CR2_RD_WRN_Pos))) |
|
(I2C_CR2_RD_WRN & (uint32_t)(I2C_Generate_Start_Write >> (31U - I2C_CR2_RD_WRN_Pos))) |
|
||||||
I2C_CR2_START |
|
I2C_CR2_START |
|
||||||
I2C_CR2_STOP);
|
I2C_CR2_STOP);
|
||||||
I2C3->CR2 |= (uint32_t)(((uint32_t)m_addr & I2C_CR2_SADD) |
|
I2C3->CR2 |= (uint32_t)(((uint32_t)addr & I2C_CR2_SADD) |
|
||||||
(((uint32_t)size << I2C_CR2_NBYTES_Pos) & I2C_CR2_NBYTES) |
|
(((uint32_t)size << I2C_CR2_NBYTES_Pos) & I2C_CR2_NBYTES) |
|
||||||
(uint32_t)I2C_CR2_RELOAD |
|
(uint32_t)I2C_CR2_RELOAD |
|
||||||
(uint32_t)I2C_Generate_Start_Write);
|
(uint32_t)I2C_Generate_Start_Write);
|
||||||
|
|
Loading…
Reference in New Issue