- LiTime Speicher und Akkus         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 23

Thema: Asuro: PollSwitch im Interrupt betrieb

  1. #11
    Neuer Benutzer Öfters hier
    Registriert seit
    09.01.2007
    Beiträge
    7
    Anzeige

    Powerstation Test
    Hab schon gelesen, dass ein paar Leute ihn ausgebaut haben, due Lösung hat mir aber nicht so gut gefallen. Jetzt lade ich ihn einfach über den Interruptpin, das funktioniert ganz gut.

    Ich verwende bisher noch die alte asuro.c, hol mir ersmal nur Anregungen aus der neuen, und bastel mir dann zusätzliche source-files für die unrterschiedlichen anwendungen.

  2. #12
    Benutzer Stammmitglied
    Registriert seit
    23.08.2007
    Beiträge
    61
    Heißt das also, dass man in der original asuro.c in PollSwitch() die Zeile mit SWITCH_OFF vor dem return durch ein SWITCH_ON ersetzen muss? Genau das bewirkt doch, dass der Pin per Pullup hochgezogen wird, oder?

    Gruß farratt

  3. #13
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.062
    wie kommst du darauf?
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  4. #14
    Benutzer Stammmitglied
    Registriert seit
    23.08.2007
    Beiträge
    61
    Naja, Mooses78 hat geschrieben, dass das Problem darin liegt, dass der Pin nach der Messung auf 0 ist und erst langsam über das RC-Glied wieder geladen wird. Das bedeutet, dass eine StartSwich()-Anweisung einen Interrupt auslöst, wenn sie direkt hinter einem PollSwitch() ausgeführt wird.
    Dieses Verhalten ließe sich vermeiden, wenn man den Pin manuell auf high legt und genau das macht doch SWITCH_ON, oder?
    SWITCH_ON steht für PORTD |= 1<<PD3.
    Und das bewirkt doch, dass der Pin mittels internem PullUp auf high gezogen wird oder?
    Außerdem hab ich seit dem ich das gemacht hab keine Probleme mehr; es funktioniert alles bestens. Auch bei komplexen Programmen mit viellen PollSwitch-, StartSwitch- und StopSwitch-Anweisungen.

    Gibt es denn noch eine andere Lösung? (Ich meine Lösung, nicht Workaround )

    Gruß farratt

  5. #15
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.062
    das klingt sehr vernünftig, da bin ich nicht drauf gekommen. recht hast du. aber verfälscht das dann nicht die pollswitch werte bei der nächsten messung durch die zusätzliche spannung über den pullup?
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  6. #16
    Benutzer Stammmitglied
    Registriert seit
    23.08.2007
    Beiträge
    61
    also wie gesagt. bei mir funktionierts. Außerdem wird die Anweisung SWITCH_ON am Anfang jeder PollSwitch()-Anweisung ausgeführt. Das bedeutet, dass der Pullup bei jeder Messung sowieso im Spiel ist.
    Aber denk ruhig noch ein bisschen drauf rum. Die Entwickler der original-Lib haben sich doch bestimmt was dabei gedacht, am Ende von PollSwitch SWITCH_OFF und nicht (wie von mir vorgeschlagen) SWITCH_ON zu schreiben.

    Gruß farratt

  7. #17
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.062
    das ist anzunehmen, ja... evtl um ein kleies bisschen strom zu sparen, denn über den pullup fließt ja dauerhaft strom nach masse. aber ob das alles ist.... o0 diese pullups waren doch einige kΩ groß, dementsprechend könnte man nur einige µA sparen. kann mir nicht vorstellen dass das alles ist, wenn ich ehrlich bin.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  8. #18
    Benutzer Stammmitglied
    Registriert seit
    23.08.2007
    Beiträge
    61
    kannst du das vielleicht auch mal testen?

  9. #19
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.062
    mein asuro ist gerade in mehr teile zerlegt, als in dem bausatz waren... aber allein von der theorie her wäre es so. schalte ein multimeter zwischen batterien und asuro, und probiere es aus.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  10. #20
    Benutzer Stammmitglied
    Registriert seit
    23.08.2007
    Beiträge
    61
    Könnte man sagen, dass es sich bei der Geschichte um einen Bug handelt?
    Wenn ja, dann müssten sich doch jetzt auch mal die Leute, die die Lib pflegen dazu melden. So wies im Moment ist, kann mans jedenfalls nicht lassen.
    Ich glaube jedenfalls eine Lösung gefunden zu haben, aber das müsste man eben groß angelegt testen. Ich werde mal ein kleines Programm zum testen hochladen.

    Gruß farratt

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

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

LiTime Speicher und Akkus