Open
Description
- MCU/other hardware in use: STM32h7
- Display resolution and interface: I2C, [128x64]
Nonblocking I2C support
Hello, I'm attempting to build an application that utilizes this library in conjunction with doing real-time DAC/ADC functions. I have noticed that my DAC output, which is executed from a Timer producing a simple sine-wave is blocked by the I2C communication that this library executes, which distorts the output of the DAC.
I know that the embedded-hal
doesn't support non-blocking for various reasons. What I would like to do is write my own interface adapter and implement I2C interrupt handling within my app to unblock the communication to the display.
Looking at the test_helpers.rs
, I see this:
#[allow(dead_code)]
#[derive(Debug, Clone, Copy)]
pub struct StubInterface;
impl WriteOnlyDataCommand for StubInterface {
fn send_commands(
&mut self,
_cmd: display_interface::DataFormat<'_>,
) -> Result<(), DisplayError> {
Ok(())
}
fn send_data(&mut self, _buf: display_interface::DataFormat<'_>) -> Result<(), DisplayError> {
Ok(())
}
}
I assume that I could use the WriteOnlyDataCommand
trait to achieve this?
Kind regards
Oliver
Metadata
Metadata
Assignees
Labels
No labels