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...
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 ?
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
Und was machts Du mit dem Edelprozessor, wenn's nicht geheim ist ?
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...
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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.