tmp 2
This commit is contained in:
parent
5d5fd4bc83
commit
fef441ecda
17 changed files with 176 additions and 94 deletions
|
@ -42,6 +42,7 @@ add_subdirectory(cmake/stm32cubemx)
|
|||
|
||||
add_subdirectory(components/platform)
|
||||
add_subdirectory(components/f4ll)
|
||||
add_subdirectory(components/app)
|
||||
|
||||
# Link directories setup
|
||||
target_link_directories(${CMAKE_PROJECT_NAME} PRIVATE
|
||||
|
@ -68,6 +69,7 @@ target_link_libraries(${CMAKE_PROJECT_NAME}
|
|||
stm32cubemx
|
||||
|
||||
# Add user defined libraries
|
||||
app
|
||||
)
|
||||
|
||||
# Poor quality LL code from ST
|
||||
|
|
|
@ -22,6 +22,8 @@
|
|||
#include "stm32f4xx_it.h"
|
||||
/* Private includes ----------------------------------------------------------*/
|
||||
/* USER CODE BEGIN Includes */
|
||||
#include <irq_bridge.h>
|
||||
|
||||
/* USER CODE END Includes */
|
||||
|
||||
/* Private typedef -----------------------------------------------------------*/
|
||||
|
@ -204,7 +206,7 @@ void SysTick_Handler(void)
|
|||
void DMA1_Stream1_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA1_Stream1_IRQn 0 */
|
||||
|
||||
usart3_rx_dma_isr();
|
||||
/* USER CODE END DMA1_Stream1_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA1_Stream1_IRQn 1 */
|
||||
|
||||
|
@ -217,6 +219,7 @@ void DMA1_Stream1_IRQHandler(void)
|
|||
void DMA1_Stream2_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA1_Stream2_IRQn 0 */
|
||||
usart4_rx_dma_isr(); // console
|
||||
|
||||
/* USER CODE END DMA1_Stream2_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA1_Stream2_IRQn 1 */
|
||||
|
@ -230,6 +233,7 @@ void DMA1_Stream2_IRQHandler(void)
|
|||
void DMA1_Stream3_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA1_Stream3_IRQn 0 */
|
||||
usart3_tx_dma_isr();
|
||||
|
||||
/* USER CODE END DMA1_Stream3_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA1_Stream3_IRQn 1 */
|
||||
|
@ -243,6 +247,7 @@ void DMA1_Stream3_IRQHandler(void)
|
|||
void DMA1_Stream4_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA1_Stream4_IRQn 0 */
|
||||
usart4_tx_dma_isr(); // console
|
||||
|
||||
/* USER CODE END DMA1_Stream4_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA1_Stream4_IRQn 1 */
|
||||
|
@ -256,6 +261,7 @@ void DMA1_Stream4_IRQHandler(void)
|
|||
void DMA1_Stream5_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA1_Stream5_IRQn 0 */
|
||||
usart2_rx_dma_isr();
|
||||
|
||||
/* USER CODE END DMA1_Stream5_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA1_Stream5_IRQn 1 */
|
||||
|
@ -269,6 +275,7 @@ void DMA1_Stream5_IRQHandler(void)
|
|||
void DMA1_Stream6_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA1_Stream6_IRQn 0 */
|
||||
usart2_tx_dma_isr();
|
||||
|
||||
/* USER CODE END DMA1_Stream6_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA1_Stream6_IRQn 1 */
|
||||
|
@ -295,6 +302,7 @@ void SPI2_IRQHandler(void)
|
|||
void USART1_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN USART1_IRQn 0 */
|
||||
usart1_isr();
|
||||
|
||||
/* USER CODE END USART1_IRQn 0 */
|
||||
/* USER CODE BEGIN USART1_IRQn 1 */
|
||||
|
@ -308,6 +316,7 @@ void USART1_IRQHandler(void)
|
|||
void USART2_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN USART2_IRQn 0 */
|
||||
usart2_isr();
|
||||
|
||||
/* USER CODE END USART2_IRQn 0 */
|
||||
/* USER CODE BEGIN USART2_IRQn 1 */
|
||||
|
@ -321,6 +330,7 @@ void USART2_IRQHandler(void)
|
|||
void USART3_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN USART3_IRQn 0 */
|
||||
usart3_isr();
|
||||
|
||||
/* USER CODE END USART3_IRQn 0 */
|
||||
/* USER CODE BEGIN USART3_IRQn 1 */
|
||||
|
@ -334,6 +344,7 @@ void USART3_IRQHandler(void)
|
|||
void UART4_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN UART4_IRQn 0 */
|
||||
usart4_isr();
|
||||
|
||||
/* USER CODE END UART4_IRQn 0 */
|
||||
/* USER CODE BEGIN UART4_IRQn 1 */
|
||||
|
@ -347,6 +358,7 @@ void UART4_IRQHandler(void)
|
|||
void DMA2_Stream1_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream1_IRQn 0 */
|
||||
usart6_rx_dma_isr();
|
||||
|
||||
/* USER CODE END DMA2_Stream1_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA2_Stream1_IRQn 1 */
|
||||
|
@ -360,6 +372,7 @@ void DMA2_Stream1_IRQHandler(void)
|
|||
void DMA2_Stream2_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream2_IRQn 0 */
|
||||
usart1_tx_dma_isr();
|
||||
|
||||
/* USER CODE END DMA2_Stream2_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA2_Stream2_IRQn 1 */
|
||||
|
@ -373,6 +386,7 @@ void DMA2_Stream2_IRQHandler(void)
|
|||
void DMA2_Stream3_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream3_IRQn 0 */
|
||||
m2m1_dma_isr();
|
||||
|
||||
/* USER CODE END DMA2_Stream3_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA2_Stream3_IRQn 1 */
|
||||
|
@ -386,6 +400,7 @@ void DMA2_Stream3_IRQHandler(void)
|
|||
void DMA2_Stream4_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream4_IRQn 0 */
|
||||
m2m2_dma_isr();
|
||||
|
||||
/* USER CODE END DMA2_Stream4_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA2_Stream4_IRQn 1 */
|
||||
|
@ -399,6 +414,7 @@ void DMA2_Stream4_IRQHandler(void)
|
|||
void DMA2_Stream6_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream6_IRQn 0 */
|
||||
usart6_tx_dma_isr();
|
||||
|
||||
/* USER CODE END DMA2_Stream6_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA2_Stream6_IRQn 1 */
|
||||
|
@ -412,6 +428,7 @@ void DMA2_Stream6_IRQHandler(void)
|
|||
void DMA2_Stream7_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN DMA2_Stream7_IRQn 0 */
|
||||
usart1_tx_dma_isr();
|
||||
|
||||
/* USER CODE END DMA2_Stream7_IRQn 0 */
|
||||
/* USER CODE BEGIN DMA2_Stream7_IRQn 1 */
|
||||
|
@ -425,6 +442,7 @@ void DMA2_Stream7_IRQHandler(void)
|
|||
void USART6_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN USART6_IRQn 0 */
|
||||
usart6_isr();
|
||||
|
||||
/* USER CODE END USART6_IRQn 0 */
|
||||
/* USER CODE BEGIN USART6_IRQn 1 */
|
||||
|
|
11
components/app/CMakeLists.txt
Normal file
11
components/app/CMakeLists.txt
Normal file
|
@ -0,0 +1,11 @@
|
|||
add_library(app STATIC
|
||||
src/application.cpp
|
||||
src/globals.cpp
|
||||
src/irq_bridge.cpp
|
||||
)
|
||||
|
||||
target_include_directories(app PUBLIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/inc
|
||||
)
|
||||
|
||||
target_link_libraries(app PUBLIC stm32cubemx platform f4ll)
|
|
@ -1,8 +0,0 @@
|
|||
/*
|
||||
* diag.c
|
||||
*
|
||||
* Created on: Sep 16, 2019
|
||||
* Author: abody
|
||||
*/
|
||||
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
/*
|
||||
* globals.c
|
||||
*
|
||||
* Created on: Aug 29, 2019
|
||||
* Author: abody
|
||||
*/
|
||||
|
||||
#include "globals.h"
|
||||
|
||||
//struct usartstatus_t g_uartStatuses[USARTCOUNT];
|
||||
|
||||
//struct crcstatus_t g_crcStatus;
|
||||
|
||||
//DMAINFO g_ConsoleTxDmaInfo;
|
||||
uint8_t g_statsBuf[256];
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
/*
|
||||
* globals.h
|
||||
*
|
||||
* Created on: Aug 29, 2019
|
||||
* Author: abody
|
||||
*/
|
||||
|
||||
#ifndef GLOBALS_H_
|
||||
#define GLOBALS_H_
|
||||
|
||||
#include <inttypes.h>
|
||||
#include "config.h"
|
||||
//#include "f4ll_c/usart_handler.h"
|
||||
//#include "f4ll_c/dma_helper.h"
|
||||
//#include "f4ll_c/crc_handler.h"
|
||||
|
||||
//extern struct usartstatus_t g_uartStatuses[USARTCOUNT];
|
||||
|
||||
//extern struct crcstatus_t g_crcStatus;
|
||||
|
||||
//extern DMAINFO g_ConsoleTxDmaInfo;
|
||||
extern uint8_t g_statsBuf[256];
|
||||
|
||||
#endif /* GLOBALS_H_ */
|
|
@ -1,13 +0,0 @@
|
|||
/*
|
||||
* globals_cpp.cpp
|
||||
*
|
||||
* Created on: Nov 4, 2019
|
||||
* Author: abody
|
||||
*/
|
||||
#include "globals.h"
|
||||
|
||||
#include <f4ll/packetusart.h>
|
||||
#include <f4ll/memcpydma.h>
|
||||
|
||||
f4ll::PacketUsart *g_usarts[4];
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
/*
|
||||
* globals_cpp.h
|
||||
*
|
||||
* Created on: Nov 4, 2019
|
||||
* Author: abody
|
||||
*/
|
||||
|
||||
#ifndef GLOBALS_CPP_H_
|
||||
#define GLOBALS_CPP_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
#include "f4ll/packetusart.h"
|
||||
|
||||
extern f4ll::PacketUsart *g_usarts[4];
|
||||
|
||||
#endif // __cplusplus
|
||||
#endif /* GLOBALS_CPP_H_ */
|
15
components/app/inc/globals.h
Normal file
15
components/app/inc/globals.h
Normal file
|
@ -0,0 +1,15 @@
|
|||
/*
|
||||
* globals.h
|
||||
*
|
||||
* Created on: Aug 29, 2019
|
||||
* Author: abody
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <config.h>
|
||||
#include <f4ll/packet_usart.h>
|
||||
#include <inttypes.h>
|
||||
|
||||
extern f4ll::PacketUsart *g_usarts[USARTCOUNT];
|
||||
extern uint8_t g_statsBuf[256];
|
32
components/app/inc/irq_bridge.h
Normal file
32
components/app/inc/irq_bridge.h
Normal file
|
@ -0,0 +1,32 @@
|
|||
#pragma once
|
||||
|
||||
#if defined(__cplusplus)
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void usart1_rx_dma_isr(void);
|
||||
void usart1_tx_dma_isr(void);
|
||||
void usart1_isr(void);
|
||||
|
||||
void usart2_rx_dma_isr(void);
|
||||
void usart2_tx_dma_isr(void);
|
||||
void usart2_isr(void);
|
||||
|
||||
void usart3_rx_dma_isr(void);
|
||||
void usart3_tx_dma_isr(void);
|
||||
void usart3_isr(void);
|
||||
|
||||
void usart4_rx_dma_isr(void); // console
|
||||
void usart4_tx_dma_isr(void); // console
|
||||
void usart4_isr(void);
|
||||
|
||||
void usart6_rx_dma_isr(void); // console
|
||||
void usart6_tx_dma_isr(void); // console
|
||||
void usart6_isr(void);
|
||||
|
||||
void m2m1_dma_isr(void); // m2mcpy
|
||||
void m2m2_dma_isr(void); // crc
|
||||
|
||||
#if defined(__cplusplus)
|
||||
}
|
||||
#endif
|
15
components/app/src/globals.cpp
Normal file
15
components/app/src/globals.cpp
Normal file
|
@ -0,0 +1,15 @@
|
|||
/*
|
||||
* globals_cpp.cpp
|
||||
*
|
||||
* Created on: Nov 4, 2019
|
||||
* Author: abody
|
||||
*/
|
||||
#include "globals.h"
|
||||
#include "config.h"
|
||||
|
||||
#include <f4ll/memcpy_dma.h>
|
||||
#include <f4ll/packet_usart.h>
|
||||
|
||||
f4ll::PacketUsart *g_usarts[USARTCOUNT];
|
||||
|
||||
uint8_t g_statsBuf[256];
|
78
components/app/src/irq_bridge.cpp
Normal file
78
components/app/src/irq_bridge.cpp
Normal file
|
@ -0,0 +1,78 @@
|
|||
#include "f4ll/console_handler.h"
|
||||
|
||||
#include <config.h>
|
||||
#include <globals.h>
|
||||
#include <irq_bridge.h>
|
||||
|
||||
void usart1_rx_dma_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleRxDmaIrq(g_usarts[USART1_OFFSET]);
|
||||
}
|
||||
|
||||
void usart1_tx_dma_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleTxDmaIrq(g_usarts[USART1_OFFSET]);
|
||||
}
|
||||
void usart1_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleUsartIrq(g_usarts[USART1_OFFSET]);
|
||||
}
|
||||
|
||||
//
|
||||
void usart2_rx_dma_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleRxDmaIrq(g_usarts[USART2_OFFSET]);
|
||||
}
|
||||
|
||||
void usart2_tx_dma_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleTxDmaIrq(g_usarts[USART2_OFFSET]);
|
||||
}
|
||||
void usart2_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleUsartIrq(g_usarts[USART2_OFFSET]);
|
||||
}
|
||||
|
||||
//
|
||||
void usart3_rx_dma_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleRxDmaIrq(g_usarts[USART3_OFFSET]);
|
||||
}
|
||||
|
||||
void usart3_tx_dma_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleTxDmaIrq(g_usarts[USART3_OFFSET]);
|
||||
}
|
||||
void usart3_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleUsartIrq(g_usarts[USART3_OFFSET]);
|
||||
}
|
||||
|
||||
//
|
||||
void usart4_rx_dma_isr(void) {} // console
|
||||
void usart4_tx_dma_isr(void)
|
||||
{
|
||||
f4ll::console_handler::HandleTxDmaIrq(&f4ll::console_handler::instance());
|
||||
} // console
|
||||
void usart4_isr(void)
|
||||
{
|
||||
f4ll::console_handler::HandleUsartIrq(&f4ll::console_handler::instance());
|
||||
}
|
||||
|
||||
//
|
||||
void usart6_rx_dma_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleRxDmaIrq(g_usarts[USART6_OFFSET]);
|
||||
}
|
||||
|
||||
void usart6_tx_dma_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleTxDmaIrq(g_usarts[USART6_OFFSET]);
|
||||
}
|
||||
void usart6_isr(void)
|
||||
{
|
||||
f4ll::PacketUsart::HandleUsartIrq(g_usarts[USART6_OFFSET]);
|
||||
}
|
||||
|
||||
void m2m1_dma_isr(void) {} // m2mcpy
|
||||
void m2m2_dma_isr(void) {} // crc
|
|
@ -1,11 +0,0 @@
|
|||
#encoder
|
||||
SELF_DIR := $(abspath $(dir $(lastword $(MAKEFILE_LIST))))
|
||||
REL_DIR := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST))))
|
||||
ifeq ($(MKDBG), 1)
|
||||
$(info >>> $(REL_DIR)/component.mk)
|
||||
endif
|
||||
$(eval C_INCLUDES += -I$(REL_DIR)/inc)
|
||||
$(eval CXX_SOURCES += $(wildcard $(REL_DIR)/src/*.cpp))
|
||||
ifeq ($(MKDBG), 1)
|
||||
$(info <<<)
|
||||
endif
|
Loading…
Add table
Add a link
Reference in a new issue