BUTON KONTROLLÜ PİC İLE DİMMER DEVRESİ

Başlatan sinby, 23 Temmuz 2017, 22:48:04

sinby

Merhaba arkadaşlar
buton kontrollü dimmer devresi yapmaya çalışıyorum aşağıdaki devrede ve kodlardaki hata nedir bulamadım. osilaskopta zero crossing için sinyal alıyorum ama triyak tetiklemesi gerçekleşmiyor, nedeni ne olabilir.


@ DEVICE pic16F628A 'işlemci 16F628 
@ DEVICE pic16F628A, WDT_OFF 'Watch Dog timer kapalı
@ DEVICE pic16F628A, PWRT_ON 'Power on timer açık
@ DEVICE pic16F628A, PROTECT_OFF 'Kod Protek kapalı
@ DEVICE pic16F628A, MCLR_OFF 
@ DEVICE pic16F628A, INTRC_OSC_NOCLKOUT

PORTA=0:TRISA=%00000011
PORTB=0:TRISB=%00000001
CMCON=7
T1CON =1
DEFINE OSC 4


'-------------------------------------------------------------------------------
ON INTERRUPT GoTo KESME   'kesme oluşursa ... adlı etikete git.
OPTION_REG=%0000000 'dahili Pull up dirençleri aktif edildi ayrıca pullup direncine gerek yok.

'-------------------------------------------------------------------------------
triyak_gecikme  var word
triyak_gecikme=0


  Symbol UP_TUS = porta.0
  Symbol DWN_TUS =porta.1
  Symbol TRIYAK  = portb.1
  Symbol ZERO_CROS = portb.0
  Symbol LED  =portb.2

'-------------------------------------------------------------------------------
INTCON=%10100000  'Kesmeler aktif ve RB0/INT kesmesi aktif

'-------------------------------------------------------------------------------
Low TRIYAK
  Low LED

  PAUSEUS 400
 

  BASLA:
  triyak_gecikme=5000
  If UP_TUS  = 1 Then
  triyak_gecikme= triyak_gecikme  + 5
  ENDif
  If DWN_TUS = 1 Then
   triyak_gecikme= triyak_gecikme   - 5
  ENDif
  GoTo BASLA

 
  Disable
  KESME:
  PAUSEUS triyak_gecikme
  High TRIYAK
  PAUSEUS 10
  Low TRIYAK
  INTCON.1=0
  Resume
  Enable

  End

ete

İntcon registerinde tmr0 kesmesini aktif etmişsin. Yanlışlık burada RB0 (int) girişini aktif etmen gerek.
Ete

sinby

Merhaba ete hocam
bahsettiğiniz değişikliği yaptım INTCON =%10010000 olarak ancak yine çalışmadı.

ete

Triac ateşlendikten sonra verdiğin 10us gecikmeyi 20-50us a adında bir değer olarak ver.
Ete

sinby

Teşekkürler ete hocam devre çalıştı triyak bağlantısında hata varmış.

Powered by EzPortal