Habe nun etwas rumgespielt und auch das Programm zu meiner Zufriedenheit hinbekommen. In meinem LCD flackert es leider ein bisschen (nicht schlimm, nur ein Schönheitsfehler).
Da ich aber noch Anfänger in Bascom bin und dies eigentlich mein erstes echts Projekt ist, würde ich gern wissen, ob man den Code vielleicht irgendwo noch vereinfachen könnte (ausserdem bin ich echt stolz, dass ich das [fast] ganz alleine geschafft habe und will mein Ergebnis präsentieren)
Code:'Deklarationen $regfile = "m8def.dat" $crystal = 8000000 Ddrc = &B00001100 Portc = &B00000011 'LCD Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2 Config Lcdbus = 4 Dim Command As Bit Dim Led1 As Bit Dim Led1_sub As Bit Dim Led2 As Bit Dim Led2_sub As Bit 'Programm Cls Do Locate 1 , 1 Lcd " Led1" Locate 2 , 1 Lcd " Led2" Debounce Pinc.0 , 1 , Flag , Sub If Command = 0 Then Gosub Led1 If Command = 1 Then Gosub Led2 Loop End 'Subroutinen Led1: Debounce Pinc.1 , 1 , Led1_sub , Sub Locate 1 , 1 Lcd "-> Led1" Return Led1_sub: If Portc.2 = 1 Then Portc.2 = 0 Locate 1 , 9 Lcd "(aus)" Else Portc.2 = 1 Locate 1 , 9 Lcd "(an)" End If Return Led2: Debounce Pinc.1 , 1 , Led2_sub , Sub Locate 2 , 1 Lcd "-> Led2" Return Led2_sub: If Portc.3 = 1 Then Portc.3 = 0 Locate 2 , 9 Lcd "(aus)" Else Portc.3 = 1 Locate 2 , 9 Lcd "(an)" End If Return Flag: Toggle Command Return







Zitieren

Lesezeichen