diff options
Diffstat (limited to 'examples/stm32wb/src/bin/mac_ffd_net.rs')
| -rw-r--r-- | examples/stm32wb/src/bin/mac_ffd_net.rs | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/examples/stm32wb/src/bin/mac_ffd_net.rs b/examples/stm32wb/src/bin/mac_ffd_net.rs index f8c76b5a4..7a42bf577 100644 --- a/examples/stm32wb/src/bin/mac_ffd_net.rs +++ b/examples/stm32wb/src/bin/mac_ffd_net.rs | |||
| @@ -1,6 +1,5 @@ | |||
| 1 | #![no_std] | 1 | #![no_std] |
| 2 | #![no_main] | 2 | #![no_main] |
| 3 | #![feature(type_alias_impl_trait)] | ||
| 4 | 3 | ||
| 5 | use defmt::*; | 4 | use defmt::*; |
| 6 | use embassy_executor::Spawner; | 5 | use embassy_executor::Spawner; |
| @@ -12,7 +11,7 @@ use embassy_stm32_wpan::mac::typedefs::{MacChannel, PanId, PibId}; | |||
| 12 | use embassy_stm32_wpan::mac::{self, Runner}; | 11 | use embassy_stm32_wpan::mac::{self, Runner}; |
| 13 | use embassy_stm32_wpan::sub::mm; | 12 | use embassy_stm32_wpan::sub::mm; |
| 14 | use embassy_stm32_wpan::TlMbox; | 13 | use embassy_stm32_wpan::TlMbox; |
| 15 | use static_cell::make_static; | 14 | use static_cell::StaticCell; |
| 16 | use {defmt_rtt as _, panic_probe as _}; | 15 | use {defmt_rtt as _, panic_probe as _}; |
| 17 | 16 | ||
| 18 | bind_interrupts!(struct Irqs{ | 17 | bind_interrupts!(struct Irqs{ |
| @@ -154,15 +153,21 @@ async fn main(spawner: Spawner) { | |||
| 154 | .unwrap(); | 153 | .unwrap(); |
| 155 | defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap()); | 154 | defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap()); |
| 156 | 155 | ||
| 156 | static TX1: StaticCell<[u8; 127]> = StaticCell::new(); | ||
| 157 | static TX2: StaticCell<[u8; 127]> = StaticCell::new(); | ||
| 158 | static TX3: StaticCell<[u8; 127]> = StaticCell::new(); | ||
| 159 | static TX4: StaticCell<[u8; 127]> = StaticCell::new(); | ||
| 160 | static TX5: StaticCell<[u8; 127]> = StaticCell::new(); | ||
| 157 | let tx_queue = [ | 161 | let tx_queue = [ |
| 158 | make_static!([0u8; 127]), | 162 | TX1.init([0u8; 127]), |
| 159 | make_static!([0u8; 127]), | 163 | TX2.init([0u8; 127]), |
| 160 | make_static!([0u8; 127]), | 164 | TX3.init([0u8; 127]), |
| 161 | make_static!([0u8; 127]), | 165 | TX4.init([0u8; 127]), |
| 162 | make_static!([0u8; 127]), | 166 | TX5.init([0u8; 127]), |
| 163 | ]; | 167 | ]; |
| 164 | 168 | ||
| 165 | let runner = make_static!(Runner::new(mbox.mac_subsystem, tx_queue)); | 169 | static RUNNER: StaticCell<Runner> = StaticCell::new(); |
| 170 | let runner = RUNNER.init(Runner::new(mbox.mac_subsystem, tx_queue)); | ||
| 166 | 171 | ||
| 167 | spawner.spawn(run_mac(runner)).unwrap(); | 172 | spawner.spawn(run_mac(runner)).unwrap(); |
| 168 | 173 | ||
