This is my code in the SPI slave: #define SPI_PACKET_LEN 8
static uint8_t spiRxBuf[SPI_PACKET_LEN];
static uint8_t spiTxBuf[SPI_PACKET_LEN];
void task()
{
// spiTxBuf has all zeros, but the master sees "00 00 00 00 FF FF FF FF"
HAL_SPI_Tra...
I can want to change NDTR after enabling DMA stream. but I can't. This is the part of code...
LL_DMA_EnableStream(DMA1, LL_DMA_STREAM_5);
// works fine now
// but I want to change the data length only
LL_DMA_SetDataLength(DMA1, LL_D...
I have studied how to use SPI DMA. The examples from STM32 project shows independent TX/RX.I need to handle the 16-bit data as a register. When the slave receives 16-bit data, it should echo it right away for example.Now I can receive DMA RX transmi...
I am working on SPI slave at NUCLEO-F767ZI.I am using the interrupt and LL library. This is the RX handler:void SPI1_Rx_Callback(void) {
if (LL_SPI_GetRxFIFOLevel(SPI1) > LL_SPI_RX_FIFO_HALF_FULL)
{
// this is only for break point
...
I am trying to add more information in my debugging. And I found information about "Min Free Stack" and "Run Time (%)" is missing in "FreeRTOS Task List":I googled this, and found something like this for example. but I couldn't find any explanation t...
It is STM32F767.I can see the stream is enabled in debugger after add the block of code below: /* Enable DMA Channels */
LL_DMA_EnableStream(DMA1, LL_DMA_STREAM_5);
{
LL_DMA_DisableStream(DMA1, LL_DMA_STREAM_5);
LL_D...
The SPI slave application should respond as soon as possible whenever it receives 16 bits register. therefore the DMA solution may not be suitable. Is my understanding correct?And I can't use while loop solution because I am running multiple tasks by...