mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MC68HC11 MOPS 1.3e GLCD KS0108 Problem


Autor: René Klepsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

ich habe schon einige Sachen mit dem Mops-1.3e system gebaut.
Dieses ist ein 68HC11 System von www.elektronikladen.de. Nun wollte ich
ein GrafikLC-Display (controller KS0108) anschliesen, doch leider hab
ich nun Problem das die Software vom PC nicht mehr richtig Übertragen
wird.

Ist es nötig in Datenleitungen Pulldown Widerstände einzulöten?

Leitungen die ich Benutze

Sel3,Sel4 sind Leitung die per HC138,HC139 Adressdecodiert werden,
diese sind an CS1 und CS2 über ein Inverter angeschlossen.

E Signal (ca. 2MHz) an Enable

!Reset an !Reset

A0 an Data/Instruction

und der Datenbus D0 bis D7 nach D0 bis D7

wenn ich alles bis auch die Datenleitungen abziehe geht es doch wird
nicht das richtig auf den ALCD angezeigt. Ziehe ich alles ab geht alles
wie zuvor.

Tschö

René

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!
Sehr sehr speziell, aber benutzt du die Com des HC11 mit anderen
Baudraten als 7812? Wenn ja, unbedingt ein sauberes Reset vor dem
Progr.ausführen, sonst wird es Müll. Mehr kann ich aber auch nicht
sagen(kenne deinen "Hund" nicht)

MFG Uwe

Autor: Manfred Glahe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Rene,
ich benutze den HC11 ausschließlich in einem eigenen Betriebssystem,
kenne also die Schaltung vom Mops nicht. In welcher Betriebsart wird er
benutzt? Bits ModeA und ModeB.
Im Bootstrap Mode ist eine zeitkritische Reset Behandlung notwendig!
Mail doch mal die Schaltung.

MfG  Manfred Glahe

