PWM'in sebep olduğu yavaşlama

Başlatan showtime, 01 Kasım 2007, 06:17:55

showtime

Merhabalar, Proğramı 100Khz Pwm'e ayarladığım zaman aradaki 100ms neredeyse 1sn ye çıkıyor.  :roll:  Fakat PWM frekansını örneğin 10Khz yaptığımda bu ortaya çıkmıyor. Yüksek frekanslarda Picin işleyişi yavaşalarmı.  Bunu gerek ISISte gerekse gerçek devrede denedim. (Tabi bu arada yazdığım kod ve PWM ayarlarının doğru olduğunu kabul ediyoruz )

DEFINE   OSC 20
Duty VAR WORD
TRISC.2=0
TRISD.5=0
T2CON = %00000100  ' Timer2 ON, prescale 1:1
PR2 = 49          ' 100kHz
CCP1CON = %10001100

loop:
duty=60
 gosub degistir
 pause 100
duty=150
 gosub degistir
 pause 100
goto loop

degistir:
CCP1CON = %00000000
  CCP1CON.4 = Duty.0   ' Setup 10-bit duty cycle as
  CCP1CON.5 = Duty.1   ' a 10-bit word
  CCPR1L = Duty >> 2
CCP1CON = %00001100
return
End

miral

selamlar
proteus isis simulation da frame ayarları vardır.Bunları ayarlayarak gerçek zamanlı bir simulation elde edebilirsin yada frekansını ölçmek istediğin noktaya osiloskop bağlayarak görebilirsin
önce selam,sonra kelam...

showtime

Evet haklısınız 100Khz olunca problem oluyor.