cancel
Showing results for 
Search instead for 
Did you mean: 

STM32 SPI communication Master issue

vignesh1
Associate III

Recently working with spi communication in stm32g070rb using stm32CubeIDE (HAL library).SPI master receive interrupt triggered continuosly when there is no interrupt.But same code wrote in SPI slave its works perfectly.I also put Pull down resistor.Please provide solution

1 ACCEPTED SOLUTION

Accepted Solutions
TDK
Guru

Please follow SPI examples in the CubeMX repository to understand how they function. Here is one of several:

https://github.com/STMicroelectronics/STM32CubeG0/blob/e61c257cbe4ffb142a113abf34d9aaf1fe197959/Projects/NUCLEO-G031K8/Examples/SPI/SPI_FullDuplex_ComIT_Slave/readme.txt#L63

 

If you feel a post has answered your question, please click "Accept as Solution".

View solution in original post

5 REPLIES 5
TDK
Guru

Please follow SPI examples in the CubeMX repository to understand how they function. Here is one of several:

https://github.com/STMicroelectronics/STM32CubeG0/blob/e61c257cbe4ffb142a113abf34d9aaf1fe197959/Projects/NUCLEO-G031K8/Examples/SPI/SPI_FullDuplex_ComIT_Slave/readme.txt#L63

 

If you feel a post has answered your question, please click "Accept as Solution".
vignesh1
Associate III

I already ssen this example so My main problem is if i configure SPI master  Spi rx callback automatically triggered again and again. Slave devices  that rx callback function works perfectly. I think if any master mode fault what reason master spi interrupt triggered unwantedly

vignesh1
Associate III

i have also one doubt if any did not connect miso,mosi,sclk pins to slave devices. i just load the code to master device then i see interrupt rx callback or error occurs. pls provide solution                                                                                   

 

this code works properly in full duplex slave if i set full duplex master or half duplex master does not works

my clock configuration is perfectly set and also give interrupt priority why this only woks slave not master devices

int main(void)

{

HAL_Init();

  SystemClock_Config();

HAL_SPI_Receive_IT(&hspi1,spi_data,1);

while (1)

{

}

}

 

void HAL_SPI_RxCpltCallback(SPI_HandleTypeDef *hspi)

{

HAL_SPI_Receive_IT(&hspi1,spi_data,1); // ready for new interrupt

}

TDK
Guru

Please don't duplicate post. It creates more work for people here. Stick to one thread.

If you feel a post has answered your question, please click "Accept as Solution".
vignesh1
Associate III

sorry for inconvinence and thank for your patience