imam jedan problem pa rekoh možda ovde nađem pomoć. Da napomenem da sam prethodno detaljno proučio literaturu i internet. Hoću da regulišem intenzitet osvetljenja sijalice dobro poznatom faznom regulacijom pomoću mikrokontrolera i trijaka. Principi su poznati, za detekciju prolaska kroz nulu koristim pin 7 mikrokontrolera ATTINNY25. Kad mrežni napon prođe kroz nulu generiše se spoljni prekid. Šema je u prilogu. Problem je da pri regulaciji osvetljaja napon na sijalici ne raste kontinualno kao što zelim već je to nešto nedefinisano. Vizuelni efekat je da osvetljaj podrhtava dok se sijalica potpuno ne upali. Nemam ideju u čemu je problem, a sumnjam u izbor trijaka-bio mi je pri ruci BTA16 pa sam uzeo njega. Program je:
$regfile = "attiny25.dat"
$hwstack = 32
Declare Sub Kontrola_vremena
Dim I As Byte
Dim K As Byte
Dim Kontrola As Bit
Dim Vreme_sek As Byte
Config Pinb.0 = Output 'gate signal
Config Pinb.2 = Input 'SPOLJNI PREKID
Config Int0 = Change
On Int0 Prekid 'prekidna rutina
Reset Kontrola
K = 45
Vreme_sek = 10
Enable Interrupts 'dozvoli prekide
Enable Int0 'i spoljni INT0
' u glavnoj petlji se vrsi provera da li je ostvaren fazni pomeraj
' kroz celu poluperiodu.znaci sijalica od nula do maksimunma
Do
If Kontrola = 1 Then
Disable Int0 'zabrani prekid ako je sijalica na maksimumu osvetljaja
Kontrola = 0
Portb.0 = 1
Call Kontrola_vremena
End If
Loop
Sub Kontrola_vremena
'ovim potprogramom se ostvaruje uslov da sijalica svetli jos 10 sekundi
'od trenutka kada postigne maksimalni osvetljaj
For I = 0 To Vreme_sek
Wait 1
Next I
Portb.0 = 0 ' i onda se ugasi
End Sub Kontrola Vremena
Prekid:
Disable Int0 'zabrani prekid
Decr K 'korak je 200 uS a K je umnozak
For I = 0 To K
Waitus 200
Next I 'kad prodje vreme faznog pomaka
Set Portb.0 'setuj gejt trijaka
Waitus 50 'sacekaj 50 uS
Reset Portb.0 'resetuj gejt
If K = 0 Then 'ako je ostvaren fazni pomeraj kroz celu poluperiodu
Kontrola = 1 'setuj kontrolni fleg
K = 45 'priprema promenljive za novi ciklus pomeraja faze
End If
Enable Int0
Return
End
Unapred zahvalan za svaku pomoć. Koliko vidim pretragom tema ima iskusnih po ovom pitanju.