stm32/rng: use bind_interrupts!.

This commit is contained in:
Dario Nieuwenhuis
2023-07-31 01:41:12 +02:00
parent d6c5c1772c
commit 4999b045df
16 changed files with 103 additions and 82 deletions

View File

@ -6,9 +6,13 @@ use defmt::*;
use embassy_executor::Spawner;
use embassy_stm32::rcc::{ClockSrc, PLLClkDiv, PLLMul, PLLSource, PLLSrcDiv};
use embassy_stm32::rng::Rng;
use embassy_stm32::Config;
use embassy_stm32::{bind_interrupts, peripherals, rng, Config};
use {defmt_rtt as _, panic_probe as _};
bind_interrupts!(struct Irqs {
RNG => rng::InterruptHandler<peripherals::RNG>;
});
#[embassy_executor::main]
async fn main(_spawner: Spawner) {
let mut config = Config::default();
@ -23,7 +27,7 @@ async fn main(_spawner: Spawner) {
info!("Hello World!");
let mut rng = Rng::new(p.RNG);
let mut rng = Rng::new(p.RNG, Irqs);
let mut buf = [0u8; 16];
unwrap!(rng.async_fill_bytes(&mut buf).await);

View File

@ -9,7 +9,7 @@ use embassy_net::{Stack, StackResources};
use embassy_stm32::rcc::*;
use embassy_stm32::rng::Rng;
use embassy_stm32::usb::Driver;
use embassy_stm32::{bind_interrupts, peripherals, usb, Config};
use embassy_stm32::{bind_interrupts, peripherals, rng, usb, Config};
use embassy_usb::class::cdc_ncm::embassy_net::{Device, Runner, State as NetState};
use embassy_usb::class::cdc_ncm::{CdcNcmClass, State};
use embassy_usb::{Builder, UsbDevice};
@ -24,6 +24,7 @@ const MTU: usize = 1514;
bind_interrupts!(struct Irqs {
USB_FS => usb::InterruptHandler<peripherals::USB>;
RNG => rng::InterruptHandler<peripherals::RNG>;
});
#[embassy_executor::task]
@ -99,7 +100,7 @@ async fn main(spawner: Spawner) {
//});
// Generate random seed
let mut rng = Rng::new(p.RNG);
let mut rng = Rng::new(p.RNG, Irqs);
let seed = rng.next_u64();
// Init network stack