2024-06-07 06:42 AM
Drivinng ann H bridge to generate a sinewave , PWM generated and driving the H bridge .The PWM siganl as follows
The H bridge Connection as shown below.
While appling supply the Low side MOSFET Q2 is Heating up Why so ?
I added some dead time also nothing happen .
I interchanged the H bridge PWM signal as functioning as Q2 siganl is properly changed to Q4 ,Now the Q4 is heating .
Also get a half sinewave shape little like a sharp peak like a triangle waves .
see the sinewave below
what wrong am doing ?
int16_t sin_table[160]= { 0, 5, 10, 15, 20, 25, 29, 34, 39, 44, 49, 54, 58, 63,
68, 73, 77, 82, 87, 91, 96, 100, 105, 109, 113, 118, 122, 126, 131, 135,
139, 143, 147, 151, 155, 159, 162, 166, 170, 173, 177, 180, 184, 187, 190,
193, 196, 199, 202, 205, 208, 211, 213, 216, 218, 220, 223, 225, 227, 229,
231, 233, 235, 236, 238, 239, 241, 242, 243, 244, 245, 246, 247, 248, 248,
249, 249, 250, 250, 250, 250, 250, 250, 250, 249, 249, 248, 248, 247, 246,
245, 244, 243, 242, 241, 239, 238, 236, 235, 233, 231, 229, 227, 225, 223,
220, 218, 216, 213, 211, 208, 205, 202, 199, 196, 193, 190, 187, 184, 180,
177, 173, 170, 166, 162, 159, 155, 151, 147, 143, 139, 135, 131, 126, 122,
118, 113, 109, 105, 100, 96, 91, 87, 82, 77, 73, 68, 63, 58, 54, 49, 44, 39, 34, 29, 25, 20, 15, 10, 5};
HAL_ADCEx_Calibration_Start(&hadc);
HAL_TIM_Base_Start_IT(&htim1);
HAL_TIM_PWM_Start_DMA(&htim1, TIM_CHANNEL_1, (uint32_t *)sin_table, 160);
HAL_TIMEx_PWMN_Start_IT(&htim1, TIM_CHANNEL_1);
HAL_TIM_PWM_Start_DMA(&htim1, TIM_CHANNEL_2, (uint32_t *)sin_table, 160);
HAL_TIMEx_PWMN_Start_IT(&htim1, TIM_CHANNEL_2);
HAL_ADC_Start_IT(&hadc);
Please help me