diff options
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/rpi-pico-w/Cargo.toml | 18 | ||||
| -rw-r--r-- | examples/rpi-pico-w/src/bin/tcp_server.rs | 16 | ||||
| -rw-r--r-- | examples/rpi-pico-w/src/bin/tcp_server_ap.rs | 16 | ||||
| -rw-r--r-- | examples/rpi-pico-w/src/bin/wifi_scan.rs | 16 |
4 files changed, 24 insertions, 42 deletions
diff --git a/examples/rpi-pico-w/Cargo.toml b/examples/rpi-pico-w/Cargo.toml index 5b46726d2..d972bf5a5 100644 --- a/examples/rpi-pico-w/Cargo.toml +++ b/examples/rpi-pico-w/Cargo.toml | |||
| @@ -7,7 +7,7 @@ edition = "2021" | |||
| 7 | [dependencies] | 7 | [dependencies] |
| 8 | cyw43 = { path = "../../", features = ["defmt", "firmware-logs"] } | 8 | cyw43 = { path = "../../", features = ["defmt", "firmware-logs"] } |
| 9 | cyw43-pio = { path = "../../cyw43-pio", features = ["defmt"] } | 9 | cyw43-pio = { path = "../../cyw43-pio", features = ["defmt"] } |
| 10 | embassy-executor = { version = "0.1.0", features = ["defmt", "integrated-timers", "executor-thread", "arch-cortex-m"] } | 10 | embassy-executor = { version = "0.2.0", features = ["defmt", "integrated-timers", "executor-thread", "arch-cortex-m"] } |
| 11 | embassy-time = { version = "0.1.0", features = ["defmt", "defmt-timestamp-uptime"] } | 11 | embassy-time = { version = "0.1.0", features = ["defmt", "defmt-timestamp-uptime"] } |
| 12 | embassy-rp = { version = "0.1.0", features = ["defmt", "unstable-traits", "nightly", "unstable-pac", "time-driver"] } | 12 | embassy-rp = { version = "0.1.0", features = ["defmt", "unstable-traits", "nightly", "unstable-pac", "time-driver"] } |
| 13 | embassy-net = { version = "0.1.0", features = ["defmt", "tcp", "dhcpv4", "medium-ethernet", "unstable-traits", "nightly"] } | 13 | embassy-net = { version = "0.1.0", features = ["defmt", "tcp", "dhcpv4", "medium-ethernet", "unstable-traits", "nightly"] } |
| @@ -27,14 +27,14 @@ heapless = "0.7.15" | |||
| 27 | 27 | ||
| 28 | 28 | ||
| 29 | [patch.crates-io] | 29 | [patch.crates-io] |
| 30 | embassy-executor = { git = "https://github.com/embassy-rs/embassy", rev = "03d6363d5af5dcaf21b52734994a466ca593d2b6" } | 30 | embassy-executor = { git = "https://github.com/embassy-rs/embassy", rev = "82f7e104d90a6628d1873017ea5ef6a7afb3b3f7" } |
| 31 | embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "03d6363d5af5dcaf21b52734994a466ca593d2b6" } | 31 | embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "82f7e104d90a6628d1873017ea5ef6a7afb3b3f7" } |
| 32 | embassy-futures = { git = "https://github.com/embassy-rs/embassy", rev = "03d6363d5af5dcaf21b52734994a466ca593d2b6" } | 32 | embassy-futures = { git = "https://github.com/embassy-rs/embassy", rev = "82f7e104d90a6628d1873017ea5ef6a7afb3b3f7" } |
| 33 | embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "03d6363d5af5dcaf21b52734994a466ca593d2b6" } | 33 | embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "82f7e104d90a6628d1873017ea5ef6a7afb3b3f7" } |
| 34 | embassy-rp = { git = "https://github.com/embassy-rs/embassy", rev = "03d6363d5af5dcaf21b52734994a466ca593d2b6" } | 34 | embassy-rp = { git = "https://github.com/embassy-rs/embassy", rev = "82f7e104d90a6628d1873017ea5ef6a7afb3b3f7" } |
| 35 | embassy-net = { git = "https://github.com/embassy-rs/embassy", rev = "03d6363d5af5dcaf21b52734994a466ca593d2b6" } | 35 | embassy-net = { git = "https://github.com/embassy-rs/embassy", rev = "82f7e104d90a6628d1873017ea5ef6a7afb3b3f7" } |
| 36 | embassy-net-driver = { git = "https://github.com/embassy-rs/embassy", rev = "03d6363d5af5dcaf21b52734994a466ca593d2b6" } | 36 | embassy-net-driver = { git = "https://github.com/embassy-rs/embassy", rev = "82f7e104d90a6628d1873017ea5ef6a7afb3b3f7" } |
| 37 | embassy-net-driver-channel = { git = "https://github.com/embassy-rs/embassy", rev = "03d6363d5af5dcaf21b52734994a466ca593d2b6" } | 37 | embassy-net-driver-channel = { git = "https://github.com/embassy-rs/embassy", rev = "82f7e104d90a6628d1873017ea5ef6a7afb3b3f7" } |
| 38 | 38 | ||
| 39 | [profile.dev] | 39 | [profile.dev] |
| 40 | debug = 2 | 40 | debug = 2 |
diff --git a/examples/rpi-pico-w/src/bin/tcp_server.rs b/examples/rpi-pico-w/src/bin/tcp_server.rs index 9581602a7..8accc469f 100644 --- a/examples/rpi-pico-w/src/bin/tcp_server.rs +++ b/examples/rpi-pico-w/src/bin/tcp_server.rs | |||
| @@ -12,8 +12,8 @@ use embassy_executor::Spawner; | |||
| 12 | use embassy_net::tcp::TcpSocket; | 12 | use embassy_net::tcp::TcpSocket; |
| 13 | use embassy_net::{Config, Stack, StackResources}; | 13 | use embassy_net::{Config, Stack, StackResources}; |
| 14 | use embassy_rp::gpio::{Level, Output}; | 14 | use embassy_rp::gpio::{Level, Output}; |
| 15 | use embassy_rp::peripherals::{DMA_CH0, PIN_23, PIN_25}; | 15 | use embassy_rp::peripherals::{DMA_CH0, PIN_23, PIN_25, PIO0}; |
| 16 | use embassy_rp::pio::{Pio0, PioPeripheral, PioStateMachineInstance, Sm0}; | 16 | use embassy_rp::pio::Pio; |
| 17 | use embedded_io::asynch::Write; | 17 | use embedded_io::asynch::Write; |
| 18 | use static_cell::StaticCell; | 18 | use static_cell::StaticCell; |
| 19 | use {defmt_rtt as _, panic_probe as _}; | 19 | use {defmt_rtt as _, panic_probe as _}; |
| @@ -28,11 +28,7 @@ macro_rules! singleton { | |||
| 28 | 28 | ||
| 29 | #[embassy_executor::task] | 29 | #[embassy_executor::task] |
| 30 | async fn wifi_task( | 30 | async fn wifi_task( |
| 31 | runner: cyw43::Runner< | 31 | runner: cyw43::Runner<'static, Output<'static, PIN_23>, PioSpi<'static, PIN_25, PIO0, 0, DMA_CH0>>, |
| 32 | 'static, | ||
| 33 | Output<'static, PIN_23>, | ||
| 34 | PioSpi<PIN_25, PioStateMachineInstance<Pio0, Sm0>, DMA_CH0>, | ||
| 35 | >, | ||
| 36 | ) -> ! { | 32 | ) -> ! { |
| 37 | runner.run().await | 33 | runner.run().await |
| 38 | } | 34 | } |
| @@ -60,10 +56,8 @@ async fn main(spawner: Spawner) { | |||
| 60 | 56 | ||
| 61 | let pwr = Output::new(p.PIN_23, Level::Low); | 57 | let pwr = Output::new(p.PIN_23, Level::Low); |
| 62 | let cs = Output::new(p.PIN_25, Level::High); | 58 | let cs = Output::new(p.PIN_25, Level::High); |
| 63 | 59 | let mut pio = Pio::new(p.PIO0); | |
| 64 | let (_, sm, _, _, _) = p.PIO0.split(); | 60 | let spi = PioSpi::new(&mut pio.common, pio.sm0, pio.irq0, cs, p.PIN_24, p.PIN_29, p.DMA_CH0); |
| 65 | let dma = p.DMA_CH0; | ||
| 66 | let spi = PioSpi::new(sm, cs, p.PIN_24, p.PIN_29, dma); | ||
| 67 | 61 | ||
| 68 | let state = singleton!(cyw43::State::new()); | 62 | let state = singleton!(cyw43::State::new()); |
| 69 | let (net_device, mut control, runner) = cyw43::new(state, pwr, spi, fw).await; | 63 | let (net_device, mut control, runner) = cyw43::new(state, pwr, spi, fw).await; |
diff --git a/examples/rpi-pico-w/src/bin/tcp_server_ap.rs b/examples/rpi-pico-w/src/bin/tcp_server_ap.rs index e43412625..ee2c32379 100644 --- a/examples/rpi-pico-w/src/bin/tcp_server_ap.rs +++ b/examples/rpi-pico-w/src/bin/tcp_server_ap.rs | |||
| @@ -12,8 +12,8 @@ use embassy_executor::Spawner; | |||
| 12 | use embassy_net::tcp::TcpSocket; | 12 | use embassy_net::tcp::TcpSocket; |
| 13 | use embassy_net::{Config, Stack, StackResources}; | 13 | use embassy_net::{Config, Stack, StackResources}; |
| 14 | use embassy_rp::gpio::{Level, Output}; | 14 | use embassy_rp::gpio::{Level, Output}; |
| 15 | use embassy_rp::peripherals::{DMA_CH0, PIN_23, PIN_25}; | 15 | use embassy_rp::peripherals::{DMA_CH0, PIN_23, PIN_25, PIO0}; |
| 16 | use embassy_rp::pio::{Pio0, PioPeripheral, PioStateMachineInstance, Sm0}; | 16 | use embassy_rp::pio::Pio; |
| 17 | use embedded_io::asynch::Write; | 17 | use embedded_io::asynch::Write; |
| 18 | use static_cell::StaticCell; | 18 | use static_cell::StaticCell; |
| 19 | use {defmt_rtt as _, panic_probe as _}; | 19 | use {defmt_rtt as _, panic_probe as _}; |
| @@ -28,11 +28,7 @@ macro_rules! singleton { | |||
| 28 | 28 | ||
| 29 | #[embassy_executor::task] | 29 | #[embassy_executor::task] |
| 30 | async fn wifi_task( | 30 | async fn wifi_task( |
| 31 | runner: cyw43::Runner< | 31 | runner: cyw43::Runner<'static, Output<'static, PIN_23>, PioSpi<'static, PIN_25, PIO0, 0, DMA_CH0>>, |
| 32 | 'static, | ||
| 33 | Output<'static, PIN_23>, | ||
| 34 | PioSpi<PIN_25, PioStateMachineInstance<Pio0, Sm0>, DMA_CH0>, | ||
| 35 | >, | ||
| 36 | ) -> ! { | 32 | ) -> ! { |
| 37 | runner.run().await | 33 | runner.run().await |
| 38 | } | 34 | } |
| @@ -60,10 +56,8 @@ async fn main(spawner: Spawner) { | |||
| 60 | 56 | ||
| 61 | let pwr = Output::new(p.PIN_23, Level::Low); | 57 | let pwr = Output::new(p.PIN_23, Level::Low); |
| 62 | let cs = Output::new(p.PIN_25, Level::High); | 58 | let cs = Output::new(p.PIN_25, Level::High); |
| 63 | 59 | let mut pio = Pio::new(p.PIO0); | |
| 64 | let (_, sm, _, _, _) = p.PIO0.split(); | 60 | let spi = PioSpi::new(&mut pio.common, pio.sm0, pio.irq0, cs, p.PIN_24, p.PIN_29, p.DMA_CH0); |
| 65 | let dma = p.DMA_CH0; | ||
| 66 | let spi = PioSpi::new(sm, cs, p.PIN_24, p.PIN_29, dma); | ||
| 67 | 61 | ||
| 68 | let state = singleton!(cyw43::State::new()); | 62 | let state = singleton!(cyw43::State::new()); |
| 69 | let (net_device, mut control, runner) = cyw43::new(state, pwr, spi, fw).await; | 63 | let (net_device, mut control, runner) = cyw43::new(state, pwr, spi, fw).await; |
diff --git a/examples/rpi-pico-w/src/bin/wifi_scan.rs b/examples/rpi-pico-w/src/bin/wifi_scan.rs index da8fadfd8..a2a44f99d 100644 --- a/examples/rpi-pico-w/src/bin/wifi_scan.rs +++ b/examples/rpi-pico-w/src/bin/wifi_scan.rs | |||
| @@ -11,8 +11,8 @@ use defmt::*; | |||
| 11 | use embassy_executor::Spawner; | 11 | use embassy_executor::Spawner; |
| 12 | use embassy_net::Stack; | 12 | use embassy_net::Stack; |
| 13 | use embassy_rp::gpio::{Level, Output}; | 13 | use embassy_rp::gpio::{Level, Output}; |
| 14 | use embassy_rp::peripherals::{DMA_CH0, PIN_23, PIN_25}; | 14 | use embassy_rp::peripherals::{DMA_CH0, PIN_23, PIN_25, PIO0}; |
| 15 | use embassy_rp::pio::{Pio0, PioPeripheral, PioStateMachineInstance, Sm0}; | 15 | use embassy_rp::pio::Pio; |
| 16 | use static_cell::StaticCell; | 16 | use static_cell::StaticCell; |
| 17 | use {defmt_rtt as _, panic_probe as _}; | 17 | use {defmt_rtt as _, panic_probe as _}; |
| 18 | 18 | ||
| @@ -26,11 +26,7 @@ macro_rules! singleton { | |||
| 26 | 26 | ||
| 27 | #[embassy_executor::task] | 27 | #[embassy_executor::task] |
| 28 | async fn wifi_task( | 28 | async fn wifi_task( |
| 29 | runner: cyw43::Runner< | 29 | runner: cyw43::Runner<'static, Output<'static, PIN_23>, PioSpi<'static, PIN_25, PIO0, 0, DMA_CH0>>, |
| 30 | 'static, | ||
| 31 | Output<'static, PIN_23>, | ||
| 32 | PioSpi<PIN_25, PioStateMachineInstance<Pio0, Sm0>, DMA_CH0>, | ||
| 33 | >, | ||
| 34 | ) -> ! { | 30 | ) -> ! { |
| 35 | runner.run().await | 31 | runner.run().await |
| 36 | } | 32 | } |
| @@ -58,10 +54,8 @@ async fn main(spawner: Spawner) { | |||
| 58 | 54 | ||
| 59 | let pwr = Output::new(p.PIN_23, Level::Low); | 55 | let pwr = Output::new(p.PIN_23, Level::Low); |
| 60 | let cs = Output::new(p.PIN_25, Level::High); | 56 | let cs = Output::new(p.PIN_25, Level::High); |
| 61 | 57 | let mut pio = Pio::new(p.PIO0); | |
| 62 | let (_, sm, _, _, _) = p.PIO0.split(); | 58 | let spi = PioSpi::new(&mut pio.common, pio.sm0, pio.irq0, cs, p.PIN_24, p.PIN_29, p.DMA_CH0); |
| 63 | let dma = p.DMA_CH0; | ||
| 64 | let spi = PioSpi::new(sm, cs, p.PIN_24, p.PIN_29, dma); | ||
| 65 | 59 | ||
| 66 | let state = singleton!(cyw43::State::new()); | 60 | let state = singleton!(cyw43::State::new()); |
| 67 | let (_net_device, mut control, runner) = cyw43::new(state, pwr, spi, fw).await; | 61 | let (_net_device, mut control, runner) = cyw43::new(state, pwr, spi, fw).await; |
