hey,
ich arbeite gerade daran einen 1kW BLDC Motor zum drehen zu bekommen.
Dazu benutze ich: ein STM32F4Discovery, den Motor mit Hall-Sensoren,
IRFP4310Z als FETs und IR2110 als FET-Treiber mit DCDC-Wandler für die
High-Side-FETs.
Die Software basiert auf STM32 BLDC Control with HALL Sensor jedoch
TIM3 für die Hall Sensoren.
Soweit sieht alles auch ganz gut auch, jedoch hänge ich an dem Phänomen,
dass wenn ich im TIM1 beide Ausgänge (CCx und CCxN) deaktiviere, so
werden beide Ausgänge auf high gesetzt was zu häftigen Kurzschlüssen
führt.
1 | TIM_CCxCmd(TIM1, TIM_Channel_1, TIM_CCx_Disable);
|
2 | TIM_CCxNCmd(TIM1, TIM_Channel_1, TIM_CCxN_Disable);
|
Im reference manual ist es auf Seite 412 beschrieben:
deaktiviere ich einen Ausgang (CCxE = 0 und CCxNE = 1, oder CCxE = 1 und
CCxNE = 0) so ist dieser auf inaktiv (bei mir Low) und der andere gibt
PWM aus. Deaktiviere ich beide Ausgänge (CCxE = 0 und CCxNE = 0) so
werden die Ausgänge vom Timer nicht mehr gesteuert und befinden sich
beide im High Zustand -> peng.
Hat jemand einen Tipp für mich wie ich beide Ausgänge gleichzeitig auf
Low setzen kann ohne ein komplettes remap der Pins duchzuführen?
Grüße