Skip to content

Commit

Permalink
Merged tridge:pr-vscode-support & Huibean:add-vimdrones-l4-target
Browse files Browse the repository at this point in the history
  • Loading branch information
ianrmurphy committed Jul 23, 2024
1 parent 5935d5a commit 006edb9
Show file tree
Hide file tree
Showing 81 changed files with 101,202 additions and 5 deletions.
72 changes: 72 additions & 0 deletions Inc/targets.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,20 @@
// #define USE_ADC_INPUT
// #define USE_ALKAS_DEBUG_LED

#ifdef VIMDRONES_L431_DEV
#define FIRMWARE_NAME "VM DEV L431 "
#define FILE_NAME "VIMDRONES_L431_DEV"
#define DEAD_TIME 45
#define HARDWARE_GROUP_L4_A
#define TARGET_VOLTAGE_DIVIDER 65
#define USE_SERIAL_TELEMETRY

#define USE_LED_STRIP
#define CURRENT_ADC_CHANNEL LL_ADC_CHANNEL_8
#define VOLTAGE_ADC_CHANNEL LL_ADC_CHANNEL_11
// #define ADC_CHANNEL_TEMP LL_ADC_CHANNEL_6
#endif

#ifdef REF_G431
#define FIRMWARE_NAME "Ref G431 "
#define FILE_NAME "REF_G431"
Expand Down Expand Up @@ -2314,6 +2328,45 @@
#define PHASE_C_COMP 0x400000D1 // pa5
#endif

/*************************************l431******************************************************/
#ifdef HARDWARE_GROUP_L4_A

#define MCU_L431
#define USE_TIMER_15_CHANNEL_1
#define INPUT_PIN LL_GPIO_PIN_2
#define INPUT_PIN_PORT GPIOA
#define IC_TIMER_CHANNEL LL_TIM_CHANNEL_CH1
#define IC_TIMER_REGISTER TIM15
#define IC_TIMER_POINTER htim15

#define INPUT_DMA_CHANNEL LL_DMA_CHANNEL_5
#define DMA_HANDLE_TYPE_DEF hdma_tim15_ch1
#define IC_DMA_IRQ_NAME DMA1_Channel5_IRQn

#define PHASE_A_GPIO_LOW LL_GPIO_PIN_1
#define PHASE_A_GPIO_PORT_LOW GPIOB
#define PHASE_A_GPIO_HIGH LL_GPIO_PIN_10
#define PHASE_A_GPIO_PORT_HIGH GPIOA

#define PHASE_B_GPIO_LOW LL_GPIO_PIN_0
#define PHASE_B_GPIO_PORT_LOW GPIOB
#define PHASE_B_GPIO_HIGH LL_GPIO_PIN_9
#define PHASE_B_GPIO_PORT_HIGH GPIOA

#define PHASE_C_GPIO_LOW LL_GPIO_PIN_7
#define PHASE_C_GPIO_PORT_LOW GPIOA
#define PHASE_C_GPIO_HIGH LL_GPIO_PIN_8
#define PHASE_C_GPIO_PORT_HIGH GPIOA

#define PHASE_A_COMP LL_COMP_INPUT_MINUS_IO2 // pb7
#define PHASE_B_COMP LL_COMP_INPUT_MINUS_IO5 // pa5
#define PHASE_C_COMP LL_COMP_INPUT_MINUS_IO4 // pa4
#define PHASE_COM_COMP LL_COMP_INPUT_PLUS_IO1 // pb4

#define WS2812_PORT GPIOB
#define WS2812_PIN LL_GPIO_PIN_3

#endif
/************************************ MCU COMMON PERIPHERALS
* **********************************************/

Expand Down Expand Up @@ -2492,6 +2545,25 @@
#define COM_TIMER_IRQ TMR1_TRG_HALL_TMR11_IRQn
#endif

#ifdef MCU_L431
#define STMICRO
#define CPU_FREQUENCY_MHZ 80
#define EEPROM_START_ADD (uint32_t)0x0800F800
#define INTERVAL_TIMER TIM2
#define TEN_KHZ_TIMER TIM6
#define UTILITY_TIMER TIM7
#define COM_TIMER TIM16
#define TIM1_AUTORELOAD 3334
#define APPLICATION_ADDRESS 0x08001000
#define MAIN_COMP COMP2
#define EXTI_LINE LL_EXTI_LINE_22
#define TARGET_MIN_BEMF_COUNTS 3
#define COMPARATOR_IRQ COMP_IRQn
#define DSHOT_PRIORITY_THRESHOLD 50
#define COM_TIMER_IRQ TIM1_UP_TIM16_IRQn
#define USE_ADC
#endif

#ifndef LOOP_FREQUENCY_HZ
#define LOOP_FREQUENCY_HZ 20000
#endif
Expand Down
13 changes: 9 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ include f031makefile.mk
include f421makefile.mk
include e230makefile.mk
include f415makefile.mk
include l431makefile.mk

# Default MCU type to F051
MCU_TYPE ?= F051
Expand Down Expand Up @@ -65,14 +66,15 @@ BIN_DIR := $(ROOT)/$(OBJ)
TOOLS_DIR ?= $(ROOT)/tools
DL_DIR := $(ROOT)/downloads

.PHONY : clean all binary f051 g071 f031 e230 f421 f415
all : $(TARGETS_F051) $(TARGETS_G071) $(TARGETS_F031) $(TARGETS_E230) $(TARGETS_F421) $(TARGETS_F415)
.PHONY : clean all binary f051 g071 f031 e230 f421 f415 l431
all : $(TARGETS_F051) $(TARGETS_G071) $(TARGETS_F031) $(TARGETS_E230) $(TARGETS_F421) $(TARGETS_F415) $(TARGETS_L431)
f051 : $(TARGETS_F051)
g071 : $(TARGETS_G071)
f031 : $(TARGETS_F031)
e230 : $(TARGETS_E230)
f421 : $(TARGETS_F421)
f415 : $(TARGETS_F415)
l431 : $(TARGETS_L431)

$(OBJ):
@$(MKDIR) $(OBJ) > $(NUL)
Expand Down Expand Up @@ -100,10 +102,13 @@ $(TARGETS_E230) :
@$(MAKE) -s MCU_TYPE=E230 TARGET=$@ binary

$(TARGETS_F421) :
@$(MAKE) -s MCU_TYPE=F421 TARGET=$@ binary
@$(MAKE) -s MCU_TYPE=F421 TARGET=$@ binary

$(TARGETS_F415) :
@$(MAKE) -s MCU_TYPE=F415 TARGET=$@ binary
@$(MAKE) -s MCU_TYPE=F415 TARGET=$@ binary

$(TARGETS_L431) :
@$(MAKE) -s MCU_TYPE=L431 TARGET=$@ binary

# Compile target
$(TARGET_BASENAME).elf: CFLAGS := $(MCU_$(MCU_TYPE)) $(CFLAGS_$(MCU_TYPE)) $(CFLAGS_COMMON)
Expand Down
15,075 changes: 15,075 additions & 0 deletions Mcu/l431/Drivers/CMSIS/Device/ST/STM32L4xx/Include/stm32l431xx.h

Large diffs are not rendered by default.

Loading

0 comments on commit 006edb9

Please sign in to comment.