aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbofh <[email protected]>2023-07-31 00:02:50 +0200
committerbofh <[email protected]>2023-07-31 00:02:50 +0200
commitd8f02e151b50f9d5156d5dd60911ea0f27ddedf0 (patch)
treee5ed00187d9cbb0bfe467bad7b8aa39ad310aeb5
parentd8420ed5a0cd96eef86c213a40c0bd84f4da0afe (diff)
Set frequency in stm32 SPI examples
-rw-r--r--examples/stm32f3/src/bin/spi_dma.rs6
-rw-r--r--examples/stm32f4/src/bin/spi.rs6
-rw-r--r--examples/stm32f4/src/bin/spi_dma.rs6
-rw-r--r--examples/stm32l0/src/bin/spi.rs6
-rw-r--r--examples/stm32l1/src/bin/spi.rs6
-rw-r--r--examples/stm32l4/src/bin/spi.rs6
-rw-r--r--examples/stm32l4/src/bin/spi_blocking_async.rs6
-rw-r--r--examples/stm32l4/src/bin/spi_dma.rs14
-rw-r--r--tests/stm32/src/bin/spi.rs11
-rw-r--r--tests/stm32/src/bin/spi_dma.rs11
10 files changed, 52 insertions, 26 deletions
diff --git a/examples/stm32f3/src/bin/spi_dma.rs b/examples/stm32f3/src/bin/spi_dma.rs
index 6a39097d4..a27c1d547 100644
--- a/examples/stm32f3/src/bin/spi_dma.rs
+++ b/examples/stm32f3/src/bin/spi_dma.rs
@@ -8,6 +8,7 @@ use core::str::from_utf8;
8use defmt::*; 8use defmt::*;
9use embassy_executor::Spawner; 9use embassy_executor::Spawner;
10use embassy_stm32::spi::{Config, Spi}; 10use embassy_stm32::spi::{Config, Spi};
11use embassy_stm32::time::Hertz;
11use heapless::String; 12use heapless::String;
12use {defmt_rtt as _, panic_probe as _}; 13use {defmt_rtt as _, panic_probe as _};
13 14
@@ -16,7 +17,10 @@ async fn main(_spawner: Spawner) {
16 let p = embassy_stm32::init(Default::default()); 17 let p = embassy_stm32::init(Default::default());
17 info!("Hello World!"); 18 info!("Hello World!");
18 19
19 let mut spi = Spi::new(p.SPI1, p.PB3, p.PB5, p.PB4, p.DMA1_CH3, p.DMA1_CH2, Config::default()); 20 let mut spi_config = Config::default();
21 spi_config.frequency = Hertz(1_000_000);
22
23 let mut spi = Spi::new(p.SPI1, p.PB3, p.PB5, p.PB4, p.DMA1_CH3, p.DMA1_CH2, spi_config);
20 24
21 for n in 0u32.. { 25 for n in 0u32.. {
22 let mut write: String<128> = String::new(); 26 let mut write: String<128> = String::new();
diff --git a/examples/stm32f4/src/bin/spi.rs b/examples/stm32f4/src/bin/spi.rs
index b0c62b3f0..0919e9874 100644
--- a/examples/stm32f4/src/bin/spi.rs
+++ b/examples/stm32f4/src/bin/spi.rs
@@ -7,6 +7,7 @@ use defmt::*;
7use embassy_stm32::dma::NoDma; 7use embassy_stm32::dma::NoDma;
8use embassy_stm32::gpio::{Level, Output, Speed}; 8use embassy_stm32::gpio::{Level, Output, Speed};
9use embassy_stm32::spi::{Config, Spi}; 9use embassy_stm32::spi::{Config, Spi};
10use embassy_stm32::time::Hertz;
10use {defmt_rtt as _, panic_probe as _}; 11use {defmt_rtt as _, panic_probe as _};
11 12
12#[entry] 13#[entry]
@@ -15,7 +16,10 @@ fn main() -> ! {
15 16
16 let p = embassy_stm32::init(Default::default()); 17 let p = embassy_stm32::init(Default::default());
17 18
18 let mut spi = Spi::new(p.SPI3, p.PC10, p.PC12, p.PC11, NoDma, NoDma, Config::default()); 19 let mut spi_config = Config::default();
20 spi_config.frequency = Hertz(1_000_000);
21
22 let mut spi = Spi::new(p.SPI3, p.PC10, p.PC12, p.PC11, NoDma, NoDma, spi_config);
19 23
20 let mut cs = Output::new(p.PE0, Level::High, Speed::VeryHigh); 24 let mut cs = Output::new(p.PE0, Level::High, Speed::VeryHigh);
21 25
diff --git a/examples/stm32f4/src/bin/spi_dma.rs b/examples/stm32f4/src/bin/spi_dma.rs
index 4edea93a8..f291f7dba 100644
--- a/examples/stm32f4/src/bin/spi_dma.rs
+++ b/examples/stm32f4/src/bin/spi_dma.rs
@@ -8,6 +8,7 @@ use core::str::from_utf8;
8use defmt::*; 8use defmt::*;
9use embassy_executor::Spawner; 9use embassy_executor::Spawner;
10use embassy_stm32::spi::{Config, Spi}; 10use embassy_stm32::spi::{Config, Spi};
11use embassy_stm32::time::Hertz;
11use heapless::String; 12use heapless::String;
12use {defmt_rtt as _, panic_probe as _}; 13use {defmt_rtt as _, panic_probe as _};
13 14
@@ -16,7 +17,10 @@ async fn main(_spawner: Spawner) {
16 let p = embassy_stm32::init(Default::default()); 17 let p = embassy_stm32::init(Default::default());
17 info!("Hello World!"); 18 info!("Hello World!");
18 19
19 let mut spi = Spi::new(p.SPI1, p.PB3, p.PB5, p.PB4, p.DMA2_CH3, p.DMA2_CH2, Config::default()); 20 let mut spi_config = Config::default();
21 spi_config.frequency = Hertz(1_000_000);
22
23 let mut spi = Spi::new(p.SPI1, p.PB3, p.PB5, p.PB4, p.DMA2_CH3, p.DMA2_CH2, spi_config);
20 24
21 for n in 0u32.. { 25 for n in 0u32.. {
22 let mut write: String<128> = String::new(); 26 let mut write: String<128> = String::new();
diff --git a/examples/stm32l0/src/bin/spi.rs b/examples/stm32l0/src/bin/spi.rs
index 24ea9a681..583e3d127 100644
--- a/examples/stm32l0/src/bin/spi.rs
+++ b/examples/stm32l0/src/bin/spi.rs
@@ -7,6 +7,7 @@ use embassy_executor::Spawner;
7use embassy_stm32::dma::NoDma; 7use embassy_stm32::dma::NoDma;
8use embassy_stm32::gpio::{Level, Output, Speed}; 8use embassy_stm32::gpio::{Level, Output, Speed};
9use embassy_stm32::spi::{Config, Spi}; 9use embassy_stm32::spi::{Config, Spi};
10use embassy_stm32::time::Hertz;
10use {defmt_rtt as _, panic_probe as _}; 11use {defmt_rtt as _, panic_probe as _};
11 12
12#[embassy_executor::main] 13#[embassy_executor::main]
@@ -14,7 +15,10 @@ async fn main(_spawner: Spawner) {
14 let p = embassy_stm32::init(Default::default()); 15 let p = embassy_stm32::init(Default::default());
15 info!("Hello World, folks!"); 16 info!("Hello World, folks!");
16 17
17 let mut spi = Spi::new(p.SPI1, p.PB3, p.PA7, p.PA6, NoDma, NoDma, Config::default()); 18 let mut spi_config = Config::default();
19 spi_config.frequency = Hertz(1_000_000);
20
21 let mut spi = Spi::new(p.SPI1, p.PB3, p.PA7, p.PA6, NoDma, NoDma, spi_config);
18 22
19 let mut cs = Output::new(p.PA15, Level::High, Speed::VeryHigh); 23 let mut cs = Output::new(p.PA15, Level::High, Speed::VeryHigh);
20 24
diff --git a/examples/stm32l1/src/bin/spi.rs b/examples/stm32l1/src/bin/spi.rs
index 535231402..905b4d75c 100644
--- a/examples/stm32l1/src/bin/spi.rs
+++ b/examples/stm32l1/src/bin/spi.rs
@@ -7,6 +7,7 @@ use embassy_executor::Spawner;
7use embassy_stm32::dma::NoDma; 7use embassy_stm32::dma::NoDma;
8use embassy_stm32::gpio::{Level, Output, Speed}; 8use embassy_stm32::gpio::{Level, Output, Speed};
9use embassy_stm32::spi::{Config, Spi}; 9use embassy_stm32::spi::{Config, Spi};
10use embassy_stm32::time::Hertz;
10use {defmt_rtt as _, panic_probe as _}; 11use {defmt_rtt as _, panic_probe as _};
11 12
12#[embassy_executor::main] 13#[embassy_executor::main]
@@ -14,7 +15,10 @@ async fn main(_spawner: Spawner) {
14 let p = embassy_stm32::init(Default::default()); 15 let p = embassy_stm32::init(Default::default());
15 info!("Hello World, folks!"); 16 info!("Hello World, folks!");
16 17
17 let mut spi = Spi::new(p.SPI1, p.PA5, p.PA7, p.PA6, NoDma, NoDma, Config::default()); 18 let mut spi_config = Config::default();
19 spi_config.frequency = Hertz(1_000_000);
20
21 let mut spi = Spi::new(p.SPI1, p.PA5, p.PA7, p.PA6, NoDma, NoDma, spi_config);
18 22
19 let mut cs = Output::new(p.PA4, Level::High, Speed::VeryHigh); 23 let mut cs = Output::new(p.PA4, Level::High, Speed::VeryHigh);
20 24
diff --git a/examples/stm32l4/src/bin/spi.rs b/examples/stm32l4/src/bin/spi.rs
index a3097fb48..54cf68f7b 100644
--- a/examples/stm32l4/src/bin/spi.rs
+++ b/examples/stm32l4/src/bin/spi.rs
@@ -6,6 +6,7 @@ use defmt::*;
6use embassy_stm32::dma::NoDma; 6use embassy_stm32::dma::NoDma;
7use embassy_stm32::gpio::{Level, Output, Speed}; 7use embassy_stm32::gpio::{Level, Output, Speed};
8use embassy_stm32::spi::{Config, Spi}; 8use embassy_stm32::spi::{Config, Spi};
9use embassy_stm32::time::Hertz;
9use {defmt_rtt as _, panic_probe as _}; 10use {defmt_rtt as _, panic_probe as _};
10 11
11#[cortex_m_rt::entry] 12#[cortex_m_rt::entry]
@@ -14,7 +15,10 @@ fn main() -> ! {
14 15
15 let p = embassy_stm32::init(Default::default()); 16 let p = embassy_stm32::init(Default::default());
16 17
17 let mut spi = Spi::new(p.SPI3, p.PC10, p.PC12, p.PC11, NoDma, NoDma, Config::default()); 18 let mut spi_config = Config::default();
19 spi_config.frequency = Hertz(1_000_000);
20
21 let mut spi = Spi::new(p.SPI3, p.PC10, p.PC12, p.PC11, NoDma, NoDma, spi_config);
18 22
19 let mut cs = Output::new(p.PE0, Level::High, Speed::VeryHigh); 23 let mut cs = Output::new(p.PE0, Level::High, Speed::VeryHigh);
20 24
diff --git a/examples/stm32l4/src/bin/spi_blocking_async.rs b/examples/stm32l4/src/bin/spi_blocking_async.rs
index 45af8a9f4..f1b80087c 100644
--- a/examples/stm32l4/src/bin/spi_blocking_async.rs
+++ b/examples/stm32l4/src/bin/spi_blocking_async.rs
@@ -8,6 +8,7 @@ use embassy_executor::Spawner;
8use embassy_stm32::dma::NoDma; 8use embassy_stm32::dma::NoDma;
9use embassy_stm32::gpio::{Input, Level, Output, Pull, Speed}; 9use embassy_stm32::gpio::{Input, Level, Output, Pull, Speed};
10use embassy_stm32::spi::{Config, Spi}; 10use embassy_stm32::spi::{Config, Spi};
11use embassy_stm32::time::Hertz;
11use embedded_hal_async::spi::SpiBus; 12use embedded_hal_async::spi::SpiBus;
12use {defmt_rtt as _, panic_probe as _}; 13use {defmt_rtt as _, panic_probe as _};
13 14
@@ -16,7 +17,10 @@ async fn main(_spawner: Spawner) {
16 let p = embassy_stm32::init(Default::default()); 17 let p = embassy_stm32::init(Default::default());
17 info!("Hello World!"); 18 info!("Hello World!");
18 19
19 let spi = Spi::new(p.SPI3, p.PC10, p.PC12, p.PC11, NoDma, NoDma, Config::default()); 20 let mut spi_config = Config::default();
21 spi_config.frequency = Hertz(1_000_000);
22
23 let spi = Spi::new(p.SPI3, p.PC10, p.PC12, p.PC11, NoDma, NoDma, spi_config);
20 24
21 let mut spi = BlockingAsync::new(spi); 25 let mut spi = BlockingAsync::new(spi);
22 26
diff --git a/examples/stm32l4/src/bin/spi_dma.rs b/examples/stm32l4/src/bin/spi_dma.rs
index 01265c49b..ff9b5b43b 100644
--- a/examples/stm32l4/src/bin/spi_dma.rs
+++ b/examples/stm32l4/src/bin/spi_dma.rs
@@ -6,6 +6,7 @@ use defmt::*;
6use embassy_executor::Spawner; 6use embassy_executor::Spawner;
7use embassy_stm32::gpio::{Input, Level, Output, Pull, Speed}; 7use embassy_stm32::gpio::{Input, Level, Output, Pull, Speed};
8use embassy_stm32::spi::{Config, Spi}; 8use embassy_stm32::spi::{Config, Spi};
9use embassy_stm32::time::Hertz;
9use {defmt_rtt as _, panic_probe as _}; 10use {defmt_rtt as _, panic_probe as _};
10 11
11#[embassy_executor::main] 12#[embassy_executor::main]
@@ -13,15 +14,10 @@ async fn main(_spawner: Spawner) {
13 let p = embassy_stm32::init(Default::default()); 14 let p = embassy_stm32::init(Default::default());
14 info!("Hello World!"); 15 info!("Hello World!");
15 16
16 let mut spi = Spi::new( 17 let mut spi_config = Config::default();
17 p.SPI3, 18 spi_config.frequency = Hertz(1_000_000);
18 p.PC10, 19
19 p.PC12, 20 let mut spi = Spi::new(p.SPI3, p.PC10, p.PC12, p.PC11, p.DMA1_CH1, p.DMA1_CH2, spi_config);
20 p.PC11,
21 p.DMA1_CH1,
22 p.DMA1_CH2,
23 Config::default(),
24 );
25 21
26 // These are the pins for the Inventek eS-Wifi SPI Wifi Adapter. 22 // These are the pins for the Inventek eS-Wifi SPI Wifi Adapter.
27 23
diff --git a/tests/stm32/src/bin/spi.rs b/tests/stm32/src/bin/spi.rs
index 7c2425fc3..e51dd5bf2 100644
--- a/tests/stm32/src/bin/spi.rs
+++ b/tests/stm32/src/bin/spi.rs
@@ -9,6 +9,7 @@ use defmt::assert_eq;
9use embassy_executor::Spawner; 9use embassy_executor::Spawner;
10use embassy_stm32::dma::NoDma; 10use embassy_stm32::dma::NoDma;
11use embassy_stm32::spi::{self, Spi}; 11use embassy_stm32::spi::{self, Spi};
12use embassy_stm32::time::Hertz;
12 13
13#[embassy_executor::main] 14#[embassy_executor::main]
14async fn main(_spawner: Spawner) { 15async fn main(_spawner: Spawner) {
@@ -34,14 +35,14 @@ async fn main(_spawner: Spawner) {
34 #[cfg(feature = "stm32c031c6")] 35 #[cfg(feature = "stm32c031c6")]
35 let (spi, sck, mosi, miso) = (p.SPI1, p.PA5, p.PA7, p.PA6); 36 let (spi, sck, mosi, miso) = (p.SPI1, p.PA5, p.PA7, p.PA6);
36 37
38 let mut spi_config = spi::Config::default();
39 spi_config.frequency = Hertz(1_000_000);
40
37 let mut spi = Spi::new( 41 let mut spi = Spi::new(
38 spi, 42 spi, sck, // Arduino D13
39 sck, // Arduino D13
40 mosi, // Arduino D11 43 mosi, // Arduino D11
41 miso, // Arduino D12 44 miso, // Arduino D12
42 NoDma, 45 NoDma, NoDma, spi_config,
43 NoDma,
44 spi::Config::default(),
45 ); 46 );
46 47
47 let data: [u8; 9] = [0x00, 0xFF, 0xAA, 0x55, 0xC0, 0xFF, 0xEE, 0xC0, 0xDE]; 48 let data: [u8; 9] = [0x00, 0xFF, 0xAA, 0x55, 0xC0, 0xFF, 0xEE, 0xC0, 0xDE];
diff --git a/tests/stm32/src/bin/spi_dma.rs b/tests/stm32/src/bin/spi_dma.rs
index e70c09f71..d45cbe45b 100644
--- a/tests/stm32/src/bin/spi_dma.rs
+++ b/tests/stm32/src/bin/spi_dma.rs
@@ -8,6 +8,7 @@ use common::*;
8use defmt::assert_eq; 8use defmt::assert_eq;
9use embassy_executor::Spawner; 9use embassy_executor::Spawner;
10use embassy_stm32::spi::{self, Spi}; 10use embassy_stm32::spi::{self, Spi};
11use embassy_stm32::time::Hertz;
11 12
12#[embassy_executor::main] 13#[embassy_executor::main]
13async fn main(_spawner: Spawner) { 14async fn main(_spawner: Spawner) {
@@ -33,14 +34,14 @@ async fn main(_spawner: Spawner) {
33 #[cfg(feature = "stm32c031c6")] 34 #[cfg(feature = "stm32c031c6")]
34 let (spi, sck, mosi, miso, tx_dma, rx_dma) = (p.SPI1, p.PA5, p.PA7, p.PA6, p.DMA1_CH1, p.DMA1_CH2); 35 let (spi, sck, mosi, miso, tx_dma, rx_dma) = (p.SPI1, p.PA5, p.PA7, p.PA6, p.DMA1_CH1, p.DMA1_CH2);
35 36
37 let mut spi_config = spi::Config::default();
38 spi_config.frequency = Hertz(1_000_000);
39
36 let mut spi = Spi::new( 40 let mut spi = Spi::new(
37 spi, 41 spi, sck, // Arduino D13
38 sck, // Arduino D13
39 mosi, // Arduino D11 42 mosi, // Arduino D11
40 miso, // Arduino D12 43 miso, // Arduino D12
41 tx_dma, 44 tx_dma, rx_dma, spi_config,
42 rx_dma,
43 spi::Config::default(),
44 ); 45 );
45 46
46 let data: [u8; 9] = [0x00, 0xFF, 0xAA, 0x55, 0xC0, 0xFF, 0xEE, 0xC0, 0xDE]; 47 let data: [u8; 9] = [0x00, 0xFF, 0xAA, 0x55, 0xC0, 0xFF, 0xEE, 0xC0, 0xDE];