14#include "hardware/spi.h"
21#include "pico/stdlib.h"
54 irq_num_t dma_tx_irq_number = DMA_IRQ_0, irq_handler_t dma_tx_irq_handler =
nullptr,
55 irq_num_t dma_rx_irq_number = DMA_IRQ_1, irq_handler_t dma_rx_irq_handler =
nullptr);
111 int burst_read_8(uint8_t repeated_tx_data, uint8_t *dest,
size_t len);
Class to manage a DMA channel.
Definition hw_dma.h:32
HW_SPI_Master(struct_ConfigMasterSPI master_config)
Construct a new hw spi master object.
Definition hw_spi.cpp:3
int burst_write_16(uint16_t *src, size_t len) override
send a serie of 16 bit data on the SPI MOSI port. Use DMA.
Definition rtos_hw_spi.cpp:26
void spi_tx_dma_isr()
ISR handler for SPI TX DMA.
Definition rtos_hw_spi.cpp:98
int repeat_write_16(uint16_t *src, size_t len)
repeat a single 16 bit data on the SPI MOSI port. Use DMA.
Definition rtos_hw_spi.cpp:46
int burst_write_read_8(uint8_t *src, uint8_t *dest, size_t len) override
read / write a serie of 8 bit data on the SPI MISO/MOSI ports DMA not implemented
Definition rtos_hw_spi.cpp:86
void spi_rx_dma_isr()
ISR handler for SPI RX DMA.
Definition rtos_hw_spi.cpp:121
rtos_HW_SPI_Master(struct_ConfigMasterSPI master_config, irq_num_t dma_tx_irq_number=DMA_IRQ_0, irq_handler_t dma_tx_irq_handler=nullptr, irq_num_t dma_rx_irq_number=DMA_IRQ_1, irq_handler_t dma_rx_irq_handler=nullptr)
Construct a new hw spi master object.
Definition rtos_hw_spi.cpp:4
HW_DMA * dma_tx
the DMA channel used for SPI TX
Definition rtos_hw_spi.h:45
int burst_write_8(uint8_t *src, size_t len) override
send a serie of 8 bit data on the SPI MOSI port DMA not implemented
Definition rtos_hw_spi.cpp:20
HW_DMA * dma_rx
the DMA channel used for SPI RX
Definition rtos_hw_spi.h:42
int burst_read_16(uint16_t *dst, size_t len)
read a serie of 16 bit data on the SPI MISO port. Use DMA.
Definition rtos_hw_spi.cpp:66
int burst_read_8(uint8_t repeated_tx_data, uint8_t *dest, size_t len)
read a serie of byte on the SPI MISO port DMA not implemented
Definition rtos_hw_spi.cpp:92
The configuration data of SPI interface used as Master.
Definition hw_spi.h:22
strusture of data block sent to queue in order to start SPI emission
Definition rtos_hw_spi.h:26
void * data
the pointer to the data to send
Definition rtos_hw_spi.h:28
size_t length
the excpected nuber of transfer
Definition rtos_hw_spi.h:30