diff options
| author | cumthugo <[email protected]> | 2023-09-13 00:18:18 +0800 |
|---|---|---|
| committer | cumthugo <[email protected]> | 2023-09-13 23:47:46 +0800 |
| commit | 582ef9099405947ae621e923ba40bd6fd3789285 (patch) | |
| tree | ba4c80eb5799a2ffe9769e01195d61617394de34 | |
| parent | 2c38dd17b9a5a507fc77d90d78486e4764234752 (diff) | |
stm32/usart: fix usart not wake up issue
| -rw-r--r-- | embassy-stm32/src/usart/mod.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/embassy-stm32/src/usart/mod.rs b/embassy-stm32/src/usart/mod.rs index bfb056718..2d7443221 100644 --- a/embassy-stm32/src/usart/mod.rs +++ b/embassy-stm32/src/usart/mod.rs | |||
| @@ -545,6 +545,13 @@ impl<'d, T: BasicInstance, RxDma> UartRx<'d, T, RxDma> { | |||
| 545 | unsafe { rdr(r).read_volatile() }; | 545 | unsafe { rdr(r).read_volatile() }; |
| 546 | clear_interrupt_flags(r, sr); | 546 | clear_interrupt_flags(r, sr); |
| 547 | 547 | ||
| 548 | if enable_idle_line_detection { | ||
| 549 | // enable idle interrupt | ||
| 550 | r.cr1().modify(|w| { | ||
| 551 | w.set_idleie(true); | ||
| 552 | }); | ||
| 553 | } | ||
| 554 | |||
| 548 | compiler_fence(Ordering::SeqCst); | 555 | compiler_fence(Ordering::SeqCst); |
| 549 | 556 | ||
| 550 | let has_errors = sr.pe() || sr.fe() || sr.ne() || sr.ore(); | 557 | let has_errors = sr.pe() || sr.fe() || sr.ne() || sr.ore(); |
