aboutsummaryrefslogtreecommitdiff
path: root/examples/mimxrt6/src/bin/dma.rs
diff options
context:
space:
mode:
authorxoviat <[email protected]>2025-12-12 01:21:34 +0000
committerGitHub <[email protected]>2025-12-12 01:21:34 +0000
commit3ff10a6a12b61ff16db26f8ffccfa3c1ec6b09ab (patch)
tree3938e3f7e2575a62db0fae61533c30fc8928bb2b /examples/mimxrt6/src/bin/dma.rs
parentb5a671e12c798b6d29fdf7177468a73d08e4b995 (diff)
parent17f0f4baa489d87d9862f9ab91dc73530daf5b3e (diff)
Merge pull request #5045 from felipebalbi/imxrt/dma
[iMXRT] add a minimal DMA copy example
Diffstat (limited to 'examples/mimxrt6/src/bin/dma.rs')
-rw-r--r--examples/mimxrt6/src/bin/dma.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/examples/mimxrt6/src/bin/dma.rs b/examples/mimxrt6/src/bin/dma.rs
new file mode 100644
index 000000000..b490efc6b
--- /dev/null
+++ b/examples/mimxrt6/src/bin/dma.rs
@@ -0,0 +1,26 @@
1#![no_std]
2#![no_main]
3
4extern crate embassy_imxrt_examples;
5
6use defmt::info;
7use embassy_executor::Spawner;
8use embassy_imxrt::dma::copy;
9use {defmt_rtt as _, panic_probe as _};
10
11const BUFLEN: usize = 1024;
12
13#[embassy_executor::main]
14async fn main(_spawner: Spawner) {
15 let p = embassy_imxrt::init(Default::default());
16
17 info!("Test memory-to-memory DMA transfers");
18
19 let src = [0x55u8; BUFLEN];
20 let mut dst = [0u8; BUFLEN];
21
22 unsafe { copy(p.DMA0_CH0, &src, &mut dst) }.await;
23 assert!(dst == src);
24
25 info!("DMA copy succeeded");
26}