Forum: Mikrocontroller und Digitale Elektronik Intel 80c196KC20


von Max W. (mo0oxx)


Lesenswert?

Guten Morgen,
Bin am aufarbeiten eines Programms welches für einen Intel 80C196KC20 
geschrieben wurde und jetzt hab ich dazu einige Fragen.

Zuerst mal das große Problem.
Das Programm wurde im laufe mehrerer Jahre immer wieder von einer 
anderen Person erweitert und dann wieder für eine Ewigkeit nicht 
angefasst.
Ich weiß nicht wieso diese Leute keine Kommentare geschrieben haben aber 
das Programm ist sehr schlecht dokumentiert und ich will jetzt bevor ich 
weiter schreibe den Sourcecode durchgehen und Kommentare schreiben um 
das ganze ein wenig verständlicher zu machen.

Aber die erste Hürde ist die, ich finde weder die Initialisierung eines 
externen Interrupts noch die ISR für diesen.

Hat einer eine Idee nach welchen Codeblöcken ich beim Intel suchen muss?
Hab bis jetzt nur Erfahrungen mit einem STM32F4-Discovery Board.

Meine zweite Frage wäre, kann ich mit AtlemStudio auch ein Projekt mit 
dem Intelprozessor machen? Da ich vom Programm nur das makefile und die 
einzelnen .c und .h Dateien habe.

Wenn ihr noch weiter Informationen braucht bitte einfach schreiben.

MfG Max

PS: Ich hab da eine Idee zu der ISR aber ich bin mir nicht sicher.
Der Code:
#pragma interrupt (tovf_isr = TOVF_INT)
void (tovf_isr(void)
{
   .
   .

Und was genau kann die Codezeile mit dem #pragma interrupt?

: Bearbeitet durch User
von R. F. (rfr)


Lesenswert?

pragma ist eine Anweisung für den Compiler. Sie scheint in diesem Falle 
einen Interrupt umzubenennen. Das sollte man im Compilerhandbuch 
nachschlagen. Für den Chip dürfte es ausser dem Intelcompiler nichts 
weiteres gegeben haben.

Robert

von Max W. (mo0oxx)


Lesenswert?

Ok also muss ich herausfinde was genau der Compiler mit dieser Anweisung 
macht?
Ich weiß über den Compiler nur das wir die .hex Datei mit einem 
Dos-Compiler erstellen.

MfG Max

von Max W. (mo0oxx)


Lesenswert?

Ok hab jetzt in einem Compilerhandbuch gefunde dass der Code
#pragma interrupt (xxx = y)

Die Funktion xxx zum Interrupthandler des Interrupts mit der Nummer y 
macht.

Danke für den Tipp mit dem Compilerhandbuch.

MfG Max

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.