mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Renesas M16C 30626FJPGP - Code in BLOCK A


Autor: Christopher Schirner (schinken)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich hätte da mal ne Frage, hat von euch schonmal Code im Block A gelinkt 
und ausgeführt?

Ich hab meinen Code an Adresse 0x0f000 gelinkt - er hat ihn hochgeladen, 
aber ausführbar war er irgendwie nicht...

Hab ich vielleicht irgendetwas übersehen, oder geht es wirklich einfach 
nur nicht?


MFG
Schinken

Autor: Obelix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es müsste eigendlich gehen, aber wie siehts mit den Vectoren knapp 
unterhalb von 0x0fffff aus? sind die auch richtig programmiert? Hast du 
den Flash mal ausgelesen, und geschaut ob dein Programm wirklich an 
Adresse 0x00f000 liegt?

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich nutze auch den Block A, allerdings nicht für ausführbaren Code, 
sondern für ROM-Konstanten, auf die der Prozessor viel einfacher 
zugreifen kann als auf Memory oberhalb von 0x0FFFF. Allerdings ist die 
Programmierung etwas pfriemelig, ich habe bisher noch keinen Programmer 
gefunden, der Block A programmieren kann. Ich musste den Flasher 
entsprechend modifizieren. Ausserdem musste noch das Bit PM10 auf 1 
gesetzt (Block A enable) werden, für genaueres guck mal ins Datenblatt!

Gruss
Mike

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich kann mich noch dran erinnern, daß bei Verwendung der unteren Blöcke 
die Speichererweiterung eingeschaltet werden muß. Damit wird RAM und ROM 
auf die maximal verfügbare Größe erweitert.

Gruss

Frank

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier zur Info mein Initialisierungscode für die Processor-Mode Register

Gruss
Mike

mov.b  #02h,PRCR    ;unprotect PM registers
mov.b  #0C1h,PM0    ;set memory expansion mode
mov.b  #02h,CSR    ;enable CS1, no wait
mov.b  #0Fh,PM1    ;set reserved area expansion, CS1 address space to 12 
bits, activate block A
bclr  PRC1      ;reenable protection

Autor: Obelix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Liegt dein Init-Code denn außerhalb von Block-A?

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das muss so sein, da der Block A beim Reset deaktiviert ist (PM10 
ist per default 0). Ein direkter Start in Block A ist m.W. daher nicht 
möglich.

Gruss
Mike

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.