Autor: René Klepsch (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute


@Uwe:
Ja ich weis das es sehr Speziell ist, doch ich arbeite gern mit dem
HC11, bis 64k Addressraum und noch so einige schmankel.
Die IDE11 benutzt die 7812 baud zur Übertragung.

@Manfred
Es wird bei der Entwicklung im Bootstrap gearbeitet.

@alle

Schaltung und GLCD anschluss im anhang
Mops ist komplett bestückt HC11E1,HC24,2 mal 62256 RAM und RTC

Autor: René Klepsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Also gerade noch einen test gemacht wenn ich nur die 8bit
datenleitungen unterbreche geht alles, was mache ich falsch das es
nicht geht?

Doch pulldown widerstände einlöten, also Datenbus terminieren?

Tschö
René

Autor: René Klepsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Also 4,7kohm Netzwerk gegen GND hat nix gebracht.
Weis nun nicht mehr so richtig weiter was ich tun soll, da es scheinbar
nur mit den datenleitungen zusammen hängt?

tschö
René

Autor: Manfred Glahe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Rene,

"doch leider hab
                  ich nun Problem das die Software vom PC nicht mehr
richtig Übertragen
                  wird."

Wenn Du im Bootstrapmodus arbeitest, dann werden die Daten vom Pc über
RS232 übertragen. Da können die Paralellports nichts verderben!
Der Schaltplan ist fast nicht zu entziffern ist aber eindeutig für
expanded Mode oder single chip ausgelegt, auf welchem Potential liegen
die Mode Pins 2 und 3 (müssen im BTRM beide = GND sein)?
Woher weißt Du denn daß die Übertragung vom PC zum  HC11 nicht
funktioniert? Oder nimmst Du das nur an weil Dein Programm nicht
läuft?
Im Moment würde ich mal die Stromversorgung des Displays und die GND
VERBINDUNG zwischen dem  Mops und dem Display untersuchen. Ich kenne
Deine Hardwarekenntnisse nicht, also bitte nicht grantig sein wegen
dieses Vorschlages.
Wenn Du mit mehr Informationen rüberkommst und einem LESBAREN
Schaltplan, kann ich Dir möglicherweise helfen.

MfG  Manfred Glahe

Autor: René Klepsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Manfred

Also ich benutze die IDE11 (assembler) und dieser Überträgt auch das
Programm in den Speicher (62256) also wird der Datenbus benötigt. Bei
der Übertragung mit Datenleitungen an GLCD kommt ein Verify Error das
halt etwas anders gelesen wird als geschrieben wurde. Wenn ich die
Datenleitungen unterbreche, habe alle mit jumpern verbunden, geht
alles. Ich benutze ein Progamm welches auf den ALCD ausgibt und noch
nix mit dem GLCD macht, und dies läuft wenn ich die Datenleitungen
nicht angeschlossen habe. Wenn diese dran sind geht halt nix mehr!

Leider habe ich keinen bessern Plan mehr, da ich auch nur eine Kopie
vom elektronikladen bekommen habe, nach ausdruck kann man es etwas
besser erkennen. ich schlage mich auch schon damit rum und habe mir
schon oft vorgenommen in noch einmal nach zuzeichnen mit Eagle doch die
liebe zeit wie so oft.

tschö
René

J1 und J2 sind beide auf Masse (also BTRM)

Autor: René Klepsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute

ich bin schon einen Schritt weiter gekommen, also es scheint am Enable
signal des GLCD zuliegen denn wenn das in Kombination mit R/W High oder
Low ist wird auf den Datenbus geschrieben und das ist ja nicht richtig,
also probiere ich jetzt das E signal vom Processor mit den CS Signalen
so zuverbinden das dies erst statt findet wenn auch der GLCD gemeint
ist.

Tschö
René

Autor: Frank W (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Moin zusammen !
Falls das Thema GLCD noch nicht erledigt sein sollte,
anbei eine Schaltung mit dem HC11, die seit Jahren zuverlässig
läuft und die eigentlich alle Bedürfnisse abdecken sollte:

-68B50 für zweite RS323,
-68B21 für Tastatur und Drucker,
-RTC,
-Text-LCD
-Grafik-LCD
-Barcodeleser / Scanner (1200BD, Software)
-Magnetkartenleser
-Relaisausgang und
-4 x Optoeingang.

Die Platine ist 215mm x 115mm groß.

Gruß Frank

Autor: Frank W (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Sollte sich jemand für das Layout interessieren,...

Schade, kann nur eine Anlage anhängen.

Autor: Manfred Glahe (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Frank + Rene,
wo setzt Ihr Eure Boards ein und was macht Ihr damit alles?
Ich bin noch nicht in die Lage gekommen unbedingt mehr als 2K
Programmspeicher zu benötigen und kann daher im Bootstrapmode arbeiten.
Dadurch entsteht ein extrem einfaches und kleines Board welches in
vielen Geräten eingebaut ist. Setups und größere Programmteile lagere
ich ins FRAM aus (8pol smd).
Sollte ich einmal wirklich mehr benötigen würde ich auf den HC12
ausweichen, denn die Port/IOs für exp. Mode kosten viel Hardware und
Zeit. Das gefällt mir einfach nicht!
Im Anhang mal die Schaltung und anschließend mal Fotos einer
Anwendung.

MfG  Manfred Glahe

Autor: Manfred Glahe (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Frank + Rene,

Das Hc11 Modul von der Bedienungsseite gesehen. Wird einfach von hinten
in die jeweilige Frontplatte integriert.

Autor: Manfred Glahe (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Frank + Rene,

hier in einem Datalogger eingebaut.

Autor: Frank W (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
@Manfred !

Primär habe ich das Board für den Einsatz in einem BDE / MDE Gerät
entwickelt. Dort werden über einen RS485 / RS422 Bus bis zu 32
Terminals mit einem PC verbunden. Sie erhalten per Download Parameter
von PC, wie z.B. Wie schnell muß / darf die Maschine laufen, wieviel mm
entspricht ein Eingangsimpuls, welche Eingaben hat der Benutzer zu
machen, usw. Nach einem Schichtende werden die gewonnenen Daten dann
vom PC abgeholt und weiterverarbeitet.

Eingesetzt wurde es aber auch zur Zählung von Fahrzeugen und
Schrankensteuerung sowie Anzeigetafeln für sehr große Solaranlagen
(Krankenhäuser / Altenheimen) und Vieles mehr.
Entsprechende  Zusatzkarten wurden auch entwickelt.

Anfänglich habe ich in asm programmiert, bin dann aber zu einem
C-Compiler der Firma COSMIC gewechselt. Das Teil optimiert besser, als
hätte ich es in asm geschrieben.

Zum Speicherplatz:
Mir reichen die 32k kaum noch aus. Zumal man immer schön auf den EEPROM
Bereich achten muß.
Allein der Zeichensatz des GLCD benötigt 2k. Dann wird die
Schnittstelle an dem der Barcode- Decoder angeschlossen ist  per Input-
Capture und einem Timer- Interrupt simuliert (nur RxD).
Und so schwindet der Platz.

Anbei mal der Zeichensatz und die LCD-Ausgaberoutine gezippt.


MfG Frank W.

Autor: René Klepsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

@Manfred

Also ich habe ein Testboard wo ich ersteinmal einige Sachen teste und
wenn es geht wird es dann mit einer eignen Schaltung nachgebaut. zum
beispiel möchte ich mir eine Laserbank bauen.
Und ich benutze am liebsten den 68HC11F1 da es da keinen gemultiplexten
Address-/Datenbus gibt und noch einpaar sonder sachen drin sind die ich
gut finde z.B. ChipSelect für Exteren Speicher und noch einige tolle
sachen.

@Frank

Danke für deine Sachen doch leider scheint dein GLCD nicht sehr groß
zus ein bei mir sind da zwei CS-leitungen und eine Enableleitung also
Enable sagt dem Chip halt ersoll was am Datenbus machen und mit CS sage
ich welcher der beiden Controller und da war auch mein Problem ich
hatte dies nicht ganz zuende gedacht nun geht ersteinmal alles alte,
doch nun den GLCD zumlaufen zubekommen ma schauen.

tschö
und danke für die hilfe

René Klepsch

Autor: Manfred Glahe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Frank,

"Das Teil optimiert besser, als
                  hätte ich es in asm geschrieben."

Ich habe mir auch mal einen solchen Kode angeschaut und war erstaunt
das fast nichts mehr zu vereinfachen/beschleunigen war. Ich benutze den
zeitgeschützten CLR INIT und das hat zur Folge, daß ich keine solchen
vom Compiler erzeugten Programme bei mir (als Subrutine)verwenden
kann.
Mich wundert es schon, daß diese Möglichkeit von fast allen HC11
Programmen, welche ich zu sehen bekommen habe, nicht genutzt wird.
Da die Basisadresse der Register nun bei 0 beginnt reicht 1 Byte zur
Adressierung aus und das üblicherweise verwendete X Reg. ist frei für
andere Zwecke und muß daher auch nicht mehr in Subrutinen mit Push/pull
gesichert werden. Schnellere Durchlaufzeiten und kürzerer Programmkode
sind die Folge. Die 64 Byte RAM haben mir nie gefehlt! Außerdem würde
der Stack bei höherer Verschachtelung (push/pull) ebenfalls RAM
"verbrauchen" und diesen Nachteil teilweise wieder ausgleichen.
Allerdigs kommt es doch sehr auf die Anwendung an. Bei meinen
Gerätesteuerungen fallen nicht viele, per Display anzuzeigende Daten
an, welche erheblichen Speicherbedarf hätten wie ich gesehen habe.

MfG  Manfred Glahe

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Manfred!
Ich dachte immer den HC11 recht gut zu kennen, aber ein CLR INIT kenne
ich irgendwie nicht so recht. Wenn du allerdings
Ram und I/O-Mapping ($103D) meinst weiss ich worum es geht, habe es
allerdings noch nie gebraucht.Wenn überhaupt habe ich höchstens auf 2K
EEProm+8KRam erweitert und den Bootloader ins EEProm verschoben. Mehr
habe ich nie gebraucht. Vor allem stört mich die schlechte
Verfügbarkeit der 68HC24 weshalb meine HC11 Projekte meist im "Special
Bootstrap" laufen, also alles intern und die Pins frei. Der HC12
bietet da natürlich einiges mehr und mit dem macht es eigentlich
richtig Spass.
Was ich allerdings noch sehr suche ist ein guter (und bezahlbarer)
Simulator.......Du kennst nicht zufälligerweise einen?


MFG Uwe

Autor: René Klepsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Uwe

Für was suchst du den Simulator HC11 oder HC24?
Einen Hardware Simulator also Kabel das du dahin stecken kannst wo der
Prozessor mal hin soll, oder reine Simulation im PC?

Tschö

René Klepsch

Autor: Manfred Glahe (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Uwe,
ja es handelt sich um das I/O mapping Register. Mit dem Befehl
CLR INIT; wird dieses zeitgeschützte Register (Grundeinstellungen)
direkt am Programmstart (also nach: org  $F800, für den HC811E2) auf
Null gesetzt. Damit werden die Register des HC11 auf den Adressbereich
$00 verschoben wo sie in den RAM Bereich hineinreichen. Diese 64 Byte
sind nun als RAM nicht mehr zu nutzen. Aber das Ansprechen eines
Registers ist ab jetzt nur noch mit einem Byte Programmkode zu
erreichen! Compilerprogramme welche ich bisher gesehen haben tun dies
nicht. Deshalb kann ich sie nicht in meiner Applikation (Grundschaltung
des HC811E2 wie gepostet) verwenden.
Register werden doch in jedem Programm zu Hauf, immer wieder
angesprochen! Das kostet natürlich jedes mal den doppelten
Programmspeicher wenn man es nicht so macht!
Im Anhang mal das Prog. für den HC11 Minilab zum Vergleich. Mit einer
Hochsprache und dem entsprechenden Compiler Kode wäre das nicht
möglich.

MfG  Manfred Glahe

Autor: Manfred Glahe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Uwe,
hatte ich vergessen: HX11- Echtzeit Debugger von Orgler Elektronik, die
haben eine eigene Seite. Auch sein Buch über den HC11 ist
herrvorragend, allerdigs wohl nicht mehr im Handel.

MfG  Manfred Glahe

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Jetzt habe ich es erst geschnallt, INIT ist ja Name von $103D, es war
also glatter Assembler. Wie dumm von mir.

Beim Simulator meinte ich eigentlich einen für HC12 auf dem PC. Beim
HC11 bin ich mit dem zufrieden der bei der IDE11 dabei ist. Es sind da
bestimmt bessere auf dem Markt,aber der reicht mir.
@Manfred
Was machst du andauernd in den Registern, E/A? Bei mir laufen 70-80%
des Progr.im Ramm und der Rest über X oder Y. Zum INIT könnte man aber
mal drüber nachdenken ob es was bringt. Wenn ich mir das recht überlege
müssten aber eigentlich 192 Byte 0-Page Ramm auch reichen.
Muss ich mal untersuchen.Jetz wede ich mir aber erstmal dein Progr.
anschauen, man lernt ja nie aus.

MFG Uwe

Autor: Frank W (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Thema GrafikDisplay.

Hallo Leute !

Im Anhang findet ihr ein Character_Satz_Generator.
Den habe ich mal im Zusammenhang GLCD am HC11 Programmiert.
Um ihn auszuprobieren, bitte in einem Ordner entzippen
und die Datei SEW.CSG laden.

Kennt jemand die Kosten für einen HC12 Compiler ?

MfG Frank W

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.