-         

Ergebnis 1 bis 4 von 4

Thema: Was mache ich falsch? Timer2

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    01.11.2004
    Alter
    33
    Beiträge
    29

    Was mache ich falsch? Timer2

    Anzeige

    Moin Moin,

    ich probiere grade eine LED ihm 1Hz Takt blinken zu lassen. Der interne Ozillator meines Mega 8 ist aktiviert, an Pin 9 und 10 hängt ein 32767Hz Quarz ohne zusätzliche Kapazitäten.
    Das folgende Programm funktioniert nur, wenn ich das "Assr.as2 = 1" auskommentiere - dann natürlich nicht mit 1Hz.
    Hier der Code:

    Code:
    $regfile = "m8def.dat" 
    $crystal = 1000000 
    
    On Timer2 Takt 
    
    
    Ddrb = &B11111111 
    Portb = &B00000000 
    
    Assr.as2 = 1                                                'asynchroner Betrieb 
    Tccr2 = &B00000100                                          'Takt: 32768Hz/64=512Hz 
    Timsk.toie2 = 1                                             'Timer2 Overflow-Interrupt einschalten 
    Sreg.7 = 1                                                  'Interrupts freischalten 
    
    Waitms 1000 
    
    Do 
    
    Loop 
    
    Takt: 
    Portb.4 = Not Portb.4 
    Return 
    
    End
    Kann der Quarz kaputt sein oder habe ich ein Fehler im Programm?

    Mfg Baumschubser

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.03.2004
    Ort
    Bielefeld (JA, das gibt es!)
    Alter
    29
    Beiträge
    1.614
    mach das doch mal mitm config timer2 und enable interrupts
    Ich will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds, Entwickler von Linux

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    01.11.2004
    Alter
    33
    Beiträge
    29
    Der Timer funktioniert jetzt so wie ich es mir vorstelle - genau 1Hz.
    Wie kann ich einen Timer softwareseitig eigentlich anhalten?
    Der Timer soll z.B. ausgeschaltet werden, wenn ich einen Taster drücke und bei einem weiteren Tastendruck wieder aktiviert werden.

    Mfg Baumschubser

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.03.2004
    Ort
    Bielefeld (JA, das gibt es!)
    Alter
    29
    Beiträge
    1.614
    stop timer2 und danach zum starten wieder start timer2, aber mach nicht den fehler, den nicht wieder zurückzusetzen
    Ich will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds, Entwickler von Linux

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •