V2.4
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
/********************************** (C) COPYRIGHT *******************************
|
||||
* File Name : main.c
|
||||
* Author : WCH
|
||||
* Version : V1.0.0
|
||||
* Date : 2026/04/23
|
||||
* Description : Main program body.
|
||||
*********************************************************************************
|
||||
* Copyright (c) 2021 Nanjing Qinheng Microelectronics Co., Ltd.
|
||||
* Attention: This software (modified or not) and binary are used for
|
||||
* microcontroller manufactured by Nanjing Qinheng Microelectronics.
|
||||
*******************************************************************************/
|
||||
|
||||
#include "M0_Control_Library.h"
|
||||
#include "ch32v20x_conf.h"
|
||||
#include "IQmath_RV32.h"
|
||||
#include "debug.h"
|
||||
|
||||
/*********************************************************************
|
||||
* @fn main
|
||||
*
|
||||
* @brief Main program.
|
||||
*
|
||||
* @return none
|
||||
*/
|
||||
int main(void)
|
||||
{
|
||||
Delay_Init();
|
||||
Delay_Ms(100);
|
||||
Flash_Operation_Init(&Flash_M); //Post 4K FLASH Erase and Read
|
||||
KeyandLED_IOInit(); //Button and indicator light IO configuration
|
||||
KeyandLED_Parameter_Define(&Key_M, &LED_M); //Button and indicator parameters definition
|
||||
Global_Status_Initial(); //Initialization of global state
|
||||
Triac_Parameter_Define(&Triac_ctl,&Tempctl_M); //SCR State Initialization
|
||||
Operation_Parameter_Define(&Operation_M); //Operation Parameter Definition
|
||||
Motor_Prameter_Define(&MBase_M); //Motor Parameter Definition
|
||||
Motor_FilerPara_Cal_M(&MStruc_M); //Motor Phase Filter Parameter Initialization
|
||||
Motor_BaseCal_M(&MBase_M); //Base Value Parameter Calculation
|
||||
PID_Prameter_Define(&Mpid_M); //PID Parameter Definition
|
||||
DCurrProcess_Parameter_Define(&DCurrProcess_M);
|
||||
PID_ParaBase_Cal_M(&MBase_M,&Mpid_M); //PID Base Value Parameter Calculation
|
||||
Injstart_Parameter_Define_M(&InjStart_M); //Current Injection Start-up Parameter Configuration
|
||||
Protection_and_Emergency_Parameter_Define(); //Protection Parameter Configuration
|
||||
Speedrampctr_Parameter_Define(&SpeedRamp_M); //Rotational Speed Operation Parameter Configuration
|
||||
SVPWM_1R_Paramter_Init(&SVPWM_Cal_M,&PWMCali_M ,&MBase_M); //SVPWM Calculation Parameter Configuration
|
||||
SVPWM_1R_Timer_Configure(); //SVPWM uses timer and GPIO configuration
|
||||
ADC_Parameter_Init(&ADC_M,&MBase_M); //ADC Calculation Parameter Configuration
|
||||
ADC_OPA_Configure(&ADC_M); //ADC and OPA configuration
|
||||
TempInit_Measure(&Tempctl_M,ADC1); //Initial temperature measurement
|
||||
LBG_Parameter_Define(&MLBG_M,&LBG_Status_M); //LBG Observer Parameter Definition
|
||||
LBG_Paramter_Cal (&MBase_M,&MLBG_M); //LBG Observer Parameter Calculation
|
||||
HFVQI_Parameter_Define(&HFVQI_StartStruc_M,&SVPWM_Cal_M,&PWMCali_M); //Pulse Positioning Parameter Configuration
|
||||
Poweroperation_Initial(&Powerctr_M); //Power On/Off Control Parameter Configuration
|
||||
Powercom_Prameter_Define(&Powercom_M);
|
||||
Systick_Init(); //Speed Loop Configuration
|
||||
Interrupt_Configuration(); //Configure Interrupt
|
||||
TIM_Cmd(TIM1, ENABLE);
|
||||
TIM_Cmd(TIM2, ENABLE);
|
||||
TIM_Cmd(TIM3, ENABLE);
|
||||
TIM_Cmd(TIM4, ENABLE);
|
||||
SYS_TIM_Cmd(ENABLE);
|
||||
while(1)
|
||||
{
|
||||
Motor_Operation_Process(); //Motor Operation
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user