mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Externer Speicherzugriff in C (Keil C51)


Autor: Hölscher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Mikrocontroller Freunde

Ich möchte mein 4*16 LCD-Display mit meinem 89S8252-Flash-Board
von Elektror ansteuern.

In der Beschreibung schreibt Elektor: Das LCD-Display ist am Datenbus
ansgeschlossen und belegt den Bereich oberhalb 8000h

8000h Kommando schreiben
8001h Kommando lesen
8002h Daten schreiben
8003h Daten lesen

Wie sieht nun mein C-Quellcode für die Initialisierung aus.
In Assembler habe ich es hin bekommen, nur mit C habe ich da so meine
Probleme.

Auszug aus dem Quellcode:

#define data_write 0x8002;
#define data_read 0x8003;
#define cmd_write 0x8000;
#define cmd_read 0x8001;

void LCDinit(void)   // Display initialisierung
{
    #asm

        lcall Busy
        mov DPTR,#cmd_write
        mov A,#60
        movx @DPTR,A
        lcall Busy

        u.s.w


Wie seiht nun dieser Auszug in C aus.

Mit freundlichen Grüßen
Christian

Autor: Burkhard Zippel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ganz einfach

#define data_write (*((unsigned char volatile xdata *) 0x8002))
#define data_read  (*((unsigned char volatile xdata *) 0x8003))

evt. unnötige viele klammern!

zugriff

data_write= 0x55;
var= data_read;


oder

#define data_write 0x8002;
#define data_read 0x8003;


#define X_BYTE  (unsigned char volatile xdata *) 0)

X_BYTE[data_write]= 0x55;
var= X_BYTE[data_read];

siehe auch Keil hanbücher!

BZ

Autor: Hölscher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die schnelle Antwort.

Jetzt habe ich nur noch ein Problem:
Was muss ich der Keil uVision2 Software einstellen um das Display zum
laufen zu bekommen. Ich verwende diese Software erst seit kurzem.

Mit freundlichen Grüßen
Christian

Autor: Burkhard Zippel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

Beispielprogramme von Keil anschauen und mal in den Handbüchern
"uVision2 Getting Started" -liegt als pdf bei Keil dabei - lesen.

oder

die uV2 Projectfile(s) zur Verfügung stellen.

BZ

Autor: Hölscher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die schnelle Antwort.

Kennt jemand vieleicht das Buch was auf www.C51.de angeboten wird?
(Der Keil C51-Compiler)

Ich finde das hört sich doch ganz gut an oder?

Autor: Tipper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hölscher:

Das sind zwei Bücher, Band1 und Band2.

Diese Bände sind das Standartwerk für 8051er in Verbindung mit
µVision.

Sehr empfehlendswert!

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Solche Bücher sind ja immer schweineteuer.

Daher würde ich sie mir erstmal ausleihen und nicht gleich die Katze im
Sack kaufen.

Bisher fand ich die meisten Mikrokontroller-Bücher nicht besonders
informativ. Oftmals sind das quasi nur die Datenblätter ins Deutsche
übersetzt. Da dabei Fehler auftreten können, nehme ich doch lieber die
englischsprachigen Originale.

Von dieser Webseite hatte ich mir mal das DCF-77 Beispiel angesehen und
war sehr enttäuscht. Es war weder effizient noch brauchbar (wer will
schon 2 Minuten lang seine CPU totlegen). Obs fehlerfrei war, habe ich
daher garnicht erst getestet.


Peter

Autor: Hölscher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank Peter ich habe gerade ein großes Efolgserlebnis mit meinem
LCD-Display gehabt.

Meine Aufgabe ist es eine Steuerung mit einem DS1302 Timekeeper
aufzubauen.

Hast du vieleicht Infos über den genauen Anschluss..

Schöne Grüße Christian

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Meine Aufgabe ist es eine Steuerung mit einem DS1302 Timekeeper
aufzubauen."

Neue Frage -> neuer Thread !


Peter

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Neue Frage -> neuer Thread !"


Das gilt aber auch umgekehrt:

Keine neue Frage -> kein neuer Thread !


Nun sinds ja schon 3 Threads zu Deinem DS1302. Damit erreichst Du nur
das Gegenteil.

Ich weiß jedenfalls nichts dazu und habe auch keine Lust danach zu
Googlen.


Peter

Autor: Hölscher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK das verstehe ich aber ich muss weiter suchen..
Ich muss den Baustein unbedingt programmieren.

Mit freundlichen Grüßen
Christian

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.