Hallo zusammen, vor einiger Zeit habe ich die Quellen für den M16C-Monitor, der das Debuggen per KD30 erlaubt, von www.m16c.de heruntergeladen (inzwischen gibt es sie wohl nicht mehr). Wegen eigener Anpassungen habe ich mich mit den Quellen auseinandergesetzt und dabei 3 Fehler gefunden, die durchaus Probleme machen könnten: - Es wird nur Platz für 4 Breakpoints reserviert Bei Prozessoren mit mehr (z.B. 30626 mit 8) gibt das Probleme, wenn man mehr als vier benutzt. - Bei Prozessoren mit 15k RAM stimmt der Stackpointer im Monitor nicht. - Eine Byte-Variable wird als Word benutzt. Die Auswirkung der letzten beiden Fehler habe ich noch nicht untersucht. Die eigenen Änderungen hatten übrigens zwei Ziele: - Autostart der Anwendung, wenn ein IO-Pin auf high liegt, das erspart für den 'Bastelanwender' das Flashen der Anwendung ohne Monitor, ist der Pin auf high, wird der Monitor über- sprungen und es geht ohne KD30 los. - Entfernen der Auto-Baudrate-Erkennung Im KD30 gibt es die Möglichkeit, die Verbindung zum M16C über einen TCP/IP-Port herzustellen. In meinem Fall ist das ein XPort Ethernet-zu-Seriell-Wandler. Bei dieser Art des Verbindungsaufbaus fehlen jedoch die 00-Bytes, die zur Baudrate-Erkennung verwendet werden. (Versuche mit einer virtuellen COM-Schnittstelle, die den XPort ansteuert, sind übrigens gescheitert, der COM-Treiber kam in der Startphase aus dem Tritt, warum auch immer) Falls jemand am geänderten Monitor interessiert ist, gebe ich ihn gern weiter. Gruß Jens
Hätte sehr gerne den Code!!! Ich will ich einen Xport an meinen M16c62 anschließen! Wo hast du deinen Xport gekauft?? Danke
Hallo, ich bereite den Code noch etwas auf und veröffentliche ihn dann hier. @Alex: Mein XPort ist von Segor, auf der c't-Platine, sicherlich nicht der günstigste Weg, um an so ein Ding zu kommen. Ich habe noch ein Angebot von www.tcplus.at, das um einiges günstiger ist. Eigentlich habe derzeit ich meinen WiPort im Einsatz, die zweite serielle Schnittstelle des M16C ist dann auch 'versorgt' und das zu erstellende System soll zum Testen in den Garten, da es GPS-Empfang benötigt. Oh, sehe gerade, der WiPort wäre bei www.tcplus.at deutlich günstiger gewesen...Aber die c't-Platine ist hier auch nicht schlecht für den Anfang. Noch ein paar kurze Worte zum KD30 (V.4.10). Die Verbindung per TCP/IP muss direkt in der kd30.ini eingestellt werden: [COMMUNI] IF=2 ... LANPORT=2711 (in hex, seltsam...) IPADDR=192.168.0.3 (die XPort-Adresse) Leider hängt er sich ziemlich auf, wenn es mit der Synchronisation nicht klappt. Passiert aber selten. Den XPort habe ich vorher auf 38400, 8bit, no parity und 2(!) Stopp-Bits eingestellt. Versuche mit höherer Geschwindigkeit sind bisher gescheitert, zumindest beim Flashen. Per WLAN ist das Ganze etwas träger als mit direkter COM-Leitung, funktioniert aber prima. Der oben erwähnte Fehler mit den vier Breakpoints liegt übrigens nicht im Monitor, sondern in der Datei M30626FHP.MCU des KD30. Der Prozessor hat nur 4 Breakpoint-Registersätze, in der Datei steht aber 8. Da scheinen noch weitere betroffen zu sein, wie z.B. der 624. Ich habe die Datei angepaßt, dann ist bei 4 Breakpoints Schluß. Der Monitor folgt, ist fast fertig verschönert, nur noch etwas mehr testen ;-) Gruß Jens
Hallo, anbei jetzt der Monitor mit den oben beschriebenen Änderungen. Über Feedback würde ich mich freuen. Gruß Jens
Hallo, weil er mir beim Aufräumen gerade über den Weg lief: Der Original-Monitor V.2.02.05 ohne meine Ver-schlimm-besserungen. Gruß Jens
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.