www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Startprobleme mit C164CI und Keil uVision4


Autor: Marko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo liebes Forum,

kurz zu meinen technischen Randbedingungen:

(1) Hardware: SAF-C164CI-8EM (StartKit "C-Control II", 1KB-RAM (!!!))
(2) IDE: Keil uVision V4.00a
(3) Flasher: Infineon Memtool 3.4.1 via COM1

Problembeschreibung:

Ich würde sehr gerne das mir vorliegende StarterKit dafür verwenden, um 
eine Schrittmotorenanwendung zu realisieren (uC für Treiber plus 
Einlesen von Encoder). Nun habe ich Schwierigkeiten, einfachste Programm 
(z.B. Bitwackeln an P1H.0) auf dem Target nach erfolgreichem Kompilieren 
mit uVision und erfolgreichem Flashen mittels Memtool (BOOT-Modus, 
MemoryDevice: OnChip OTP ROM) nach Reset zum Laufen zu bekommen.

Habe ich denn noch etwas Grundlegendes übersehen? Meine Einstellungen 
bei Keil lauten wie folgt:

(I) Device: C164CI (... 2K(4K) Bytes On-chip RAM ...)
(II) Target: 20MHz, Memory Modell=Small, OS=None, 
ExternalMem(RAM)=0x80000-0x8FFFF
(III) Output: HEX-386
(IV) L166 Locate: Use Memory Layout from Target Dialog (*)

Ich sehe eine Diskrepanz zwischen den 1KB-RAM (Handbuch Fa. Conrad) und 
den 2KB-RAM von Keil. Was ich nun schon versucht habe, ist unter (IV) 
den Haken zu deaktivieren und die Speicherverteilung selbst vorzunehmen 
(Quelle: Quick Start for the C164CI Starter Kit):

NCODE (0x200-0x7FFF),
NCONST (0x4000-0x7FFF),
NDATA (0xF600-0xFDFF),
NDATA0 (0xF600-0xFDFF)

Fragen hierzu:
- Sind die oben genannte vier Bereiche valide und ausreichend für mein 
Target? Was ist z.B. mit SDATA, etc.?
- Welchen Bereich umfasst dann die C166 Variable Init Tables (Default: 
0x000000 - 0x007FFF)?

Des Weiteren habe ich eine Frage zum Monitoring: Unter...

(V) L166 Misc: Reserve=0x8-0xB, 0xAC-0xAF

habe ich Speicher für den Monitor reserviert (Quelle: Quick Start for 
the C164CI Starter Kit). Passt diese Einstellung zu meinem speziellen 
Target? Beim Kompilieren in Keil gibt es jedenfalls keine Fehlermeldung. 
Wenn ich nach (\Keil\C166\Monitor\README.txt) mir spezifische *.BOT und 
*.MON (angepasster Speicherbereich für DATA_START=0E900H und 
CODE_START=0EB00H plus angepasste Startadressen für ADDRESSX) erzeuge, 
bekomme ich jedoch beim Debuggen die Fehlermeldung "MONITOR ERROR 3: 
CANNOT WRITE TO ADDRESS E7AAAA", welche Adresse auch nicht mehr im 
Speicherbereich liegt. Woher kommt diese Adresse?

Bin leider so langsam mit meinem Latein am Ende... bitte um Eure Hilfe.

Danke und Grüße soweit aus KA,
Marko

Autor: Guido (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Leider kenn ich µVision nicht, für diejenigen die es kennen wäre
sicher die Version interessant, das gibt es ja schon fast 20 Jahre.
Sicher versteht aber Keil mehr vom Thema als Conrad, weswegen ich
die Grundeinstellungen nicht ändern würde.

Der C164 hat knapp 2 kB IRAM ab F600 für GPRs, Stack und
bitadressierbaren Bereich. Für ein einfaches Programm sollte dieses
auch für Variablen reichen. Weiterhin hat er 2 kB XRAM ab E000. Das
muss nach dem Reset erst freigeschaltet werden, was der Startupcode
von Keil sicher selbst macht.

Ist bei µVision kein Simulator dabei? Die C16x haben ein paar
Fallstricke, die man leicht erkennt, wenn man ein kurzes Programm
erstmal im Simulator durchsteppt.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.