www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik M16C62P /RD, /WRL, /WRH


Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!
In memory expansion mode, darfe ich nicht direkt mit den Ports P0, P1, 
P2 und  P3 sprechen. Sie sind für Data und Adressbus reserviert.Wenn es 
jetzt um die Einstellung von READ oder WRITE geht, darfe ich direkt den 
Pin P5_2(/RD) auf 0 und P5_0 ,P5_1 (/WRL/WRH) auf 1 setzen , um ein READ 
Kommando auszuführen?
Gruß
Dennis

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Dennis (Gast)

>In memory expansion mode, darfe ich nicht direkt mit den Ports P0, P1,
>P2 und  P3 sprechen. Sie sind für Data und Adressbus reserviert.

Eben.

>Wenn es
>jetzt um die Einstellung von READ oder WRITE geht, darfe ich direkt den
>Pin P5_2(/RD) auf 0 und P5_0 ,P5_1 (/WRL/WRH) auf 1 setzen , um ein READ
>Kommando auszuführen?

AUA! NEIN! Das macht der Controller allein, und da darf/kann/soll/muss 
man nicht reinpfuschen.

-> Du solltest dich dringend mit den Grundlagen beschäftigen. Deine 
Frage mit er Portkonfiguration sprach schon Bände.

MFG
Falk

Autor: Obelix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum machst du einen neuen Thead auf?

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Siehe Memory Config Bits.
Du kannst den BUS komplett konfigurieren mit samt den Chip Selects (CS) 
und Wait States. Ob er 16Bit breit oder 8 Bit breit sein soll.
Wenn du also auf eine Adresse einen Zugriff machst mit
LDE.B [A1A0],R0L   ;lade 8 bit von A1A0 in R0L
oder
LDE.W [A1A0],R0    ;lade 16 bit von A1A0 in R0
so wird das CS und die RD Leitung automatisch durch das Memoryinterface 
bedient.

gleiches auch beim schreiben
STE.B R0L,[A1A0] oder STE.B R0,[A1A0]

Was bei den M16C und M32C Typen super genial geht ist, du musst nicht 
beachten ob die Adresse gerade oder ungerade ist. Wird halt wenn die 
Adresse ungerade ist bei einem 16Bit angebundenen Speicher um einen 
Zyclus langsamer. Achte auf die Wait und Hold eingänge, sie werden 
benutzt um BUS-arbitration zu ermöglichen. Damit konnst du den Prozessor 
zum stillstand bringen. Weil er auf die Freige des BUSes wartet.

Ich schaue mal in meiner Softwarekiste nach einem geeigneten Demo, was 
ich dann als Dateianhang mache.
Gruß Sascha

Autor: klogang beendet (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
LOL fehlt noch der Hinweis auf Bildformate; wurden zwar keine verwendet 
aber schaden kann es nicht...

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.