Hallo,
ich hab die Beiträgen schonmal durch forstet und Teile gefunden bei denen ich der Meinung war ich könnte sie gebrauchen, aber ich kriegs einfach nicht hin.
Ich möchte für mein kleine Tochter ein Schonnenschutz mit Motor und Segeltuch bauen. Die Mechanik ist eine Getriebemotor aus einem Garagentor antrieb (24V), die Elektronik ist ein ATmege8 mit PCF8574 für Tasten und Relais (im Programm LED).
Das Programm funzt so wie es soll nur eben soll die eingeleitetet Funktion auf/ab eben nach 15-30sec selbständig abschalten. Ich hab gelesen dass man da einen Timer, Timer1 einstellen kann nur ich weiss nicht wo. Kann mir jemand bitte einen Tip geben wie es aussehen muss und wo er stehen soll. Später soll eine "Schaltuhr" realisiert werden aber erst wenn dass hier richtig läuft.
Bitte nicht hauen wenn einige Teile etwas schlecht geprogt sind ich hab eben im Moment nur den Timer im Kopf aber eben nicht im Programm. LCD ist nur für die Anzeige was das Programm grad macht und die 8_Fach ist als parallel Anzeieg für Relais oder so und auch als Test ob's geht.Code:'------------------------------------------------ ' i2c-pcf8574-switch ' 4 Tasten - 4 LED '------------------------------------------------ $regfile = "m8def.dat" $crystal = 4000000 $lib "Lcd_i2c.lib" $lib "i2c.lib" $baud = 19200 '------------------------------------------------ ' Declarationen '------------------------------------------------ Config Sda = Portc.4 Config Scl = Portc.5 Config Twi = 100000 'Config I2cdelay = 10 Portc.4 = 0 Portc.5 = 0 Config Timer1 = Timer , Prescale = 1 , Capture Edge = Rising Const Pcf8574write = &H4C ' Led Ausgabe Const Pcf8574read = &H4D ' Tasten eingabe Const Pcf8574_lcd = &H4E ' LCD Ausgabe Const Pcf8574_8fach = &H42 Const Aus = &B00001111 Const Ledaus = &B11111111 'LED aus Const Ledauf1 = &B10111111 'LED 1 auf Const Ledab1 = &B01111111 'LED 1 ab Const Ledauf2 = &B11011111 'LED 2 auf Const Ledab2 = &B11101111 'LED 2 ab Config Lcd = 20 * 2 Dim _lcd_e As Byte _lcd_e = 128 Dim Pcf_taste As Byte Dim Pcf_8fach As Byte Dim Anzled As Byte Dim Taste As Byte Dim T As Integer Dim Auf As Bit Dim Ab As Bit Dim Auf2 As Bit Dim Ab2 As Bit Dim Led As Byte Dim Ledaus As Byte Dim Ledauf1 As Byte Dim Ledab1 As Byte Dim Ledauf2 As Byte Dim Ledab2 As Byte '------------------------------------------------ ' Vorspann - Initialisierung '------------------------------------------------ Cls ' Verzögerung Locate 1 , 1 : Lcd "Lade Programm ... " : For T = 3 To 1 Step -1 Locate 2 , 1 : Lcd "Bitte warten .... " ; T : Wait 1 Next T Cls '------------------------------------------------ ' Tastenabfrage '------------------------------------------------ Anfang: Led = Ledaus Do I2cstart I2cwbyte Pcf8574read I2crbyte Pcf_taste , Nack Taste = Pcf_taste I2cstop If Taste = 253 And Ab = 0 And Auf = 0 Then : Ab = 1 : Led = Ledab1 : Wait 1 Else If Taste = 126 Or Taste = 125 And Ab = 1 And Auf = 0 Then : Ab = 0 : Led = Ledaus : Wait 1 Else If Taste = 254 And Ab = 0 And Auf = 0 Then : Auf = 1 : Led = Ledauf1 : Wait 1 Else If Taste = 189 Or Taste = 190 And Auf = 1 And Ab = 0 Then : Auf = 0 : Led = Ledaus : Wait 1 End If End If End If End If Gosub 4_fach Gosub 8_fach Gosub Anzeige Loop 'Until Taste <> 255 : Goto Anfang '------------------------------------------------ ' Anzeige '------------------------------------------------ Anzeige: I2cinit I2cstart I2cwbyte Pcf8574_lcd Locate 1 , 1 : Lcd "Taste :" ; Taste Locate 2 , 1 : Lcd "--->" Locate 1 , 14 : Lcd "Auf:" ; Auf : Lcd "-" ; Auf2 : Print "Rollo Auf " ; Auf Locate 2 , 14 : Lcd "Ab :" ; Ab : Lcd "-" ; Ab2 : Print "Rollo ab" ; Ab I2cstop Return '------------------------------------------------ ' 4 fach LED bei Tasten '------------------------------------------------ 4_fach: I2cinit I2cstart I2cwbyte Pcf8574write I2cwbyte Led I2cstop Return '------------------------------------------------ ' 8 fach LED '------------------------------------------------ 8_fach: I2cinit I2cstart I2cwbyte Pcf8574_8fach I2cwbyte Led I2cstop Return '------------------------------------------------ ' Uhr '------------------------------------------------ End
Bitte schreibt mir befor ich das Ganze in die Tonne trete.
Dank im voraus







Zitieren

Lesezeichen