1ms interrupt

This commit is contained in:
leo 2023-08-14 13:55:22 +02:00
parent f344268245
commit d22b406a2f
Signed by: leo
GPG Key ID: 0DD993BFB2B307DB
9 changed files with 4058 additions and 26 deletions

File diff suppressed because one or more lines are too long

View File

@ -85,6 +85,8 @@ void Error_Handler(void);
#define X_STEPPER_STEP_GPIO_Port GPIOB #define X_STEPPER_STEP_GPIO_Port GPIOB
#define X_STEPPER_EN_Pin GPIO_PIN_5 #define X_STEPPER_EN_Pin GPIO_PIN_5
#define X_STEPPER_EN_GPIO_Port GPIOB #define X_STEPPER_EN_GPIO_Port GPIOB
#define Y_STEPPER_DIR_Pin GPIO_PIN_6
#define Y_STEPPER_DIR_GPIO_Port GPIOB
#define Y_STEPPER_STEP_Pin GPIO_PIN_7 #define Y_STEPPER_STEP_Pin GPIO_PIN_7
#define Y_STEPPER_STEP_GPIO_Port GPIOB #define Y_STEPPER_STEP_GPIO_Port GPIOB
#define Y_STEPPER_EN_Pin GPIO_PIN_8 #define Y_STEPPER_EN_Pin GPIO_PIN_8
@ -98,6 +100,7 @@ void Error_Handler(void);
/* USER CODE BEGIN Private defines */ /* USER CODE BEGIN Private defines */
#define PSE_UNITS_NUM 4 #define PSE_UNITS_NUM 4
extern volatile unsigned long cmp_temp;
/* USER CODE END Private defines */ /* USER CODE END Private defines */
#ifdef __cplusplus #ifdef __cplusplus

View File

@ -64,7 +64,7 @@
/*#define HAL_SMARTCARD_MODULE_ENABLED */ /*#define HAL_SMARTCARD_MODULE_ENABLED */
/*#define HAL_SPI_MODULE_ENABLED */ /*#define HAL_SPI_MODULE_ENABLED */
#define HAL_SRAM_MODULE_ENABLED #define HAL_SRAM_MODULE_ENABLED
/*#define HAL_TIM_MODULE_ENABLED */ #define HAL_TIM_MODULE_ENABLED
#define HAL_UART_MODULE_ENABLED #define HAL_UART_MODULE_ENABLED
/*#define HAL_USART_MODULE_ENABLED */ /*#define HAL_USART_MODULE_ENABLED */
/*#define HAL_WWDG_MODULE_ENABLED */ /*#define HAL_WWDG_MODULE_ENABLED */

View File

@ -55,6 +55,7 @@ void SVC_Handler(void);
void DebugMon_Handler(void); void DebugMon_Handler(void);
void PendSV_Handler(void); void PendSV_Handler(void);
void SysTick_Handler(void); void SysTick_Handler(void);
void TIM4_IRQHandler(void);
/* USER CODE BEGIN EFP */ /* USER CODE BEGIN EFP */
/* USER CODE END EFP */ /* USER CODE END EFP */

View File

