Forum: Mikrocontroller und Digitale Elektronik Interrupt für serielle Kommunikation mit Hitachi SH7760


von miower (Gast)


Lesenswert?

Hallo,

ich programmiere einen Hitachi-Prozessor SH7760. Für die asynchrone
serielle Kommunikation (scif) möchte ich vom Polling auf Interrupts
umstellen.
Ich bin mir unsicher, wie ich die Initialisierung und die
Einsprungadressen zu handhaben habe. Ich habe fast alle codes in C für
QNX geschrieben (einiges auch in assembler).
Die ISR ist wieder kein Problem. Das sollte klappen.

Leider ist im Netz außer dem Manual nicht viel zu finden...

von Michael (Gast)


Lesenswert?

Machts Du denn sonst keinen Interrupt auf dem Teil ?

Generell muß man dem Interrupt-Controller den Vector und die Priorität
der ISR mitteilen und dann hierzu den Interrupt freigeben. Aber das
steht doch alles im HW-Manual !(?)
Bei den H8-Typen von Renesas muß man unbedingt auch eine ISR für
fehlerhafte Übertragung aktivieren. Sollte beim SH vermutlich auch so
sein. Wie weit bist Du denn mit Deiner Routine ?

von miower (Gast)


Lesenswert?

Es handelt sich um eine startup-routine, in der bisher kein Interrupt
verwandt wurde.
Die anderen Programmteile (Hauptprogramm) stehen mir noch nicht zur
Verfügung.

Mittlerweile habe ich aber eine andere Harewaremanualausgabe gefunden,
in der alles steht (1343 Seiten). (welche register, adressen etc.)

ich denke jetzt komme ich voran...war nur ein rtfm problem

von Michael (Gast)


Lesenswert?

Und was machts Du mit dem Edelprozessor, wenn's nicht geheim ist ?

von miower (Gast)


Lesenswert?

implizite antwort. geheim... sorry
im speziellen geht es bei mir um nen startup-self-test mit
automatischer übermittlung und ausführung der testsoftware. was
hinterher passiert...

von Patrick Markl (Gast)


Lesenswert?

Hallo miower,

so wie ich das verstehe, möchtest Du den Test durchführen bevor QNX
gestartet ist? Sowas habe ich auch mal gemacht, allerdings mir wurde
von den QNX Leute davon abgeraten, da man den Interrupt Controller dann
selber komplett programmieren muss. Dieser wird dann irgendwann von QNX
initialisiert und Deine Einstellungen sind weg, es gab auch ein Problem
mit der Umschaltung auf virtuelle Adressen (weiß ich aber nicht mehr
ganz genau)

Wenn Dein Test läuft, nachdem QNX oben ist, ist die Sache trivial. Dann
musst Du Dich einfach in den Interrupt einhängen, QNX sagen, dass es
diesen freigeben soll und drauf warten, dass er zuschlägt.

Gruß
Patrick

von miower (Gast)


Lesenswert?

wie soll es auch anders sein: ich will den test VOR qnx ausführen,
allerdings brauche ich die interrupts nur für das einmalige laden der
test-software. also ist es mir egal, ob qnx später alles zurücksetzt.
das problem der adressierung kommt wahrscheinlich noch. ich werde
sehen. nur die programmierung des interrupt controllers ist gerade mein
akutes problem. aber ich bin dran.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.