diff options
| author | Dickless <[email protected]> | 2024-07-06 17:36:22 +0900 |
|---|---|---|
| committer | Dickless <[email protected]> | 2024-07-06 17:36:22 +0900 |
| commit | b90eef293ba36bfeaba85ec5f8396021fd282130 (patch) | |
| tree | 5d8b67b5d9e378ff05ea34b167565af772fb659d | |
| parent | 4f649caa8155c5031592d74c2b5e94f400332a88 (diff) | |
[#2905 #2904] Replaced static raw array with GroundedArrayCell
| -rw-r--r-- | examples/stm32h7/src/bin/spi_bdma.rs | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/examples/stm32h7/src/bin/spi_bdma.rs b/examples/stm32h7/src/bin/spi_bdma.rs index b2e941078..65f498506 100644 --- a/examples/stm32h7/src/bin/spi_bdma.rs +++ b/examples/stm32h7/src/bin/spi_bdma.rs | |||
| @@ -10,18 +10,24 @@ use embassy_executor::Executor; | |||
| 10 | use embassy_stm32::mode::Async; | 10 | use embassy_stm32::mode::Async; |
| 11 | use embassy_stm32::time::mhz; | 11 | use embassy_stm32::time::mhz; |
| 12 | use embassy_stm32::{spi, Config}; | 12 | use embassy_stm32::{spi, Config}; |
| 13 | use grounded::uninit::GroundedArrayCell; | ||
| 13 | use heapless::String; | 14 | use heapless::String; |
| 14 | use static_cell::StaticCell; | 15 | use static_cell::StaticCell; |
| 15 | use {defmt_rtt as _, panic_probe as _}; | 16 | use {defmt_rtt as _, panic_probe as _}; |
| 16 | 17 | ||
| 17 | // Defined in memory.x | 18 | // Defined in memory.x |
| 18 | #[link_section = ".ram_d3"] | 19 | #[link_section = ".ram_d3"] |
| 19 | static mut RAM_D3: [u8; 64 * 1024] = [0u8; 64 * 1024]; | 20 | static mut RAM_D3: GroundedArrayCell<u8, { 64 * 1024 }> = GroundedArrayCell::uninit(); |
| 20 | 21 | ||
| 21 | #[embassy_executor::task] | 22 | #[embassy_executor::task] |
| 22 | async fn main_task(mut spi: spi::Spi<'static, Async>) { | 23 | async fn main_task(mut spi: spi::Spi<'static, Async>) { |
| 23 | let read_buffer = unsafe { &mut RAM_D3[0..128] }; | 24 | let (read_buffer, write_buffer) = unsafe { |
| 24 | let write_buffer = unsafe { &mut RAM_D3[128..256] }; | 25 | RAM_D3.initialize_all_copied(0); |
| 26 | ( | ||
| 27 | RAM_D3.get_subslice_mut_unchecked(0, 128), | ||
| 28 | RAM_D3.get_subslice_mut_unchecked(128, 128), | ||
| 29 | ) | ||
| 30 | }; | ||
| 25 | 31 | ||
| 26 | for n in 0u32.. { | 32 | for n in 0u32.. { |
| 27 | let mut write: String<128> = String::new(); | 33 | let mut write: String<128> = String::new(); |
