Add embedded-storage trait impls for QSPI

* Adds implementations of embedded-storage and embedded-storage-async
for QSPI
* Add blocking implementations of QSPI
* Use blocking implementation in new() and embedded-storage impls
* Use async implementation in embedded-storage-async impls
* Add FLASH_SIZE const generic parameter
* Own IRQ in Qspi to disable it on drop
This commit is contained in:
Ulf Lilleengen
2022-04-19 14:39:59 +02:00
parent 00c51c8fd5
commit e966125d62
4 changed files with 207 additions and 37 deletions

View File

@ -32,7 +32,7 @@ async fn main(_spawner: Spawner, mut p: Peripherals) {
exit_time: 3, // tRDP = 35uS
});
let mut q = qspi::Qspi::new(
let mut q: qspi::Qspi<_, 67108864> = qspi::Qspi::new(
&mut p.QSPI,
&mut irq,
&mut p.P0_19,
@ -42,8 +42,7 @@ async fn main(_spawner: Spawner, mut p: Peripherals) {
&mut p.P0_22,
&mut p.P0_23,
config,
)
.await;
);
let mut id = [1; 3];
unwrap!(q.custom_instruction(0x9F, &[], &mut id).await);