diff options
Diffstat (limited to 'tests/nrf/src')
| -rw-r--r-- | tests/nrf/src/bin/buffered_uart.rs | 14 | ||||
| -rw-r--r-- | tests/nrf/src/bin/buffered_uart_full.rs | 2 | ||||
| -rw-r--r-- | tests/nrf/src/bin/buffered_uart_halves.rs | 16 | ||||
| -rw-r--r-- | tests/nrf/src/bin/buffered_uart_spam.rs | 20 | ||||
| -rw-r--r-- | tests/nrf/src/bin/ethernet_enc28j60_perf.rs | 11 | ||||
| -rw-r--r-- | tests/nrf/src/bin/gpio.rs | 2 | ||||
| -rw-r--r-- | tests/nrf/src/bin/spim.rs | 42 | ||||
| -rw-r--r-- | tests/nrf/src/bin/uart_halves.rs | 14 | ||||
| -rw-r--r-- | tests/nrf/src/bin/uart_split.rs | 6 | ||||
| -rw-r--r-- | tests/nrf/src/bin/wifi_esp_hosted_perf.rs | 13 | ||||
| -rw-r--r-- | tests/nrf/src/common.rs | 35 |
11 files changed, 123 insertions, 52 deletions
diff --git a/tests/nrf/src/bin/buffered_uart.rs b/tests/nrf/src/bin/buffered_uart.rs index 04f32832f..8c4827464 100644 --- a/tests/nrf/src/bin/buffered_uart.rs +++ b/tests/nrf/src/bin/buffered_uart.rs | |||
| @@ -25,14 +25,14 @@ async fn main(_spawner: Spawner) { | |||
| 25 | // test teardown + recreate of the buffereduarte works fine. | 25 | // test teardown + recreate of the buffereduarte works fine. |
| 26 | for _ in 0..2 { | 26 | for _ in 0..2 { |
| 27 | let u = BufferedUarte::new( | 27 | let u = BufferedUarte::new( |
| 28 | &mut peri!(p, UART0), | 28 | peri!(p, UART0).reborrow(), |
| 29 | &mut p.TIMER0, | 29 | p.TIMER0.reborrow(), |
| 30 | &mut p.PPI_CH0, | 30 | p.PPI_CH0.reborrow(), |
| 31 | &mut p.PPI_CH1, | 31 | p.PPI_CH1.reborrow(), |
| 32 | &mut p.PPI_GROUP0, | 32 | p.PPI_GROUP0.reborrow(), |
| 33 | peri!(p, PIN_A).reborrow(), | ||
| 34 | peri!(p, PIN_B).reborrow(), | ||
| 33 | irqs!(UART0_BUFFERED), | 35 | irqs!(UART0_BUFFERED), |
| 34 | &mut peri!(p, PIN_A), | ||
| 35 | &mut peri!(p, PIN_B), | ||
| 36 | config.clone(), | 36 | config.clone(), |
| 37 | &mut rx_buffer, | 37 | &mut rx_buffer, |
| 38 | &mut tx_buffer, | 38 | &mut tx_buffer, |
diff --git a/tests/nrf/src/bin/buffered_uart_full.rs b/tests/nrf/src/bin/buffered_uart_full.rs index 09353bbe8..e0f41b891 100644 --- a/tests/nrf/src/bin/buffered_uart_full.rs +++ b/tests/nrf/src/bin/buffered_uart_full.rs | |||
| @@ -28,9 +28,9 @@ async fn main(_spawner: Spawner) { | |||
| 28 | p.PPI_CH0, | 28 | p.PPI_CH0, |
| 29 | p.PPI_CH1, | 29 | p.PPI_CH1, |
| 30 | p.PPI_GROUP0, | 30 | p.PPI_GROUP0, |
| 31 | irqs!(UART0_BUFFERED), | ||
| 32 | peri!(p, PIN_A), | 31 | peri!(p, PIN_A), |
| 33 | peri!(p, PIN_B), | 32 | peri!(p, PIN_B), |
| 33 | irqs!(UART0_BUFFERED), | ||
| 34 | config.clone(), | 34 | config.clone(), |
| 35 | &mut rx_buffer, | 35 | &mut rx_buffer, |
| 36 | &mut tx_buffer, | 36 | &mut tx_buffer, |
diff --git a/tests/nrf/src/bin/buffered_uart_halves.rs b/tests/nrf/src/bin/buffered_uart_halves.rs index bdf5ad726..e6debd76e 100644 --- a/tests/nrf/src/bin/buffered_uart_halves.rs +++ b/tests/nrf/src/bin/buffered_uart_halves.rs | |||
| @@ -27,21 +27,21 @@ async fn main(_spawner: Spawner) { | |||
| 27 | const COUNT: usize = 40_000; | 27 | const COUNT: usize = 40_000; |
| 28 | 28 | ||
| 29 | let mut tx = BufferedUarteTx::new( | 29 | let mut tx = BufferedUarteTx::new( |
| 30 | &mut peri!(p, UART1), | 30 | peri!(p, UART1).reborrow(), |
| 31 | peri!(p, PIN_A).reborrow(), | ||
| 31 | irqs!(UART1_BUFFERED), | 32 | irqs!(UART1_BUFFERED), |
| 32 | &mut peri!(p, PIN_A), | ||
| 33 | config.clone(), | 33 | config.clone(), |
| 34 | &mut tx_buffer, | 34 | &mut tx_buffer, |
| 35 | ); | 35 | ); |
| 36 | 36 | ||
| 37 | let mut rx = BufferedUarteRx::new( | 37 | let mut rx = BufferedUarteRx::new( |
| 38 | &mut peri!(p, UART0), | 38 | peri!(p, UART0).reborrow(), |
| 39 | &mut p.TIMER0, | 39 | p.TIMER0.reborrow(), |
| 40 | &mut p.PPI_CH0, | 40 | p.PPI_CH0.reborrow(), |
| 41 | &mut p.PPI_CH1, | 41 | p.PPI_CH1.reborrow(), |
| 42 | &mut p.PPI_GROUP0, | 42 | p.PPI_GROUP0.reborrow(), |
| 43 | irqs!(UART0_BUFFERED), | 43 | irqs!(UART0_BUFFERED), |
| 44 | &mut peri!(p, PIN_B), | 44 | peri!(p, PIN_B).reborrow(), |
| 45 | config.clone(), | 45 | config.clone(), |
| 46 | &mut rx_buffer, | 46 | &mut rx_buffer, |
| 47 | ); | 47 | ); |
diff --git a/tests/nrf/src/bin/buffered_uart_spam.rs b/tests/nrf/src/bin/buffered_uart_spam.rs index e8fca452e..24ddd06f3 100644 --- a/tests/nrf/src/bin/buffered_uart_spam.rs +++ b/tests/nrf/src/bin/buffered_uart_spam.rs | |||
| @@ -27,7 +27,11 @@ async fn main(_spawner: Spawner) { | |||
| 27 | 27 | ||
| 28 | let mut rx_buffer = [0u8; 1024]; | 28 | let mut rx_buffer = [0u8; 1024]; |
| 29 | 29 | ||
| 30 | mem::forget(Output::new(&mut peri!(p, PIN_A), Level::High, OutputDrive::Standard)); | 30 | mem::forget(Output::new( |
| 31 | peri!(p, PIN_A).reborrow(), | ||
| 32 | Level::High, | ||
| 33 | OutputDrive::Standard, | ||
| 34 | )); | ||
| 31 | 35 | ||
| 32 | let mut u = BufferedUarteRx::new( | 36 | let mut u = BufferedUarteRx::new( |
| 33 | peri!(p, UART0), | 37 | peri!(p, UART0), |
| @@ -50,15 +54,15 @@ async fn main(_spawner: Spawner) { | |||
| 50 | const NSPAM: usize = 17; | 54 | const NSPAM: usize = 17; |
| 51 | static mut TX_BUF: [u8; NSPAM] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]; | 55 | static mut TX_BUF: [u8; NSPAM] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]; |
| 52 | let _spam = UarteTx::new(peri!(p, UART1), irqs!(UART1), peri!(p, PIN_A), config.clone()); | 56 | let _spam = UarteTx::new(peri!(p, UART1), irqs!(UART1), peri!(p, PIN_A), config.clone()); |
| 53 | let spam_peri: pac::UARTE1 = unsafe { mem::transmute(()) }; | 57 | let spam_peri = pac::UARTE1; |
| 54 | let event = unsafe { Event::new_unchecked(NonNull::new_unchecked(&spam_peri.events_endtx as *const _ as _)) }; | 58 | let event = unsafe { Event::new_unchecked(NonNull::new_unchecked(spam_peri.events_endtx().as_ptr())) }; |
| 55 | let task = unsafe { Task::new_unchecked(NonNull::new_unchecked(&spam_peri.tasks_starttx as *const _ as _)) }; | 59 | let task = unsafe { Task::new_unchecked(NonNull::new_unchecked(spam_peri.tasks_starttx().as_ptr())) }; |
| 56 | let mut spam_ppi = Ppi::new_one_to_one(p.PPI_CH2, event, task); | 60 | let mut spam_ppi = Ppi::new_one_to_one(p.PPI_CH2, event, task); |
| 57 | spam_ppi.enable(); | 61 | spam_ppi.enable(); |
| 58 | let p = unsafe { TX_BUF.as_mut_ptr() }; | 62 | let p = (&raw mut TX_BUF) as *mut u8; |
| 59 | spam_peri.txd.ptr.write(|w| unsafe { w.ptr().bits(p as u32) }); | 63 | spam_peri.txd().ptr().write_value(p as u32); |
| 60 | spam_peri.txd.maxcnt.write(|w| unsafe { w.maxcnt().bits(NSPAM as _) }); | 64 | spam_peri.txd().maxcnt().write(|w| w.set_maxcnt(NSPAM as _)); |
| 61 | spam_peri.tasks_starttx.write(|w| unsafe { w.bits(1) }); | 65 | spam_peri.tasks_starttx().write_value(1); |
| 62 | 66 | ||
| 63 | let mut i = 0; | 67 | let mut i = 0; |
| 64 | let mut total = 0; | 68 | let mut total = 0; |
diff --git a/tests/nrf/src/bin/ethernet_enc28j60_perf.rs b/tests/nrf/src/bin/ethernet_enc28j60_perf.rs index 304754c0e..ed58627f1 100644 --- a/tests/nrf/src/bin/ethernet_enc28j60_perf.rs +++ b/tests/nrf/src/bin/ethernet_enc28j60_perf.rs | |||
| @@ -6,7 +6,7 @@ teleprobe_meta::timeout!(120); | |||
| 6 | 6 | ||
| 7 | use defmt::{info, unwrap}; | 7 | use defmt::{info, unwrap}; |
| 8 | use embassy_executor::Spawner; | 8 | use embassy_executor::Spawner; |
| 9 | use embassy_net::{Stack, StackResources}; | 9 | use embassy_net::StackResources; |
| 10 | use embassy_net_enc28j60::Enc28j60; | 10 | use embassy_net_enc28j60::Enc28j60; |
| 11 | use embassy_nrf::gpio::{Level, Output, OutputDrive}; | 11 | use embassy_nrf::gpio::{Level, Output, OutputDrive}; |
| 12 | use embassy_nrf::rng::Rng; | 12 | use embassy_nrf::rng::Rng; |
| @@ -25,8 +25,8 @@ bind_interrupts!(struct Irqs { | |||
| 25 | type MyDriver = Enc28j60<ExclusiveDevice<Spim<'static, peripherals::SPI3>, Output<'static>, Delay>, Output<'static>>; | 25 | type MyDriver = Enc28j60<ExclusiveDevice<Spim<'static, peripherals::SPI3>, Output<'static>, Delay>, Output<'static>>; |
| 26 | 26 | ||
| 27 | #[embassy_executor::task] | 27 | #[embassy_executor::task] |
| 28 | async fn net_task(stack: &'static Stack<MyDriver>) -> ! { | 28 | async fn net_task(mut runner: embassy_net::Runner<'static, MyDriver>) -> ! { |
| 29 | stack.run().await | 29 | runner.run().await |
| 30 | } | 30 | } |
| 31 | 31 | ||
| 32 | #[embassy_executor::main] | 32 | #[embassy_executor::main] |
| @@ -65,11 +65,10 @@ async fn main(spawner: Spawner) { | |||
| 65 | let seed = u64::from_le_bytes(seed); | 65 | let seed = u64::from_le_bytes(seed); |
| 66 | 66 | ||
| 67 | // Init network stack | 67 | // Init network stack |
| 68 | static STACK: StaticCell<Stack<MyDriver>> = StaticCell::new(); | ||
| 69 | static RESOURCES: StaticCell<StackResources<2>> = StaticCell::new(); | 68 | static RESOURCES: StaticCell<StackResources<2>> = StaticCell::new(); |
| 70 | let stack = &*STACK.init(Stack::new(device, config, RESOURCES.init(StackResources::new()), seed)); | 69 | let (stack, runner) = embassy_net::new(device, config, RESOURCES.init(StackResources::new()), seed); |
| 71 | 70 | ||
| 72 | unwrap!(spawner.spawn(net_task(stack))); | 71 | unwrap!(spawner.spawn(net_task(runner))); |
| 73 | 72 | ||
| 74 | perf_client::run( | 73 | perf_client::run( |
| 75 | stack, | 74 | stack, |
diff --git a/tests/nrf/src/bin/gpio.rs b/tests/nrf/src/bin/gpio.rs index 9e809a694..4995d244c 100644 --- a/tests/nrf/src/bin/gpio.rs +++ b/tests/nrf/src/bin/gpio.rs | |||
| @@ -17,10 +17,12 @@ async fn main(_spawner: Spawner) { | |||
| 17 | let mut output = Output::new(peri!(p, PIN_B), Level::Low, OutputDrive::Standard); | 17 | let mut output = Output::new(peri!(p, PIN_B), Level::Low, OutputDrive::Standard); |
| 18 | 18 | ||
| 19 | output.set_low(); | 19 | output.set_low(); |
| 20 | assert!(output.is_set_low()); | ||
| 20 | Timer::after_millis(10).await; | 21 | Timer::after_millis(10).await; |
| 21 | assert!(input.is_low()); | 22 | assert!(input.is_low()); |
| 22 | 23 | ||
| 23 | output.set_high(); | 24 | output.set_high(); |
| 25 | assert!(output.is_set_high()); | ||
| 24 | Timer::after_millis(10).await; | 26 | Timer::after_millis(10).await; |
| 25 | assert!(input.is_high()); | 27 | assert!(input.is_high()); |
| 26 | 28 | ||
diff --git a/tests/nrf/src/bin/spim.rs b/tests/nrf/src/bin/spim.rs new file mode 100644 index 000000000..2b38f0409 --- /dev/null +++ b/tests/nrf/src/bin/spim.rs | |||
| @@ -0,0 +1,42 @@ | |||
| 1 | // required-features: easydma | ||
| 2 | #![no_std] | ||
| 3 | #![no_main] | ||
| 4 | |||
| 5 | #[path = "../common.rs"] | ||
| 6 | mod common; | ||
| 7 | |||
| 8 | use defmt::{assert_eq, *}; | ||
| 9 | use embassy_executor::Spawner; | ||
| 10 | use embassy_nrf::spim::Spim; | ||
| 11 | use embassy_nrf::{peripherals, spim}; | ||
| 12 | use {defmt_rtt as _, panic_probe as _}; | ||
| 13 | |||
| 14 | #[embassy_executor::main] | ||
| 15 | async fn main(_spawner: Spawner) { | ||
| 16 | let mut p = embassy_nrf::init(Default::default()); | ||
| 17 | let mut config = spim::Config::default(); | ||
| 18 | config.frequency = spim::Frequency::M1; | ||
| 19 | let mut spim = Spim::new( | ||
| 20 | peri!(p, SPIM0).reborrow(), | ||
| 21 | irqs!(SPIM0), | ||
| 22 | peri!(p, PIN_X).reborrow(), | ||
| 23 | peri!(p, PIN_A).reborrow(), // MISO | ||
| 24 | peri!(p, PIN_B).reborrow(), // MOSI | ||
| 25 | config.clone(), | ||
| 26 | ); | ||
| 27 | let data = [ | ||
| 28 | 0x42, 0x43, 0x44, 0x45, 0x66, 0x12, 0x23, 0x34, 0x45, 0x19, 0x91, 0xaa, 0xff, 0xa5, 0x5a, 0x77, | ||
| 29 | ]; | ||
| 30 | let mut buf = [0u8; 16]; | ||
| 31 | |||
| 32 | buf.fill(0); | ||
| 33 | spim.blocking_transfer(&mut buf, &data).unwrap(); | ||
| 34 | assert_eq!(data, buf); | ||
| 35 | |||
| 36 | buf.fill(0); | ||
| 37 | spim.transfer(&mut buf, &data).await.unwrap(); | ||
| 38 | assert_eq!(data, buf); | ||
| 39 | |||
| 40 | info!("Test OK"); | ||
| 41 | cortex_m::asm::bkpt(); | ||
| 42 | } | ||
diff --git a/tests/nrf/src/bin/uart_halves.rs b/tests/nrf/src/bin/uart_halves.rs index f48ea43a1..a462f80ce 100644 --- a/tests/nrf/src/bin/uart_halves.rs +++ b/tests/nrf/src/bin/uart_halves.rs | |||
| @@ -19,8 +19,18 @@ async fn main(_spawner: Spawner) { | |||
| 19 | config.parity = uarte::Parity::EXCLUDED; | 19 | config.parity = uarte::Parity::EXCLUDED; |
| 20 | config.baudrate = uarte::Baudrate::BAUD1M; | 20 | config.baudrate = uarte::Baudrate::BAUD1M; |
| 21 | 21 | ||
| 22 | let mut tx = UarteTx::new(&mut peri!(p, UART0), irqs!(UART0), &mut peri!(p, PIN_A), config.clone()); | 22 | let mut tx = UarteTx::new( |
| 23 | let mut rx = UarteRx::new(&mut peri!(p, UART1), irqs!(UART1), &mut peri!(p, PIN_B), config.clone()); | 23 | peri!(p, UART0).reborrow(), |
| 24 | irqs!(UART0), | ||
| 25 | peri!(p, PIN_A).reborrow(), | ||
| 26 | config.clone(), | ||
| 27 | ); | ||
| 28 | let mut rx = UarteRx::new( | ||
| 29 | peri!(p, UART1).reborrow(), | ||
| 30 | irqs!(UART1), | ||
| 31 | peri!(p, PIN_B).reborrow(), | ||
| 32 | config.clone(), | ||
| 33 | ); | ||
| 24 | 34 | ||
| 25 | let data = [ | 35 | let data = [ |
| 26 | 0x42, 0x43, 0x44, 0x45, 0x66, 0x12, 0x23, 0x34, 0x45, 0x19, 0x91, 0xaa, 0xff, 0xa5, 0x5a, 0x77, | 36 | 0x42, 0x43, 0x44, 0x45, 0x66, 0x12, 0x23, 0x34, 0x45, 0x19, 0x91, 0xaa, 0xff, 0xa5, 0x5a, 0x77, |
diff --git a/tests/nrf/src/bin/uart_split.rs b/tests/nrf/src/bin/uart_split.rs index 70d8b2e33..8fe710068 100644 --- a/tests/nrf/src/bin/uart_split.rs +++ b/tests/nrf/src/bin/uart_split.rs | |||
| @@ -21,10 +21,10 @@ async fn main(_spawner: Spawner) { | |||
| 21 | config.baudrate = uarte::Baudrate::BAUD9600; | 21 | config.baudrate = uarte::Baudrate::BAUD9600; |
| 22 | 22 | ||
| 23 | let uarte = Uarte::new( | 23 | let uarte = Uarte::new( |
| 24 | &mut peri!(p, UART0), | 24 | peri!(p, UART0).reborrow(), |
| 25 | peri!(p, PIN_A).reborrow(), | ||
| 26 | peri!(p, PIN_B).reborrow(), | ||
| 25 | irqs!(UART0), | 27 | irqs!(UART0), |
| 26 | &mut peri!(p, PIN_A), | ||
| 27 | &mut peri!(p, PIN_B), | ||
| 28 | config.clone(), | 28 | config.clone(), |
| 29 | ); | 29 | ); |
| 30 | let (mut tx, mut rx) = uarte.split(); | 30 | let (mut tx, mut rx) = uarte.split(); |
diff --git a/tests/nrf/src/bin/wifi_esp_hosted_perf.rs b/tests/nrf/src/bin/wifi_esp_hosted_perf.rs index 6632442f1..34fb8103b 100644 --- a/tests/nrf/src/bin/wifi_esp_hosted_perf.rs +++ b/tests/nrf/src/bin/wifi_esp_hosted_perf.rs | |||
| @@ -6,7 +6,7 @@ teleprobe_meta::timeout!(120); | |||
| 6 | 6 | ||
| 7 | use defmt::{info, unwrap}; | 7 | use defmt::{info, unwrap}; |
| 8 | use embassy_executor::Spawner; | 8 | use embassy_executor::Spawner; |
| 9 | use embassy_net::{Config, Stack, StackResources}; | 9 | use embassy_net::{Config, StackResources}; |
| 10 | use embassy_nrf::gpio::{Input, Level, Output, OutputDrive, Pull}; | 10 | use embassy_nrf::gpio::{Input, Level, Output, OutputDrive, Pull}; |
| 11 | use embassy_nrf::rng::Rng; | 11 | use embassy_nrf::rng::Rng; |
| 12 | use embassy_nrf::spim::{self, Spim}; | 12 | use embassy_nrf::spim::{self, Spim}; |
| @@ -40,8 +40,8 @@ async fn wifi_task( | |||
| 40 | type MyDriver = hosted::NetDriver<'static>; | 40 | type MyDriver = hosted::NetDriver<'static>; |
| 41 | 41 | ||
| 42 | #[embassy_executor::task] | 42 | #[embassy_executor::task] |
| 43 | async fn net_task(stack: &'static Stack<MyDriver>) -> ! { | 43 | async fn net_task(mut runner: embassy_net::Runner<'static, MyDriver>) -> ! { |
| 44 | stack.run().await | 44 | runner.run().await |
| 45 | } | 45 | } |
| 46 | 46 | ||
| 47 | #[embassy_executor::main] | 47 | #[embassy_executor::main] |
| @@ -86,16 +86,15 @@ async fn main(spawner: Spawner) { | |||
| 86 | let seed = u64::from_le_bytes(seed); | 86 | let seed = u64::from_le_bytes(seed); |
| 87 | 87 | ||
| 88 | // Init network stack | 88 | // Init network stack |
| 89 | static STACK: StaticCell<Stack<MyDriver>> = StaticCell::new(); | ||
| 90 | static RESOURCES: StaticCell<StackResources<2>> = StaticCell::new(); | 89 | static RESOURCES: StaticCell<StackResources<2>> = StaticCell::new(); |
| 91 | let stack = &*STACK.init(Stack::new( | 90 | let (stack, runner) = embassy_net::new( |
| 92 | device, | 91 | device, |
| 93 | Config::dhcpv4(Default::default()), | 92 | Config::dhcpv4(Default::default()), |
| 94 | RESOURCES.init(StackResources::new()), | 93 | RESOURCES.init(StackResources::new()), |
| 95 | seed, | 94 | seed, |
| 96 | )); | 95 | ); |
| 97 | 96 | ||
| 98 | unwrap!(spawner.spawn(net_task(stack))); | 97 | unwrap!(spawner.spawn(net_task(runner))); |
| 99 | 98 | ||
| 100 | perf_client::run( | 99 | perf_client::run( |
| 101 | stack, | 100 | stack, |
diff --git a/tests/nrf/src/common.rs b/tests/nrf/src/common.rs index ff5299b0f..ebd332d15 100644 --- a/tests/nrf/src/common.rs +++ b/tests/nrf/src/common.rs | |||
| @@ -52,51 +52,66 @@ define_peris!(PIN_A = P0_13, PIN_B = P0_14,); | |||
| 52 | #[cfg(feature = "nrf52832")] | 52 | #[cfg(feature = "nrf52832")] |
| 53 | define_peris!( | 53 | define_peris!( |
| 54 | PIN_A = P0_11, PIN_B = P0_12, | 54 | PIN_A = P0_11, PIN_B = P0_12, |
| 55 | PIN_X = P0_13, | ||
| 55 | UART0 = UARTE0, | 56 | UART0 = UARTE0, |
| 56 | @irq UART0 = {UARTE0_UART0 => uarte::InterruptHandler<peripherals::UARTE0>;}, | 57 | SPIM0 = TWISPI0, |
| 57 | @irq UART0_BUFFERED = {UARTE0_UART0 => buffered_uarte::InterruptHandler<peripherals::UARTE0>;}, | 58 | @irq UART0 = {UARTE0 => uarte::InterruptHandler<peripherals::UARTE0>;}, |
| 59 | @irq UART0_BUFFERED = {UARTE0 => buffered_uarte::InterruptHandler<peripherals::UARTE0>;}, | ||
| 60 | @irq SPIM0 = {TWISPI0 => spim::InterruptHandler<peripherals::TWISPI0>;}, | ||
| 58 | ); | 61 | ); |
| 59 | 62 | ||
| 60 | #[cfg(feature = "nrf52833")] | 63 | #[cfg(feature = "nrf52833")] |
| 61 | define_peris!( | 64 | define_peris!( |
| 62 | PIN_A = P1_01, PIN_B = P1_02, | 65 | PIN_A = P1_01, PIN_B = P1_02, |
| 66 | PIN_X = P1_03, | ||
| 63 | UART0 = UARTE0, | 67 | UART0 = UARTE0, |
| 64 | UART1 = UARTE1, | 68 | UART1 = UARTE1, |
| 65 | @irq UART0 = {UARTE0_UART0 => uarte::InterruptHandler<peripherals::UARTE0>;}, | 69 | SPIM0 = TWISPI0, |
| 70 | @irq UART0 = {UARTE0 => uarte::InterruptHandler<peripherals::UARTE0>;}, | ||
| 66 | @irq UART1 = {UARTE1 => uarte::InterruptHandler<peripherals::UARTE1>;}, | 71 | @irq UART1 = {UARTE1 => uarte::InterruptHandler<peripherals::UARTE1>;}, |
| 67 | @irq UART0_BUFFERED = {UARTE0_UART0 => buffered_uarte::InterruptHandler<peripherals::UARTE0>;}, | 72 | @irq UART0_BUFFERED = {UARTE0 => buffered_uarte::InterruptHandler<peripherals::UARTE0>;}, |
| 68 | @irq UART1_BUFFERED = {UARTE1 => buffered_uarte::InterruptHandler<peripherals::UARTE1>;}, | 73 | @irq UART1_BUFFERED = {UARTE1 => buffered_uarte::InterruptHandler<peripherals::UARTE1>;}, |
| 74 | @irq SPIM0 = {TWISPI0 => spim::InterruptHandler<peripherals::TWISPI0>;}, | ||
| 69 | ); | 75 | ); |
| 70 | 76 | ||
| 71 | #[cfg(feature = "nrf52840")] | 77 | #[cfg(feature = "nrf52840")] |
| 72 | define_peris!( | 78 | define_peris!( |
| 73 | PIN_A = P1_02, PIN_B = P1_03, | 79 | PIN_A = P1_02, PIN_B = P1_03, |
| 80 | PIN_X = P1_04, | ||
| 74 | UART0 = UARTE0, | 81 | UART0 = UARTE0, |
| 75 | UART1 = UARTE1, | 82 | UART1 = UARTE1, |
| 76 | @irq UART0 = {UARTE0_UART0 => uarte::InterruptHandler<peripherals::UARTE0>;}, | 83 | SPIM0 = TWISPI0, |
| 84 | @irq UART0 = {UARTE0 => uarte::InterruptHandler<peripherals::UARTE0>;}, | ||
| 77 | @irq UART1 = {UARTE1 => uarte::InterruptHandler<peripherals::UARTE1>;}, | 85 | @irq UART1 = {UARTE1 => uarte::InterruptHandler<peripherals::UARTE1>;}, |
| 78 | @irq UART0_BUFFERED = {UARTE0_UART0 => buffered_uarte::InterruptHandler<peripherals::UARTE0>;}, | 86 | @irq UART0_BUFFERED = {UARTE0 => buffered_uarte::InterruptHandler<peripherals::UARTE0>;}, |
| 79 | @irq UART1_BUFFERED = {UARTE1 => buffered_uarte::InterruptHandler<peripherals::UARTE1>;}, | 87 | @irq UART1_BUFFERED = {UARTE1 => buffered_uarte::InterruptHandler<peripherals::UARTE1>;}, |
| 88 | @irq SPIM0 = {TWISPI0 => spim::InterruptHandler<peripherals::TWISPI0>;}, | ||
| 80 | ); | 89 | ); |
| 81 | 90 | ||
| 82 | #[cfg(feature = "nrf5340")] | 91 | #[cfg(feature = "nrf5340")] |
| 83 | define_peris!( | 92 | define_peris!( |
| 84 | PIN_A = P1_08, PIN_B = P1_09, | 93 | PIN_A = P1_08, PIN_B = P1_09, |
| 94 | PIN_X = P1_10, | ||
| 85 | UART0 = SERIAL0, | 95 | UART0 = SERIAL0, |
| 86 | UART1 = SERIAL1, | 96 | UART1 = SERIAL1, |
| 97 | SPIM0 = SERIAL0, | ||
| 87 | @irq UART0 = {SERIAL0 => uarte::InterruptHandler<peripherals::SERIAL0>;}, | 98 | @irq UART0 = {SERIAL0 => uarte::InterruptHandler<peripherals::SERIAL0>;}, |
| 88 | @irq UART1 = {SERIAL1 => uarte::InterruptHandler<peripherals::SERIAL1>;}, | 99 | @irq UART1 = {SERIAL1 => uarte::InterruptHandler<peripherals::SERIAL1>;}, |
| 89 | @irq UART0_BUFFERED = {SERIAL0 => buffered_uarte::InterruptHandler<peripherals::SERIAL0>;}, | 100 | @irq UART0_BUFFERED = {SERIAL0 => buffered_uarte::InterruptHandler<peripherals::SERIAL0>;}, |
| 90 | @irq UART1_BUFFERED = {SERIAL1 => buffered_uarte::InterruptHandler<peripherals::SERIAL1>;}, | 101 | @irq UART1_BUFFERED = {SERIAL1 => buffered_uarte::InterruptHandler<peripherals::SERIAL1>;}, |
| 102 | @irq SPIM0 = {SERIAL0 => spim::InterruptHandler<peripherals::SERIAL0>;}, | ||
| 91 | ); | 103 | ); |
| 92 | 104 | ||
| 93 | #[cfg(feature = "nrf9160")] | 105 | #[cfg(feature = "nrf9160")] |
| 94 | define_peris!( | 106 | define_peris!( |
| 95 | PIN_A = P0_00, PIN_B = P0_01, | 107 | PIN_A = P0_00, PIN_B = P0_01, |
| 108 | PIN_X = P0_02, | ||
| 96 | UART0 = SERIAL0, | 109 | UART0 = SERIAL0, |
| 97 | UART1 = SERIAL1, | 110 | UART1 = SERIAL1, |
| 98 | @irq UART0 = {UARTE0_SPIM0_SPIS0_TWIM0_TWIS0 => uarte::InterruptHandler<peripherals::SERIAL0>;}, | 111 | SPIM0 = SERIAL0, |
| 99 | @irq UART1 = {UARTE1_SPIM1_SPIS1_TWIM1_TWIS1 => uarte::InterruptHandler<peripherals::SERIAL1>;}, | 112 | @irq UART0 = {SERIAL0 => uarte::InterruptHandler<peripherals::SERIAL0>;}, |
| 100 | @irq UART0_BUFFERED = {UARTE0_SPIM0_SPIS0_TWIM0_TWIS0 => buffered_uarte::InterruptHandler<peripherals::SERIAL0>;}, | 113 | @irq UART1 = {SERIAL1 => uarte::InterruptHandler<peripherals::SERIAL1>;}, |
| 101 | @irq UART1_BUFFERED = {UARTE1_SPIM1_SPIS1_TWIM1_TWIS1 => buffered_uarte::InterruptHandler<peripherals::SERIAL1>;}, | 114 | @irq UART0_BUFFERED = {SERIAL0 => buffered_uarte::InterruptHandler<peripherals::SERIAL0>;}, |
| 115 | @irq UART1_BUFFERED = {SERIAL1 => buffered_uarte::InterruptHandler<peripherals::SERIAL1>;}, | ||
| 116 | @irq SPIM0 = {SERIAL0 => spim::InterruptHandler<peripherals::SERIAL0>;}, | ||
| 102 | ); | 117 | ); |
