Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Interrupt Kategorie: Programmierung (von André H. - 17.04.2004 14:19)
Als Antwort auf Re: Interrupt von thomas - 12.04.2004 23:13
Ich nutze:
C-Control II Unit, C164CI-ControllerBoard, CC2-Application-Board, CC2-StarterBoard, CC2-ReglerBoard, OSOPT_V2, OSOPT V3.0
Hallo Thomas,

> 1.)
> Es fehlt das Beispiel für die �bergabe von mehreren Variablen.
>
> 2)
> Es fehlt ein Hinweis darauf, welche Register verwendet werden dürfen und
> welche Register von den Routinen "POP_R4" und "PUSH_R12" verändert werden.

Ich werde einmal, wenn ich wieder etwas mehr Zeit hab', versuchen etwas für
den ASM-Bereich zusammenzustellen, damit jeder in den GenuÃ? der einfachen
Parameterübergabe kommt. :-)
Im Prinzip ist die Parameterübergabe sehr einfach.
Die verwendeten Register bei Aufrufen von Systemroutinen muÃ? man Anfangs etwas
mühsam aus dem Listing des Disasm.OS herauslesen.
Bei den Push und Pop-Routinen für Integer und Long stehen diese, wie Du es
schon gefunden hast, z.B. in sys0001.asm.


> Ein Beispiel dass mich auch getroffen (und leicht genervt) hat, ist das Thema
> des richtigen OS und der notwendigen Module. In einem Thread das dieses Thema
> betraf, wurde lapidar sinngemä� der Hinweis gegeben:
> "SchmeiÃ? alle orignalen Module weg und verwende nur die Neuen aus diesem Forum."

Im Prinzip ist es sehr einfach:
Nachdem die IDE installiert ist, sollte man das aktuelle Service-Pack installieren.
Die alten Module darf man vorher nicht löschen. Man mu� beim entpacken des SP
nur bestätigen alle alten Dateien zu überschreiben.
Ich hatte nie geschrieben, da� man die alten Module einfach löschen soll.
Auch beim Service-Pack2 heiÃ?t es, daÃ? man dieses einfach in das Verzeichnis der IDE
entpacken soll.
AnschlieÃ?end sollten noch alle Module, welche nach dem letztem Service-Pack erschienen
sind, aktualisiert werden. Welche Module neuer als das letzte SP sind, findet man sehr
einfach über die News auf der Hauptseite von CC2Net.de heraus.


Gut, seit dem SP2.0 gab es schon einige neue Modulversionen, und leider bin ich noch nicht
dazugekommen das SP upzudaten. Dies werde ich jedoch machen sobald noch ein paar
weitere (wichtige) Module upgedatet sind.(z.B. mem.c2, str.c2, strx.c2 bekommen ein
paar ASM-Treiber. Auch wird es ein Modul flash.c2 als kleine Ã?beraschung geben. :-)  )
Leider komme ich vor lauter Arbeit nicht zügig voran, da mir die Arbeit schon seit längerem
etwas über den Kopf wächst, und ich daher Prioritäten setzen mu�.
(selbst das Schlie�en von CCTools für zwei Wochen hat mir nicht die nötige Zeit gebracht, :-(
da ich in dieser Zeit mit einem grö�erem externen Projekt beschäftigt war.
Als Ein-Mann-Betrieb habe ich es z.Zt. nicht leicht mit der Arbeit (CC2Net.de, CCTools & externe
Projekte) nachzukommen. :-(   )

 
> Eine Liste der zu einer OS-Version gehörenden Module (incl. Versionsstand) und
> die zugehörigen "modules.txt"-Dateien wirken da wahre Wunder. Au�erdem ein Hinweis
> auf die notwendige Reihenfolge der "Init"-Funktionen einzelner Module wäre
> hilfreich. Dann mu� nicht jeder die Module nach den Abhängigkeiten durchforsten.

Also, die Module sind i.d.R. unabhängig vom verwendeten OS.
Man kann alle Module auch mit allen OS-Versionen verwenden, sofern nichts anderes
im Modul-Header steht.
Bei den Modulen, welche sys0001.hex und capture.hex nutzen, gibt es durch
Auskommentieren von Konstanten die Auswahlmöglichkeit für OSOPT V3.x,
in welchem sys0001.hex und capture.hex implementiert sind und nicht extra geladen
werden müssen, und den hex-Dateien in Segment 3, welche bis OSOPT_V2 extra geladen
werden müssen.
Davon betroffen sind die Module i2c.c2, cap.c2, lcdext.c2 und stports.c2.
Prinzipiell sollte auch die aktuellste Version OSOPT V3.0 benutzt werden.
OSOPT_V2 sollte man nurnoch verwenden, wenn man die Systemausgaben auf
dem Mini-LCD der "alten" CC2 Unit benötigt bzw. haben will. Bei dern neuen CC2 NV
und bei der Station II kann ich nur empfehlen OSOPT V3.0 empfehlen.

Die Liste der aktuellen Module befindet sich unter Module & Funktionen.
Hier steht auch immer die Versionsnummer und bei der Detailansicht auch
das Release-Datum dabei.
Grundsätzlich sollten immer die neuesten Modul-Versionen benutzt werden, egal mit
welchem OS man arbeitet.
Ein zweigleisiges Fahren mit Modulen will ich vermeiden.

Ich habe vor, nachdem ich es hoffentlich diesen Monat noch schaffe das SP2.1 zusammenzustellen,
ein eigenes Setup für die IDE zusammenzustellen, inwelchem der letzte Modul/Datei-Stand
implementiert ist.
So würde das bis jetzt anfängliche Updaten wegfallen.
Ich mu� hierfür nurnoch das rechtliche klären, damit ich nicht seitens Conrad etwas
auf die Finger bekomme. :-)


> Ansonsten finde ich aber die Unterstützung der Anwender der C-Controll-II durch
> dieses Forums richtig gut; und hoffe es bleibt auch so.
 
Ich habe nicht vor CC2Net.de aufzugeben. :-)


MfG André H.



Antworten bitte nur ins Forum!
Fragen per EMail auf Forum-Postings werden nicht beantwortet!

Das macht meine Heizung gerade


    Antwort schreiben


Antworten: