stm32/ipcc: static methods for IPCC
This commit is contained in:
@ -4,7 +4,7 @@
|
||||
|
||||
use defmt::*;
|
||||
use embassy_executor::Spawner;
|
||||
use embassy_stm32::ipcc::{Config, Ipcc};
|
||||
use embassy_stm32::ipcc::Config;
|
||||
use embassy_stm32::tl_mbox::TlMbox;
|
||||
use embassy_stm32::{bind_interrupts, tl_mbox};
|
||||
use embassy_time::{Duration, Timer};
|
||||
@ -41,13 +41,11 @@ async fn main(_spawner: Spawner) {
|
||||
Note: extended stack versions are not supported at this time. Do not attempt to install a stack with "extended" in the name.
|
||||
*/
|
||||
|
||||
let p = embassy_stm32::init(Default::default());
|
||||
let _p = embassy_stm32::init(Default::default());
|
||||
info!("Hello World!");
|
||||
|
||||
let config = Config::default();
|
||||
let mut ipcc = Ipcc::new(p.IPCC, config);
|
||||
|
||||
let mbox = TlMbox::init(&mut ipcc, Irqs);
|
||||
let mbox = TlMbox::init(Irqs, config);
|
||||
|
||||
loop {
|
||||
let wireless_fw_info = mbox.wireless_fw_info();
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
use defmt::*;
|
||||
use embassy_executor::Spawner;
|
||||
use embassy_stm32::ipcc::{Config, Ipcc};
|
||||
use embassy_stm32::ipcc::Config;
|
||||
use embassy_stm32::tl_mbox::TlMbox;
|
||||
use embassy_stm32::{bind_interrupts, tl_mbox};
|
||||
use {defmt_rtt as _, panic_probe as _};
|
||||
@ -40,16 +40,11 @@ async fn main(_spawner: Spawner) {
|
||||
Note: extended stack versions are not supported at this time. Do not attempt to install a stack with "extended" in the name.
|
||||
*/
|
||||
|
||||
let p = embassy_stm32::init(Default::default());
|
||||
let _p = embassy_stm32::init(Default::default());
|
||||
info!("Hello World!");
|
||||
|
||||
let config = Config::default();
|
||||
let mut ipcc = Ipcc::new(p.IPCC, config);
|
||||
|
||||
let mbox = TlMbox::init(&mut ipcc, Irqs);
|
||||
|
||||
// initialize ble stack, does not return a response
|
||||
mbox.shci_ble_init(&mut ipcc, Default::default());
|
||||
let mbox = TlMbox::init(Irqs, config);
|
||||
|
||||
info!("waiting for coprocessor to boot");
|
||||
let event_box = mbox.read().await;
|
||||
@ -74,10 +69,11 @@ async fn main(_spawner: Spawner) {
|
||||
);
|
||||
}
|
||||
|
||||
mbox.shci_ble_init(&mut ipcc, Default::default());
|
||||
// initialize ble stack, does not return a response
|
||||
mbox.shci_ble_init(Default::default());
|
||||
|
||||
info!("resetting BLE");
|
||||
mbox.send_ble_cmd(&mut ipcc, &[0x01, 0x03, 0x0c, 0x00, 0x00]);
|
||||
mbox.send_ble_cmd(&[0x01, 0x03, 0x0c, 0x00, 0x00]);
|
||||
|
||||
let event_box = mbox.read().await;
|
||||
|
||||
@ -92,7 +88,10 @@ async fn main(_spawner: Spawner) {
|
||||
|
||||
info!(
|
||||
"==> kind: {:#04x}, code: {:#04x}, payload_length: {}, payload: {:#04x}",
|
||||
kind, code, payload_len, payload
|
||||
kind,
|
||||
code,
|
||||
payload_len,
|
||||
payload[3..]
|
||||
);
|
||||
|
||||
loop {}
|
||||
|
Reference in New Issue
Block a user