Stm32f103 ile çok kanallı pwm

erdemtr55

Üye
Katılım
3 Mart 2025
Mesajlar
334
Kolay gelsin herkese,
Ben stm32f103 ile timer2den ch1 ve ch2 ikiden pwm almak istiyorum. Daha sonraki aşamalarda spwm dönüşecek.
Yani 0-180 derece kanal ch1 aktif olacak, 180-360 ch2 aktif olacak. Biraz chatgbt yaptım , ama verimli sonuç alamadım.
O yüzden size soruyorum, hangi kodu yapabilirim?
 
TIM1->CCR1 ve TIM1->CCR2 üzerinden yapılabiliyor olması gerekli.

C:
if(angle<=180){
   
uint8_t pulse = 112233; // bu değeri kullanıcı hesaplayacak

TIM1->CCR1 = pulse;
TIM1->CCR2 = 0;
   
HAL_TIM_PWM_Stop(&htim1, TIM_CHANNEL_1);
HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_2);
}
else{
   
uint8_t pulse = 112233; // bu değeri kullanıcı hesaplayacak
   
TIM1->CCR2 = pulse;
TIM1->CCR1 = 0;
   
HAL_TIM_PWM_Stop(&htim1, TIM_CHANNEL_2);
HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_1);
}

şu şekilde olması gerekli test etmedim.

Angle değerinin başka bir fonksiyonda hesaplandığı varsayıldı.
 

Çevrimiçi üyeler

Çevrimiçi üye yok.

Forum istatistikleri

Konular
9,281
Mesajlar
148,712
Üyeler
3,818
Son üye
mmd

Son kaynaklar

Back
Top