refactored spi code
This commit is contained in:
parent
72aa8fec69
commit
55218227bb
@ -36,13 +36,13 @@
|
||||
#define SPIx_RX_DMA_REQUEST DMA_REQUEST_SPI1_RX
|
||||
|
||||
/* Definition for SPIx's NVIC */
|
||||
#define SPIx_DMA_TX_IRQn DMA2_Stream3_IRQn
|
||||
#define SPIx_DMA_RX_IRQn DMA2_Stream2_IRQn
|
||||
#define SPIx_DMA_TX_IRQn DMA2_Stream3_IRQn
|
||||
|
||||
#define SPIx_DMA_TX_IRQHandler DMA2_Stream3_IRQHandler
|
||||
#define SPIx_DMA_RX_IRQHandler DMA2_Stream2_IRQHandler
|
||||
#define SPIx_DMA_TX_IRQHandler DMA2_Stream3_IRQHandler
|
||||
|
||||
#define SPIx_IRQn SPI1_IRQn
|
||||
#define SPIx_IRQHandler SPIx_IRQHandler
|
||||
#define SPIx_IRQHandler SPI1_IRQHandler
|
||||
|
||||
#endif /* FSFW_HAL_STM32H7_DEVICETEST_SPICONF_H_ */
|
||||
|
@ -1,6 +1,8 @@
|
||||
#include "spiConf.h"
|
||||
|
||||
#include "fsfw_hal/stm32h7/spi/spiCore.h"
|
||||
#include "fsfw_hal/stm32h7/dma_interrupts.h"
|
||||
#include "fsfw_hal/stm32h7/spi/interrupts.h"
|
||||
|
||||
#include "stm32h743xx.h"
|
||||
#include "stm32h7xx_hal_spi.h"
|
||||
@ -9,6 +11,9 @@
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
void dma_rx_irq_handler(void* dma_handle);
|
||||
void dma_tx_irq_handler(void* dma_handle);
|
||||
void spi1_irq_handler(void* spi_handle);
|
||||
|
||||
/**
|
||||
* @brief SPI MSP Initialization
|
||||
@ -110,16 +115,22 @@ void HAL_SPI_MspInit(SPI_HandleTypeDef *hspi)
|
||||
__HAL_LINKDMA(hspi, hdmarx, *hdma_rx);
|
||||
|
||||
/*##-4- Configure the NVIC for DMA #########################################*/
|
||||
/* NVIC configuration for DMA transfer complete interrupt (SPI1_TX) */
|
||||
HAL_NVIC_SetPriority(SPIx_DMA_TX_IRQn, 1, 1);
|
||||
HAL_NVIC_EnableIRQ(SPIx_DMA_TX_IRQn);
|
||||
|
||||
/* NVIC configuration for DMA transfer complete interrupt (SPI1_RX) */
|
||||
// Assign the interrupt handler
|
||||
assign_dma_user_handler(DMA_2, 2, &dma_rx_irq_handler, hdma_rx);
|
||||
HAL_NVIC_SetPriority(SPIx_DMA_RX_IRQn, 1, 0);
|
||||
HAL_NVIC_EnableIRQ(SPIx_DMA_RX_IRQn);
|
||||
|
||||
/* NVIC configuration for DMA transfer complete interrupt (SPI1_TX) */
|
||||
// Assign the interrupt handler
|
||||
assign_dma_user_handler(DMA_2, 3, &dma_tx_irq_handler, hdma_tx);
|
||||
HAL_NVIC_SetPriority(SPIx_DMA_TX_IRQn, 1, 1);
|
||||
HAL_NVIC_EnableIRQ(SPIx_DMA_TX_IRQn);
|
||||
|
||||
/*##-5- Configure the NVIC for SPI #########################################*/
|
||||
/* NVIC configuration for SPI transfer complete interrupt (SPI1) */
|
||||
// Assign the interrupt handler
|
||||
assign_spi_user_handler(SPI_1, &spi1_irq_handler, hspi);
|
||||
HAL_NVIC_SetPriority(SPIx_IRQn, 1, 0);
|
||||
HAL_NVIC_EnableIRQ(SPIx_IRQn);
|
||||
}
|
||||
@ -137,8 +148,6 @@ void HAL_SPI_MspDeInit(SPI_HandleTypeDef *hspi)
|
||||
{
|
||||
if(hspi->Instance == SPIx)
|
||||
{
|
||||
|
||||
|
||||
/*##-1- Reset peripherals ##################################################*/
|
||||
SPIx_FORCE_RESET();
|
||||
SPIx_RELEASE_RESET();
|
||||
@ -173,33 +182,3 @@ void HAL_SPI_MspDeInit(SPI_HandleTypeDef *hspi)
|
||||
HAL_NVIC_EnableIRQ(SPIx_IRQn);
|
||||
}
|
||||
}
|
||||
|
||||
///**
|
||||
// * @brief This function handles DMA Rx interrupt request.
|
||||
// * @param None
|
||||
// * @retval None
|
||||
// */
|
||||
//void SPIx_DMA_RX_IRQHandler(void)
|
||||
//{
|
||||
// HAL_DMA_IRQHandler(getSpiHandle()->hdmarx);
|
||||
//}
|
||||
//
|
||||
///**
|
||||
// * @brief This function handles DMA Tx interrupt request.
|
||||
// * @param None
|
||||
// * @retval None
|
||||
// */
|
||||
//void SPIx_DMA_TX_IRQHandler(void)
|
||||
//{
|
||||
// HAL_DMA_IRQHandler(getSpiHandle()->hdmatx);
|
||||
//}
|
||||
//
|
||||
///**
|
||||
// * @brief This function handles SPIx interrupt request.
|
||||
// * @param None
|
||||
// * @retval None
|
||||
// */
|
||||
//void SPIx_IRQHandler(void)
|
||||
//{
|
||||
// HAL_SPI_IRQHandler(getSpiHandle());
|
||||
//}
|
||||
|
2
fsfw_hal
2
fsfw_hal
@ -1 +1 @@
|
||||
Subproject commit 78a66e1b677ae0daa532db222ecdd0097c01399a
|
||||
Subproject commit abe62d807a887d5d44df7245639f211425af15d6
|
@ -33,7 +33,7 @@
|
||||
<intAttribute key="org.eclipse.cdt.debug.gdbjtag.core.portNumber" value="3333"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setPcRegister" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setResume" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setStopAt" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setStopAt" value="true"/>
|
||||
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.stopAt" value="main"/>
|
||||
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.symbolsFileName" value=""/>
|
||||
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.symbolsOffset" value=""/>
|
||||
|
Reference in New Issue
Block a user