-         

Ergebnis 1 bis 6 von 6

Thema: Ablauf der IRSs mit SIGNAL

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    22.11.2006
    Beiträge
    7

    Ablauf der IRSs mit SIGNAL

    Anzeige

    In dem AVR manual wird SIGNAL(signame) definiert als:

    -------
    6.25.2.3 #define SIGNAL(signame)

    Value:

    void signame (void) __attribute__ ((signal)); \
    void signame (void)

    #include <avr/interrupt.h>

    Introduces an interrupt handler function that runs with global
    interrupts initially disabled. This is the same as the ISR macro.
    ------

    1.Heißt das soviel, dass für IRSs mit SIGNAL(signame) GIE nicht gesetzt
    sein brauch um die IRS zu entern oder was ist mit "initially" gemeint?

    2.Wenn in einer signal IRS0 eine andere Signal IRS1 enabled wird, dann
    wird
    normalerweise erst wider in die Mainmode zurückgewechselt, bevor IRS1
    geentert werden?

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    22.11.2006
    Beiträge
    7
    Hat einer den Plan mit signal?

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Alter
    48
    Beiträge
    2.731
    Hallo,
    man schreibt ISR nicht IRS,
    denn das kommt von Interrupt Service Routine, nicht Interrupt Rountinen Service

    Mit SIGNAL wird nur die Funktion angelegt, und in die entsprechende Adresse der Interrupt Vectoren eingetragen.

    Was mit dem global IRQ gemeint ist, wenn ein solcher IRQ aufgetreten ist und die Routine aufgerufen wird, werden alle andern IRQs unterdrückt, also disabled, es kann so kein anderer IRQ dazwischenfunken, auch nicht derselbe nochmal.
    Der AVR "merkt" sich das aber und ruft diese gleich nach dem globalen erlauben der IRQs auf, ausser man löscht die IRQ-flags vorher.

    Wenn die IRQs global von vorn herein schon nicht erlaubt werden, wird diese Routine auch nicht aufgerufen !

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    22.11.2006
    Beiträge
    7
    Danke schön...................

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    22.11.2006
    Beiträge
    7
    Wird beim Verlassen einer Signal IRQ das Global Enable automatisch wieder gesetzt?

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Das wird automatisch von der Hardware gesetzt (egal ob SIGNAL oder nicht).
    Disclaimer: none. Sue me.

Berechtigungen

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