www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik M16C28 Key interrupt


Autor: Ralph Stib (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe momentan ein Problem mit dem Renesas Controller M16c28 und
hoffe, dass mir wer weiter helfen kann.

Ich bin gerade dabei einen Key input interrupt zu implementieren. Aber
es funktioniert leider nicht. Ich habe die Port Pins P10_4...P10_7 als
Eingänge deklariert, habe im KUPIC Register die Priorität gesetzt und
eine entsprechende Interrupt Routine habe ich auch geschrieben. Nur
leider löst der Interrupt nicht aus. Am entsprechenden Port wird ein
Wechsel von High auf Low erzeugt.

Wenn ich im KUPIC Register das Interrupt request bit setzte, springt
das Programm direkt in meine Routine, was bedeutet, dass meine Routine
gefunden wird. Nur wird kein Interrupt ausgelöst, wenn ich einen
Wechsel von high auf low erzeuge...

Autor: Daniel W. (danila)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Ralph,

danke für den Tipp mit dem KI Interrupt, hat dann sofort geklappt :)

Kannst du mir vielleicht noch paar Tipps zum I2C Bus geben?
Und zwar wie stelle ich den Bus auf 100kHz ein? Bei dem externen 3,68
MHz Quarz, komme ich mit der Rechnung aus dem Datenblatt auf 76kHz.

Oder muss ich den onChip-Oscillator verwenden und davon die Frequenz
für I2C ableiten?

Danke voraus.

Autor: Viktor Braun (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Ralph,
habe genau das selbe Problem :(....
Konntest du es schon lösen ?

Autor: Rudi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Hallo Ralph,
>>habe genau das selbe Problem :(....
>>Konntest du es schon lösen ?

wenn er es nach fast 3 Jahren noch nicht gelöst hat, dann schafft er es 
jetzt auch nicht mehr :-)

Beste Grüße

Rudi

Autor: Timo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mich würde die LÖsung aber auch mal interessieren, denn bei mir ist 
genau das Selbe...

Ich habe eine key_ISR geschrieben und vom StarterKit den Port, welcher 
auf den Taster geht als Eingang deklariert,. Dort liegt ein High Signal 
an, solange der Taster nicht betätigt wird. Die Priorität ist auch 
gesetzt...
Wenn ich den Taster betätige (PortPin: High --> Low) dann passiert 
nichts.
Wenn ich manuell das IR_kupic auf 1 setze, dann springt er in die 
Routine ...

Ich frage mich einfach was noch fehlt!

Gruß

Autor: Daniel Wiese (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ist zwar schon lange her und ich habe auch keine Hardware mehr, um es 
testen zu können, aber ich habe hier noch Code von einem Test...

Bin mir auch nicht sicher was davon zu KI gehört, da bei dem Test auch 
der AD Wandler getestet wurde...
int main()
{
...
  /* Port 10 Pins 5,4,3 as Input*/
  PD10 = 0xC7;
  __disable_interrupt();
  /* set the IFSR20 Bit */
  IFSR2A |= 0x01;
  /* enable the KI interrupt / set the level */
  DMA0IC = 0x02;
  __enable_interrupt();
...
  while(1){
    /* necessary to access some ports */
    PRCR = 0x04;
    PACR = 0x02;
  ...
  }
}

Autor: Timo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
weiss leider nicht was mit pacr gemeint ist, finde ich in der m32c 
define liste auch nicht
gruß

Autor: Daniel Wiese (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habe in meiner .typ Datei das hier stehen:

/* Pin assignment control register */
#define PACR 
(0x25d)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.