Event Router, Arm, Register nicht beschreibbar

OP #3664668
Lesenswert?

Hi Leute,

ich verzweifel solangsam dabei ein EXT_Interrupt für eine Tastatur 
einzurichten.
Hier meine Init dafür.
1
void atkeyb_init(void)
2
{
3
  inpt = kb_buffer;// Initialize buffer
4
  outpt = kb_buffer;
5
        DWORD regVal;
6
        static DWORD test, mu,du,er;
7
  atkeyb_buffcnt = 0;
8
  GPIO2_DR&=~(1<<KEYB_DATA_PIN);     //input
9
        GPIO2_DR &=~(1<<KEYB_CLOCK_PIN);   //Input
10
  //KEYB_DATA_PORT&=~(1<<KEYB_DATA_PIN);
11
        //TO-DO: Setting up event....
12
        ER_APR &= ~(1<<3);  // active LOW -> falling edge 
13
        ER_ATR |=(1<<3); // event is latched-
14

15
        SFSP2_7 = (1<<1)|(1<<2)|(1<<3); //Function 2: EXT3 ;Used Pull up
16
        SFSP2_6 = (1<<2)|(1<<3);        //use intern pullup
17
        
18
        ER_INT_CLR = 0x3FFFFFF;  // Clear all Interrupt-Flags
19
        ER_MASK_CLR = 0x3FFFFFF; //Clear all masks
20
  
21
        install_irq( EVT_INT, (void *)EXT_INT_3_Handler, 0x0A );
22
        EnableIntReq_IRQ( EVT_INT, ACTIVE_LOW, 0x0A );
23
        ER_MASK_SET |= (1<<3);  //activate EXT_Int 3 
24
        
25
        
26
        regVal = ER_PEND;
27
        mu=ER_APR;
28
        du=ER_MASK_SET;
29
        er=ER_MASK_CLR;
30
        
31
        flag.ascii=1;
32
        return;
33
}

Folgendes passiert: Programm springt dauerhaft in EventHandler Routine. 
Les ich das RSR Register aus, sagt er mir, der Grund für den Interrupt 
ist der VIC_Vector... logisch aber eigenltich sollte nur EXT_Int 3 
aktiviert sein.

Les ich die Variablen regVal,mu,du,er (also die Register) direkt nach 
der Beschreibung aus, zeigt mir "du,er" dauerhaft die 0.. Als würde ich 
Sie nicht beschreiben, dass wiederum erklärt, warum durch mein EXT_int3 
kein Int ausgelöst wird, aber WIESO kann ich Sie nicht beschreiben? 
Adressen stimmen...

Falls ich die flankensteuerung des EVT-Routers auf active High stelle, 
passiert garnichts.. -> sprich springt nie in Interrupt...

Bin solangsam am Ende, finde nichts im User Manual, dass mir verrät, 
warum ich die Register nicht beschreiben kann...

Irgendeiner eine Idee?

Dank euch vielmals ;)
OP #3664703
Lesenswert?

ist ein LPC2919, hab ich total vergessen zu schreiben. Unterschiedlich, 
erstemal soll er auf die fallende Flanke triggern. Dann, wird getauscht, 
auf steigende, sodass ich weiß, wann das nächste Bit kommt.

In wie fern sind timer besser geeignet? das Clock signal gibt doch die 
Tastatur vor, in wie fern hilft mir da ein timer?

es ist eine TS2 Tastatur

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren