You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
case: examples/ssd1306-image.rs
mcu: stm32f401 in proteus
hal version: stm32f4xx-hal = "0.13.2"
problem:
through proteus's I2C debugger, find only occurs "S 78 A P", then the MCU hang. the final positon is in I2c::write_bytes.
fnwrite_bytes(&mutself,addr:u8,bytes:implIterator<Item = u8>) -> Result<(),Error>{
....
// Wait until address was sentloop{// Check for any I2C errors. If a NACK occurs, the ADDR bit will never be set.let sr1 = self.check_and_clear_error_flags().map_err(Error::nack_addr)?;// Wait for the address to be acknowledgedif sr1.addr().bit_is_set(){break;}}
...
}
through the i2c transaction, we know i2c slave(ssd1306) already returned ACK. why the problem occours.
thanks.
The text was updated successfully, but these errors were encountered:
case: examples/ssd1306-image.rs
mcu: stm32f401 in proteus
hal version: stm32f4xx-hal = "0.13.2"
problem:
through proteus's I2C debugger, find only occurs "S 78 A P", then the MCU hang. the final positon is in I2c::write_bytes.
through the i2c transaction, we know i2c slave(ssd1306) already returned ACK. why the problem occours.
thanks.
The text was updated successfully, but these errors were encountered: