Hallo,
Ich bin seit einer Woche dabei mit meinem Steckbrett und meinem ersten AVR zu testen.
Das Dimmen von LED habe ich gestern gerade probiert und funktioniert mit diesem Code bei mir.
Sollte eigentlich alles klar sein:
Mußt halt nur die config´s an deine Probierplatine anpassen
Code:
$regfile = "m16def.dat"
$crystal = 12000000
Const True = 1
Const False = 0
Dim Hi As Byte
Dim Lo As Byte
Dim Phase As Bit
Config Timer0 = Timer , Prescale = 64
On Timer0 Timer0_isr
Config Pinc.0 = Output
Config Pinc.1 = Output
Led1 Alias Portc.0
Led2 Alias Portc.1
' Config Lcd = 16 * 2
' Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4
' Config Lcdbus = 4
Config Pina.0 = Input
Config Pina.1 = Input
Config Pina.2 = Input
Tasterhoch Alias Pina.0
Tasterrunter Alias Pina.1
Tasterenter Alias Pina.2
Enable Timer0
Enable Interrupts
Lo = 255
Phase = True
Porta.0 = 1
Porta.1 = 1
Porta.2 = 1
'Initlcd
'Cls
Do
Waitms 5
'Locate 1 , 5 : Lcd Lo
If Tasterhoch = 1 Then Incr Lo
If Tasterrunter = 1 Then Decr Lo
If Lo = 0 Then Lo = 1
If Lo = 255 Then Lo = 254
Hi = 255 - Lo
Loop
End
Timer0_isr:
If Phase = True Then
Led1 = 1
Timer0 = Lo
Phase = False
Else
Led1 = 0
Timer0 = Hi
Phase = True
End If
Return
Die Sachen, die ich auskommentiert habe, kannste auch weglassen, wenn Du kein Display dran hast.
ich habe das nur für mich gemacht. (Übung macht den Meister)
Lesezeichen