- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 3 von 3

Thema: Bit-Variablen Atomar?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Man muss den Interrupt nur dann atomar machen, wenn die Variable in einer ISR auch verändert werden kann.
    Die Befehle "enable Interrupts" und "disable Interrupts" sollten sehr schnell und kurz sein (1-2 Worte und Zyklen) die lassen sich nämlich direkt in ASM Befehle SEI (ggf. noch ein NOP dazu) und CLI übersetzen. Da kann man also ruhig mehrmals kurz die Interrupts sperren.

    Wie lange die Interrupts insgesamt gesperrt sind ist oft nicht so wichtig. Störungen kann es geben wenn Interrupts zu lange in eins unterbrochen sind. Da kann es ggf. sogar sinnvoll sein die Interrupts nur kurz wieder frei zu geben auch wenn der nächste Befehl schon wieder ein "disable Interrupts"ist.

    Das verhalten mit dem Wait 100 ms und Wait 1 ms ist schon verdächtig. Da ist vermutlich ein Fehler drin, der bei der längeren Wartezeit nur seltener auftritt.

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Bascom braucht für BitVarable ein ganze Reihe Instruktionen,
    http://www.rn-wissen.de/index.php/Ba...de#Bitvariable
    d.h. wenn Hauptschleife u. ISR konkurrenzierend damit werken, musst du in der Hauptschleife das ganze mit dis- u. enable einrahmen.

    Bei zu langem "disable interrupts" kann es allerdings passieren, dass ISR-Ereignisse verschluckt werden,
    sprich, die Unterbrechung muss kürzer sein als die zeit zwischen zwei Interrupts, is aber logo.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

Ähnliche Themen

  1. String-Variablen mit RP6?
    Von RobotMichi im Forum Robby RP6
    Antworten: 9
    Letzter Beitrag: 14.01.2010, 18:04
  2. Variablen eingeben?
    Von robob im Forum Robby RP6
    Antworten: 24
    Letzter Beitrag: 17.01.2008, 17:55
  3. Variablen Typ ???
    Von Mr-400-Volt im Forum Software, Algorithmen und KI
    Antworten: 10
    Letzter Beitrag: 01.01.2007, 17:36
  4. Attiny12 und Variablen
    Von Furtion im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 19
    Letzter Beitrag: 27.02.2006, 19:36
  5. Variablen
    Von Xeus im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 10
    Letzter Beitrag: 24.05.2005, 16:50

Berechtigungen

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

LiFePO4 Speicher Test