- Labornetzteil AliExpress         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 26

Thema: Interruptprobleme

  1. #11
    1hdsquad
    Gast
    Anzeige

    Powerstation Test
    Aha. Aber das Compilerdirektiv kann ich ja aendern...

  2. #12
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Beiträge
    2.731
    Muss ich gleich noch nachlegen,
    im Programm wird INT1 für den Interrupt konfiguriert, und PortD.2 auf Eingang gestellt,
    es schaut aber so aus, das INT1 auf PortD.3 ist, bzw. auf PortD.2 ist INT0 !

  3. #13
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.05.2004
    Beiträge
    133
    das mag sein,daß es nicht der gleiche uC is,aber was spielt das für eine rolle bei diesem programm?

    er braucht doch nur seinen controller einzutragen und compilieren.

    mag sein,daß ich das übersehen hab,daß der pin nicht dem interrupt entspricht.
    aber es ging um die funktion des interrupts selbst,und die ist ja jetzt vorhanden.

    ich sag mal so:
    mir hat bisher niemand meinen code soweit verändert daß die fehler beseitigt sind bis auf ein paar kleinigkeiten.
    mir hat nichtmal jemand geantwortet was mein problem mit dem simulator betraf.

    ich denke dem fragesteller is recht gut geholfen worden.
    aber ich denke mit diesen beiden änderungen (delay zeit auf 333 erhöhen,wie gewünscht nicht vergessen) ist dieses problem gelöst.

    @linux 80: vielleicht kannst du mir ja helfen.
    wieso gehen die pins 6 und 7 von portd im simulator nicht low wenn die zuweisung pind.6 = 0 zur anwendung kommt?
    übertragen im mega 8 funktioniert mein code einwandfrei.

    MfG,
    -->Mr.G.

  4. #14
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Beiträge
    2.731
    Also einen Simulator hab ich noch nie Ernsthaft verwendet, ich mach das immer auf Hardware, man hat ja 10000 Versuche frei

    Dann schau ma mal,

    der erste Wurm der mir auffällt, ist, dass eine Do...loop-schleife um das komplette Programm rumgeht,
    wenn das Programm anfängt, kommt der AVR also schon an der 3. Zeile nach dem ersten Do an ein Return,
    wo ein AVR bei einem Return hinspringt wenn garkein aufruf da war weiss ich jetzt aber auch nicht, zumindest gibts ja kein zurück !

    Die Goto's in der ISR machen sich auch nicht gut, denn zum beenden einer ISR wird ein bestimmtes Return gebraucht, das nur am ende der ISR steht, also erstmal die Goto's auf Gosub's ändern.

    Und so lange Warteschleifen innerhalb einer ISR ist auch nicht gut, kommt allerdings auch auf den Einsatz an, wenn der AVR sonst nix macht, kann mans noch verkraften, allerdings könnte man da auch den Eingang pollen, da der AVR ja sonst nix macht, und so schnell genug ist einen Pegelwechsel zu erkennen.

  5. #15
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.05.2004
    Beiträge
    133
    gut analysiert,aber es geht mir ja auch nicht um dieses programm hier.

    ich hab ja gesagt,daß er die sprungmarken nicht in der hauptschleife sondern erst hinten ran hängen soll.

    übrigens hab ich auch erwähnt,daß ich das regfile geändert hab,weils bei mir nicht existiert.
    wenn du dir mein programm ansiehst wirst ja sehen,daß ich keine sprunkmarken verwende.
    ich habs so ziemlich vereinfacht und übersichtlich gestaltet.

    es geht um den thread "probleme mit int0 und den restlichen pins von port d"

    aber lassen wir das mal beiseite,der 1hdsquad wird sich melden obs funkt oder nicht,nehme ich mal an.

    mein code funktioniert ja wie gesagt wie gewünscht.
    nur der simulator schaltet die pins von portd bloß einmal auf high,aber nie wieder auf low,egal wieoft ich im code dazu auffordere.
    im controller funktioniert es aber einwandfrei.
    und das problem tritt nur auf,wenn ich eben auch den int0 verwende.
    lasse ich diesen weg passts auch im simulator.
    und mich würd interresieren warum das denn so ist.
    vielleicht sollt ich auch einfach mal mein Bascom updaten.

    MfG,
    --> Mr.G.

  6. #16
    1hdsquad
    Gast
    Mir ist klar, dass ich den richtigen Chip eintragen muss, geholfen fuehle ich mich schon
    MFG

  7. #17
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.05.2004
    Beiträge
    133
    hast es schon versucht?

    MfG,
    -->Mr.G.

  8. #18
    1hdsquad
    Gast
    Jepp, es loift...
    Allerdings kann durchaus eine halbe Sekunde nach dem Drücken des Tasters und der Reaktion vergehen. Ich werde jetzt noch PWM einbauen, 5x sollte doch kein Problem für den kleinen AVR sein?!
    MFG

  9. #19
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.05.2004
    Beiträge
    133
    die halbe sekunde kommt von den verzögerungen.

    da solltest du einen timer verwenden wenn du das vermeiden möchtest.

    5x was? 5 unterschiedliche pwm signale?

    MfG,
    --> Mr.G.

  10. #20
    1hdsquad
    Gast
    Ja, 5 LED-Gruppen. Ich dachte, der Interrupt wird SOFORT ausgeführt
    Blöder Name, eine Unterbrechung, die nicht unterbricht...
    Beim Blinken werden alle LEDs an/aus gedimmt, das ist ja auch kP. Aber beim Lauflicht sollen unterschiedliche Abfolgen der einzelnen LEDs gedimmt werden, also 5xPWM.

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

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

Labornetzteil AliExpress