- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 10 von 14

Thema: Zeitliche Ablaufsteuerung

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    Zitat Zitat von Roboant Beitrag anzeigen
    @Searcher: habe den Code gerade mal eingespielt, leider funktioniert er so nicht.
    Hallo, hab gerade nochmal den Timer Mode im Simulator überprüft. Timer läuft im CTC Modus mit OCR1A as Top. Hab ich oben im Code berichtigt. Wie sieht es jetzt aus?

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    20.12.2003
    Beiträge
    14
    Servus, habe die Veränderung getestet, die Sirene würde sich bei Dunkelheit 4Minuten einschalten und dann passiert nichts mehr, über zwei Std. beobachtet.

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    Zitat Zitat von Roboant Beitrag anzeigen
    ... über zwei Std. beobachtet.
    Oha
    ich gehe davon aus, daß Du einen 12MHz Quarz am µC hast. Wenn die 30 Sekunden zu 4 Minuten werden, läuft der µC 8 Mal zu langsam. CKDIV8 Fuse umgefused?!

    Zum Testen kannst Du den Prescale vom Timer1 statt auf 1024 auf 8 oder sogar 1 setzten. Dann läuft alles entsprechend schneller.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    20.12.2003
    Beiträge
    14
    Ja genau auf 12MHz, und *schääähm* die Fuse nicht umgestellt..ich versuche und meld mich wieder!! Vielen Dank, für den Tipp...update...die 30 sec stimmen jetzt..teste die Std. nun.
    Geändert von Roboant (31.07.2013 um 16:29 Uhr)

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    No problem. Bin ich auch schon öfter drauf reingefallen.
    Prescale 8 mag ein bißchen schnell sein. Bei 64 werden die 30 Sekungen zu 30/(1024/64) = knapp 2 Sekunden und die Stunde zu knapp 4 Minuten.

    Daumen drück
    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    20.12.2003
    Beiträge
    14
    @Searcher, Vielen vielen Dank!! Es funktioniert bestens.

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    Zitat Zitat von Roboant Beitrag anzeigen
    ... Es funktioniert bestens.
    *erleichtert* Prima, wenn es für Dich paßt.

    Danke auch Dir; ich habe hier auch zum erstemal mitbekommen, daß man das GetADC direkt in der IF Abfrage verwenden kann.

    Gibt natürlich noch 'ne Menge mehr und bessere Implementierungen als diese.
    Wenn hier das Programm bei Helligkeit los läuft, fängt der Timer schon bei CONFIG TIMER1 an zu laufen, zählt aber wegen des noch nicht enabelten compare1a Interrupts die Sekunden noch nicht. Das Interruptflag wird aber schon nach der ersten Sekunde ab Timerlauf gesetzt.

    Wird es nun dunkel und der Interrupt enabelt, wird der Interrupt durch das gesetzte Interruptflag sofort ausgeführt, egal welchen Wert der Timer1 hat und als erste Sekunde gezählt. Erreicht dann der Timer1 den OCR1A Wert, wird die zweite Sekunde gezählt. Ergebnis, die erste Sekunde ist praktisch immer zu kurz bemessen. Die Stundenmessung ist auch nicht ganz sekundengenau meine ich. Könnte man mit ein paar zusätzlichen Zeilen flicken; wird aber vermutlich bei Dir keine Rolle spielen.

    Man könnte die WAIT Statements in der Hauptschleife loswerden, indem man die ISR für das Warten mitbenutzt.

    Man könnte den Timer bei Helligkeit abschalten und nicht nur die Interrupts disablen - Strom sparen

    etc ...


    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

Ähnliche Themen

  1. [ERLEDIGT] Zeitliche begrenzung beim fahren Hilfe benötigt
    Von voxya im Forum Asuro
    Antworten: 3
    Letzter Beitrag: 05.11.2011, 12:20
  2. Antworten: 8
    Letzter Beitrag: 09.02.2011, 17:00

Berechtigungen

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

LiFePO4 Speicher Test