@ -51,6 +51,8 @@
/* USER CODE END PM */ /* USER CODE END PM */
/* Private variables ---------------------------------------------------------*/ /* Private variables ---------------------------------------------------------*/
TIM_HandleTypeDef htim4;
UART_HandleTypeDef huart1; UART_HandleTypeDef huart1;
SRAM_HandleTypeDef hsram1; SRAM_HandleTypeDef hsram1;
@ -72,6 +74,8 @@ ADS7843_Def Touch_Def = {
.Int_GPIO_Port = ADS7843_Int_GPIO_Port, .Int_GPIO_Port = ADS7843_Int_GPIO_Port,
.Int_GPIO_Pin = ADS7843_Int_Pin, .Int_GPIO_Pin = ADS7843_Int_Pin,
}; };
volatile unsigned long cmp_temp = 0;
/* USER CODE END PV */ /* USER CODE END PV */
/* Private function prototypes -----------------------------------------------*/ /* Private function prototypes -----------------------------------------------*/
@ -79,6 +83,7 @@ void SystemClock_Config(void);
static void MX_GPIO_Init(void); static void MX_GPIO_Init(void);
static void MX_FSMC_Init(void); static void MX_FSMC_Init(void);
static void MX_USART1_UART_Init(void); static void MX_USART1_UART_Init(void);
static void MX_TIM4_Init(void);
/* USER CODE BEGIN PFP */ /* USER CODE BEGIN PFP */
#ifdef __GNUC__ #ifdef __GNUC__
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch) #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
@ -155,7 +160,9 @@ int main(void)
MX_GPIO_Init(); MX_GPIO_Init();
MX_FSMC_Init(); MX_FSMC_Init();
MX_USART1_UART_Init(); MX_USART1_UART_Init();
MX_TIM4_Init();
/* USER CODE BEGIN 2 */ /* USER CODE BEGIN 2 */
HAL_TIM_Base_Start_IT(&htim4);
// Reset the LCD to start clean // Reset the LCD to start clean
HAL_GPIO_WritePin(LCD_RST_GPIO_Port, LCD_RST_Pin, GPIO_PIN_RESET); HAL_GPIO_WritePin(LCD_RST_GPIO_Port, LCD_RST_Pin, GPIO_PIN_RESET);
@ -223,6 +230,7 @@ int main(void)
// Run LVGL update loop // Run LVGL update loop
lv_timer_handler(); lv_timer_handler();
HAL_Delay(5); HAL_Delay(5);
printf("%lu\r\n", cmp_temp);
/* USER CODE END WHILE */ /* USER CODE END WHILE */
/* USER CODE BEGIN 3 */ /* USER CODE BEGIN 3 */
@ -268,6 +276,51 @@ void SystemClock_Config(void)
} }
} }
/**
* @brief TIM4 Initialization Function
* @param None
* @retval None
*/
static void MX_TIM4_Init(void)
{
/* USER CODE BEGIN TIM4_Init 0 */
/* USER CODE END TIM4_Init 0 */
TIM_ClockConfigTypeDef sClockSourceConfig = {0};
TIM_MasterConfigTypeDef sMasterConfig = {0};
/* USER CODE BEGIN TIM4_Init 1 */
/* USER CODE END TIM4_Init 1 */
htim4.Instance = TIM4;
htim4.Init.Prescaler = 64;
htim4.Init.CounterMode = TIM_COUNTERMODE_UP;
htim4.Init.Period = 1000;
htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE;
if (HAL_TIM_Base_Init(&htim4) != HAL_OK)
{
Error_Handler();
}
sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;
if (HAL_TIM_ConfigClockSource(&htim4, &sClockSourceConfig) != HAL_OK)
{
Error_Handler();
}
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN TIM4_Init 2 */
/* USER CODE END TIM4_Init 2 */
}
/** /**
* @brief USART1 Initialization Function * @brief USART1 Initialization Function
* @param None * @param None
@ -320,8 +373,10 @@ static void MX_GPIO_Init(void)
__HAL_RCC_GPIOA_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE();
/*Configure GPIO pin Output Level */ /*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOE, E_STEPPER_DIR_Pin|E_STEPPER_STEP_Pin|E_STEPPER_EN_Pin|Z_STEPPER_STEP_Pin HAL_GPIO_WritePin(GPIOE, E_STEPPER_DIR_Pin|E_STEPPER_STEP_Pin|Z_STEPPER_STEP_Pin, GPIO_PIN_RESET);
|Z_STEPPER_EN_Pin, GPIO_PIN_RESET);
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOE, E_STEPPER_EN_Pin|Z_STEPPER_EN_Pin, GPIO_PIN_SET);
/*Configure GPIO pin Output Level */ /*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, GPIO_PIN_RESET); HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, GPIO_PIN_RESET);
@ -330,11 +385,12 @@ static void MX_GPIO_Init(void)
HAL_GPIO_WritePin(LCD_RST_GPIO_Port, LCD_RST_Pin, GPIO_PIN_SET); HAL_GPIO_WritePin(LCD_RST_GPIO_Port, LCD_RST_Pin, GPIO_PIN_SET);
/*Configure GPIO pin Output Level */ /*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOB, ADS7843_CS_Pin|X_STEPPER_DIR_Pin|Z_STEPPER_DIR_Pin, GPIO_PIN_SET); HAL_GPIO_WritePin(GPIOB, ADS7843_CS_Pin|X_STEPPER_DIR_Pin|X_STEPPER_EN_Pin|Y_STEPPER_EN_Pin
|Z_STEPPER_DIR_Pin, GPIO_PIN_SET);
/*Configure GPIO pin Output Level */ /*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOB, ADS7843_SCK_Pin|ADS7843_MOSI_Pin|X_STEPPER_STEP_Pin|X_STEPPER_EN_Pin HAL_GPIO_WritePin(GPIOB, ADS7843_SCK_Pin|ADS7843_MOSI_Pin|X_STEPPER_STEP_Pin|Y_STEPPER_DIR_Pin
|Y_STEPPER_STEP_Pin|Y_STEPPER_EN_Pin, GPIO_PIN_RESET); |Y_STEPPER_STEP_Pin, GPIO_PIN_RESET);
/*Configure GPIO pin Output Level */ /*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(LCD_CS_GPIO_Port, LCD_CS_Pin, GPIO_PIN_SET); HAL_GPIO_WritePin(LCD_CS_GPIO_Port, LCD_CS_Pin, GPIO_PIN_SET);
@ -381,10 +437,10 @@ static void MX_GPIO_Init(void)
GPIO_InitStruct.Pull = GPIO_PULLUP; GPIO_InitStruct.Pull = GPIO_PULLUP;
HAL_GPIO_Init(ADS7843_Int_GPIO_Port, &GPIO_InitStruct); HAL_GPIO_Init(ADS7843_Int_GPIO_Port, &GPIO_InitStruct);
/*Configure GPIO pins : X_STEPPER_DIR_Pin X_STEPPER_STEP_Pin X_STEPPER_EN_Pin Y_STEPPER_STEP_Pin /*Configure GPIO pins : X_STEPPER_DIR_Pin X_STEPPER_STEP_Pin X_STEPPER_EN_Pin Y_STEPPER_DIR_Pin
Y_STEPPER_EN_Pin Z_STEPPER_DIR_Pin */ Y_STEPPER_STEP_Pin Y_STEPPER_EN_Pin Z_STEPPER_DIR_Pin */
GPIO_InitStruct.Pin = X_STEPPER_DIR_Pin|X_STEPPER_STEP_Pin|X_STEPPER_EN_Pin|Y_STEPPER_STEP_Pin GPIO_InitStruct.Pin = X_STEPPER_DIR_Pin|X_STEPPER_STEP_Pin|X_STEPPER_EN_Pin|Y_STEPPER_DIR_Pin
|Y_STEPPER_EN_Pin|Z_STEPPER_DIR_Pin; |Y_STEPPER_STEP_Pin|Y_STEPPER_EN_Pin|Z_STEPPER_DIR_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
@ -452,7 +508,9 @@ static void MX_FSMC_Init(void)
} }
/* USER CODE BEGIN 4 */ /* USER CODE BEGIN 4 */
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef* htim){
cmp_temp++;
}
/* USER CODE END 4 */ /* USER CODE END 4 */
/** /**

View File

@ -77,6 +77,56 @@ void HAL_MspInit(void)
/* USER CODE END MspInit 1 */ /* USER CODE END MspInit 1 */
} }
/**
* @brief TIM_Base MSP Initialization
* This function configures the hardware resources used in this example
* @param htim_base: TIM_Base handle pointer
* @retval None
*/
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
{
if(htim_base->Instance==TIM4)
{
/* USER CODE BEGIN TIM4_MspInit 0 */
/* USER CODE END TIM4_MspInit 0 */
/* Peripheral clock enable */
__HAL_RCC_TIM4_CLK_ENABLE();
/* TIM4 interrupt Init */
HAL_NVIC_SetPriority(TIM4_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(TIM4_IRQn);
/* USER CODE BEGIN TIM4_MspInit 1 */
/* USER CODE END TIM4_MspInit 1 */
}
}
/**
* @brief TIM_Base MSP De-Initialization
* This function freeze the hardware resources used in this example
* @param htim_base: TIM_Base handle pointer
* @retval None
*/
void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base)
{
if(htim_base->Instance==TIM4)
{
/* USER CODE BEGIN TIM4_MspDeInit 0 */
/* USER CODE END TIM4_MspDeInit 0 */
/* Peripheral clock disable */
__HAL_RCC_TIM4_CLK_DISABLE();
/* TIM4 interrupt DeInit */
HAL_NVIC_DisableIRQ(TIM4_IRQn);
/* USER CODE BEGIN TIM4_MspDeInit 1 */
/* USER CODE END TIM4_MspDeInit 1 */
}
}
/** /**
* @brief UART MSP Initialization * @brief UART MSP Initialization
* This function configures the hardware resources used in this example * This function configures the hardware resources used in this example

View File

@ -55,7 +55,7 @@
/* USER CODE END 0 */ /* USER CODE END 0 */
/* External variables --------------------------------------------------------*/ /* External variables --------------------------------------------------------*/
extern TIM_HandleTypeDef htim4;
/* USER CODE BEGIN EV */ /* USER CODE BEGIN EV */
/* USER CODE END EV */ /* USER CODE END EV */
@ -198,6 +198,19 @@ void SysTick_Handler(void)
/* please refer to the startup file (startup_stm32f1xx.s). */ /* please refer to the startup file (startup_stm32f1xx.s). */
/******************************************************************************/ /******************************************************************************/
/**
* @brief This function handles TIM4 global interrupt.
*/
void TIM4_IRQHandler(void)
{
/* USER CODE BEGIN TIM4_IRQn 0 */
/* USER CODE END TIM4_IRQn 0 */
HAL_TIM_IRQHandler(&htim4);
/* USER CODE BEGIN TIM4_IRQn 1 */
/* USER CODE END TIM4_IRQn 1 */
}
/* USER CODE BEGIN 1 */ /* USER CODE BEGIN 1 */
/* USER CODE END 1 */ /* USER CODE END 1 */

