Pico-Arduino
pio_uart_rx.h
1 // -------------------------------------------------- //
2 // This file is autogenerated by pioasm; do not edit! //
3 // -------------------------------------------------- //
4 
5 #if !PICO_NO_HARDWARE
6 #include "hardware/pio.h"
7 #endif
8 
9 // ----------- //
10 // pio_uart_rx //
11 // ----------- //
12 
13 #define pio_uart_rx_wrap_target 0
14 #define pio_uart_rx_wrap 8
15 
16 static const uint16_t pio_uart_rx_program_instructions[] = {
17  // .wrap_target
18  0x2020, // 0: wait 0 pin, 0
19  0xea27, // 1: set x, 7 [10]
20  0x4001, // 2: in pins, 1
21  0x0642, // 3: jmp x--, 2 [6]
22  0x00c8, // 4: jmp pin, 8
23  0xc014, // 5: irq nowait 4 rel
24  0x20a0, // 6: wait 1 pin, 0
25  0x0000, // 7: jmp 0
26  0x8020, // 8: push block
27  // .wrap
28 };
29 
30 #if !PICO_NO_HARDWARE
31 static const struct pio_program pio_uart_rx_program = {
32  .instructions = pio_uart_rx_program_instructions,
33  .length = 9,
34  .origin = -1,
35 };
36 
37 static inline pio_sm_config pio_uart_rx_program_get_default_config(uint offset) {
38  pio_sm_config c = pio_get_default_sm_config();
39  sm_config_set_wrap(&c, offset + pio_uart_rx_wrap_target, offset + pio_uart_rx_wrap);
40  return c;
41 }
42 #endif
43