File diff suppressed because it is too large Load Diff

43
PSE.ioc
View File

@ -11,8 +11,9 @@ Mcu.IP0=FSMC
Mcu.IP1=NVIC Mcu.IP1=NVIC
Mcu.IP2=RCC Mcu.IP2=RCC
Mcu.IP3=SYS Mcu.IP3=SYS
Mcu.IP4=USART1 Mcu.IP4=TIM4
Mcu.IPNb=5 Mcu.IP5=USART1
Mcu.IPNb=6
Mcu.Name=STM32F103V(C-D-E)Tx Mcu.Name=STM32F103V(C-D-E)Tx
Mcu.Package=LQFP100 Mcu.Package=LQFP100
Mcu.Pin0=PE2 Mcu.Pin0=PE2
@ -45,19 +46,21 @@ Mcu.Pin32=PD7
Mcu.Pin33=PB3 Mcu.Pin33=PB3
Mcu.Pin34=PB4 Mcu.Pin34=PB4
Mcu.Pin35=PB5 Mcu.Pin35=PB5
Mcu.Pin36=PB7 Mcu.Pin36=PB6
Mcu.Pin37=PB8 Mcu.Pin37=PB7
Mcu.Pin38=PB9 Mcu.Pin38=PB8
Mcu.Pin39=PE0 Mcu.Pin39=PB9
Mcu.Pin4=PC4 Mcu.Pin4=PC4
Mcu.Pin40=PE1 Mcu.Pin40=PE0
Mcu.Pin41=VP_SYS_VS_Systick Mcu.Pin41=PE1
Mcu.Pin42=VP_SYS_VS_Systick
Mcu.Pin43=VP_TIM4_VS_ClockSourceINT
Mcu.Pin5=PE7 Mcu.Pin5=PE7
Mcu.Pin6=PE8 Mcu.Pin6=PE8
Mcu.Pin7=PE9 Mcu.Pin7=PE9
Mcu.Pin8=PE10 Mcu.Pin8=PE10
Mcu.Pin9=PE11 Mcu.Pin9=PE11
Mcu.PinsNb=42 Mcu.PinsNb=44
Mcu.ThirdPartyNb=0 Mcu.ThirdPartyNb=0
Mcu.UserConstants= Mcu.UserConstants=
Mcu.UserName=STM32F103VETx Mcu.UserName=STM32F103VETx
@ -73,6 +76,7 @@ NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:true\:false\:true\:false NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:true\:false\:true\:false
NVIC.TIM4_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
PA10.Mode=Asynchronous PA10.Mode=Asynchronous
PA10.Signal=USART1_RX PA10.Signal=USART1_RX
@ -110,8 +114,12 @@ PB4.Signal=GPIO_Output
PB5.GPIOParameters=PinState,GPIO_Label PB5.GPIOParameters=PinState,GPIO_Label
PB5.GPIO_Label=X_STEPPER_EN PB5.GPIO_Label=X_STEPPER_EN
PB5.Locked=true PB5.Locked=true
PB5.PinState=GPIO_PIN_RESET PB5.PinState=GPIO_PIN_SET
PB5.Signal=GPIO_Output PB5.Signal=GPIO_Output
PB6.GPIOParameters=GPIO_Label
PB6.GPIO_Label=Y_STEPPER_DIR
PB6.Locked=true
PB6.Signal=GPIO_Output
PB7.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultOutputPP PB7.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultOutputPP
PB7.GPIO_Label=Y_STEPPER_STEP PB7.GPIO_Label=Y_STEPPER_STEP
PB7.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_PP PB7.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_PP
@ -119,9 +127,10 @@ PB7.GPIO_PuPd=GPIO_NOPULL
PB7.GPIO_Speed=GPIO_SPEED_FREQ_LOW PB7.GPIO_Speed=GPIO_SPEED_FREQ_LOW
PB7.Locked=true PB7.Locked=true
PB7.Signal=GPIO_Output PB7.Signal=GPIO_Output
PB8.GPIOParameters=GPIO_Label PB8.GPIOParameters=PinState,GPIO_Label
PB8.GPIO_Label=Y_STEPPER_EN PB8.GPIO_Label=Y_STEPPER_EN
PB8.Locked=true PB8.Locked=true
PB8.PinState=GPIO_PIN_SET
PB8.Signal=GPIO_Output PB8.Signal=GPIO_Output
PB9.GPIOParameters=PinState,GPIO_Label PB9.GPIOParameters=PinState,GPIO_Label
PB9.GPIO_Label=Z_STEPPER_DIR PB9.GPIO_Label=Z_STEPPER_DIR
@ -173,9 +182,10 @@ PE0.GPIOParameters=GPIO_Label
PE0.GPIO_Label=Z_STEPPER_STEP PE0.GPIO_Label=Z_STEPPER_STEP
PE0.Locked=true PE0.Locked=true
PE0.Signal=GPIO_Output PE0.Signal=GPIO_Output
PE1.GPIOParameters=GPIO_Label PE1.GPIOParameters=PinState,GPIO_Label
PE1.GPIO_Label=Z_STEPPER_EN PE1.GPIO_Label=Z_STEPPER_EN
PE1.Locked=true PE1.Locked=true
PE1.PinState=GPIO_PIN_SET
PE1.Signal=GPIO_Output PE1.Signal=GPIO_Output
PE10.Mode=16b-d1 PE10.Mode=16b-d1
PE10.Signal=FSMC_D7 PE10.Signal=FSMC_D7
@ -201,11 +211,12 @@ PE3.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_PP
PE3.GPIO_PuPd=GPIO_NOPULL PE3.GPIO_PuPd=GPIO_NOPULL
PE3.Locked=true PE3.Locked=true
PE3.Signal=GPIO_Output PE3.Signal=GPIO_Output
PE4.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultOutputPP PE4.GPIOParameters=PinState,GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultOutputPP
PE4.GPIO_Label=E_STEPPER_EN PE4.GPIO_Label=E_STEPPER_EN
PE4.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_PP PE4.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_PP
PE4.GPIO_PuPd=GPIO_NOPULL PE4.GPIO_PuPd=GPIO_NOPULL
PE4.Locked=true PE4.Locked=true
PE4.PinState=GPIO_PIN_SET
PE4.Signal=GPIO_Output PE4.Signal=GPIO_Output
PE7.Mode=16b-d1 PE7.Mode=16b-d1
PE7.Signal=FSMC_D4 PE7.Signal=FSMC_D4
@ -269,9 +280,15 @@ RCC.SYSCLKFreq_VALUE=64000000
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
RCC.TimSysFreq_Value=64000000 RCC.TimSysFreq_Value=64000000
RCC.USBFreq_Value=64000000 RCC.USBFreq_Value=64000000
TIM4.AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE
TIM4.IPParameters=Prescaler,Period,AutoReloadPreload
TIM4.Period=1000
TIM4.Prescaler=64
USART1.IPParameters=VirtualMode USART1.IPParameters=VirtualMode
USART1.VirtualMode=VM_ASYNC USART1.VirtualMode=VM_ASYNC
VP_SYS_VS_Systick.Mode=SysTick VP_SYS_VS_Systick.Mode=SysTick
VP_SYS_VS_Systick.Signal=SYS_VS_Systick VP_SYS_VS_Systick.Signal=SYS_VS_Systick
VP_TIM4_VS_ClockSourceINT.Mode=Internal
VP_TIM4_VS_ClockSourceINT.Signal=TIM4_VS_ClockSourceINT
board=custom board=custom
isbadioc=false isbadioc=false