Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » KC85/4 M005 Beispiel » Themenansicht

Autor Thread - Seiten: -1-
000
22.11.2006, 16:53 Uhr
spakko



Gibt es ein einfaches Beispiel für den Aufbau eines M005 Moduls ?
Dieser Beitrag wurde am 23.11.2006 um 14:32 Uhr von spakko editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
22.11.2006, 17:28 Uhr
Enrico
Default Group and Edit


In dem HB zum M005 steht eigentlich alles drin, was man dazu wissen muss, speziel Schaltbeispiele. Wobei hast Du da ein Problem?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
22.11.2006, 20:08 Uhr
HONI



Die Platine in seinem Avatar kam kam mir gleich so bekannt vor . Is doch schön dass er wieder da ist, Herzlich Welcome Back (Denglish ) .

MfG HONI!!
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
23.11.2006, 11:47 Uhr
spakko



@Enrico

Danke für den Hinweis

Dieser Beitrag wurde am 23.11.2006 um 14:32 Uhr von spakko editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
25.11.2006, 11:45 Uhr
spakko



Nochmal ich.

Soweit so gut. Es scheint zu funktionieren. Allerdings ist der Bauelementeaufwand für das Strukturbyte und das Ein- und Ausschalten des Moduls (als Minimalfunktion) erheblich. Gibts dafür eventuell schon fertig programmierte GAL/PAL Lösungen ? Das wäre für jede Funktion nur ein Baustein.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
26.11.2006, 20:06 Uhr
Enrico
Default Group and Edit


So viel Bauteileaufwand ist das doch gar nicht, da kommt ja für die Funktion als solches noch mehr dazu. Da kannst darauf ja auch ganz verzichten, wie beim Joystickmodul M008 / M021. Dann geht natürlich nur ein Modul und diese Adresse darf sonst nicht benutzt werden. Wenn es nur für dich ist, macht das ja nichts. Der freieAdressbereich steht auhc im HB. Ansonsten habe ich immer nur die Adressdekoder durch GAL ersetzt. Alles, lohnt den Aufwand nicht.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
28.11.2006, 19:31 Uhr
spakko



Für meinen Versuchsaufbau (genau nach Anleitung, Bilder auf Anfrage) habe ich für das Modulstrukurbyte 6 Bausteine und für die Modulzuweisungslogik nochmal 3 Bausteine gebraucht. Gut, 1 IS hätte ich sparen können, wenn ich die Schaltung zusammengefasst hätte. Ich wollte aber Schritt für Schritt vorgehen. Aktivierung und Deaktivierung klappt auch. Einen PAL/GAL dafür hätte ich gerne, um meine Experimente fortzuführen. Gibt es eine günstige Möglichkeit sich selber welche zu "brennen" ?
Dieser Beitrag wurde am 03.12.2006 um 19:14 Uhr von spakko editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
28.11.2006, 23:37 Uhr
Enrico
Default Group and Edit


Sieht ziemlich wild aus . Du musst es ja nicht exakt nach "Anleitung" machen, das ist ja nur ein Beispiel. Stattt des 74 geht ja auch der 175 oder 573.
Für den GAL könnte ich Dir die Datei schicken, wenn Du ein Programmiergerät hast.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
12.12.2006, 17:49 Uhr
spakko



@Enrico

Danke für das Angebot. Habe mich inzwischen ein wenig mit CPLD's und VHDL befasst und mir eine Experimentierplatine und ein Programmiergerät gebaut. Gelöst (bzw. in Lösung befindlich) wurde (bzw. ist) das Ganze mit einem Xilinx XC9572. Bild auf Anfrage.

Dieser Beitrag wurde am 19.12.2006 um 01:49 Uhr von spakko editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
13.12.2006, 01:30 Uhr
Enrico
Default Group and Edit


Prima, herzlichen Glückwunsch!
Hast Du auch an die 100 Ohm Widerstände zwischen Datenleitungen und CPLD gedacht? Ohne gibt es immer wieder Probleme.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
13.12.2006, 16:41 Uhr
spakko



Nein, aber werde ich jetzt wohl nachholen müssen. Ich habe mir wohl irgendwas zerschossen, da ich den BASIC Interpreter nicht mehr starten kann (bleibt nach Aufruf hängen). Wollte damit die E/A Tore testen. In diesem Zusammenhang ist noch eine Frage aufgetaucht. Für Benutzer stehen die Adressen C0 bis CF für E/A zur Verfügung. Wo werden die abgegriffen ? A15-8 oder A7 bis A0 ? Und was liegt am jeweils anderen Byte an ?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
14.12.2006, 01:26 Uhr
Enrico
Default Group and Edit



Zitat:
spakko schrieb
Nein, aber werde ich jetzt wohl nachholen müssen. Ich habe mir wohl irgendwas zerschossen, da ich den BASIC Interpreter nicht mehr starten kann (bleibt nach Aufruf hängen).

Das hatte ich noch nie gehabt. Wenn DU dein Modul abziehst geht es aber wieder?

Zitat:
Wollte damit die E/A Tore testen. In diesem Zusammenhang ist noch eine Frage aufgetaucht. Für Benutzer stehen die Adressen C0 bis CF für E/A zur Verfügung. Wo werden die abgegriffen ? A15-8 oder A7 bis A0 ? Und was liegt am jeweils anderen Byte an ?

Das hängt davon ab, mit welchem Befehl Du die ansteuerst. Normal ist damit die 8 Bit-I/O-Adresse gemeint. D.H. der obere Adressteil ist undefiniert.
Du kannst aber auch mit den 16 Bit-I/O-Adressen arbeiten, dann kannst Du jede IO nochmal auf 256 Bytes aufbröseln. So in der Richtung hat MPM die Ansteuerung des Koppelram der D004 vom KC aus gemacht. 4 Basis I/O-Adressen plus die oberen 8 Adressbits macht 1 KB.
--
MFG
Enrico

Dieser Beitrag wurde am 14.12.2006 um 01:27 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
14.12.2006, 18:46 Uhr
spakko



Das Modul zu entfernen hatte nichts gebracht. Deshalb habe ich den User Rom C getauscht und dann lief's wieder. Offensichtlich hatte das eine mit dem anderen nichts zu tun.

Danke für die Infos.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
14.12.2006, 21:24 Uhr
spakko



Es sind noch ein paar Fragen aufgetaucht. Die Ausgabe funktioniert nicht. Deshalb nochmal meine Annahmen:

Lese von A7...A0 sollte sein: &C0H oder '11000000'
Lese /MAD sollte sein: '0'
Lese /IORQ sollte sein: '0'
Lese /WR sollte sein: '0'
bzw.
Lese /RD sollte sein: '0'

in BASIC:
switch 8,1 (Modul aktivieren)
out192,1 (Schreibe '00000001' auf Adresse &HC0

Eigentlich sollte ich wenn die Bedingungen stimmen ein entsprechendes Signal bekommen, oder ? Habe ich was nicht bedacht ?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
014
14.12.2006, 21:58 Uhr
Enrico
Default Group and Edit


Ich weis jetzt nicht, auf was Du hinaus willst.
Modul Switch und ein I/O-Zugriff sind nicht ganz das das selbe.
Beim 1. ist es eine 16 Bit I/O-Adresse, L-Teil ist fest 80H, der obere Teil ist die Modul-Adresse. Dazu brauchst Du das /MAD. Bei dem Zugriff auf Deine IO, hier wohl C0H ?, darfst Du das natürlich nicht verwenden.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
015
15.12.2006, 00:20 Uhr
spakko



Gefragt: Welche Signale brauche ich, um z.B. die Adresse &C0H speziell auf das aktivierte Modul auszukodieren. Oder werden die E/A Adressen vom Modul unabhängig auf Adress- und Datenbus gelegt ? Wenn dem so ist, bräuchte ich nur D7...0, A7...0 sowie /RD bzw. /WR und evtl. /IORQ ?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
016
15.12.2006, 12:46 Uhr
Enrico
Default Group and Edit


Die IO-Adresse hat mit dem Schaltzustand des Moduls nichts zu tun.
Bei Dir : Adresse A7-A0 = 1100000b = C0h, /IORQ = L, und Je nach Zugriff
/RD oder /WR.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
017
22.12.2006, 09:08 Uhr
spakko



Ja, so haut's hin.

Nachdem ich für die Ausgabe noch einen LS374 (Zwischenspeicher, Ausgang beim Lesen hochohmig) und das Einlesen eine LS244 (überbrückt beim Lesen den LS374, ansonsten ist er hochohmig) dazugebastelt habe (die CPLD Ports waren aufgebraucht) ist ein programmtechnisches Problem aufgetreten:

Vor dem Lesen muß ein OUT192,0 (Adresse &C0H) gesendet (in BASIC) werden, ansonsten wird der voreingestellte Wert zurückgelesen.

Das ist, wenn man's weis, kein Problem. Mich würde aber der technische Zusammenhang interessieren. Sieht so aus, als ob beim Lesen und Schreiben aus BASIC das gleiche Register verwendet wird. Ist dem so ? Oder habe ich mich "verrannt" ?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
018
22.12.2006, 18:23 Uhr
Enrico
Default Group and Edit


Nanu, das und viel mehr sollte schon in dem CPLD Platz haben. Zu BASIC kann ich Dir leider nichts sagen. Das habe ich noch nie gemacht.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
019
23.12.2006, 04:41 Uhr
spakko



Mein XC9572 hat nur 44 Anschlüsse, wovon 10 nicht nutzbar sind. Und:
A9-A0 = 10
D7-D0 = 8
/MAD, /IORQ = 2
/RD, /WR = 2
/MEO, /MEI = 2
Ausgang (Weiterverarbeitung) für:
Modul Aktiv = 1
Lesen, Schreiben = 2
Adresse L-Teil = 4
macht zusammen 31 bereits belegte Leitungen. Da jetzt noch 3 frei sind, ich aber 8 für das E/A-Tor bräuchte, habe ich die restlichen 3 für:
*Flanke Lesen 374,
*374 Hochohmig und
*244 Hochohmig verwandt.
Damit sind alle Leitungen voll. Mit Basic lässt's sich halt am einfachsten ausprobieren (nur je eine Anweisung zum Lesen bzw. Schreiben).
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
020
24.12.2006, 10:24 Uhr
spakko



Nochmal ich. Die Sache lässt mir keine Ruhe. Habe ein wenig mit den im M005 Handbuch abgedruckten ASM Beispielen herumexperimentiert. Leider funktioniert nicht einmal die Abfrage der Modulkennung richtig. Kann es sein, dass die Beispiele für KC85/2 und 3 geschrieben sind und die Hilfsprogramme jetzt auf anderen Adressen liegen ? Hier mal 2 Beispiele:

Quellcode:
defw 7f7fh (7f7f) ;Prolog
defm 's' (53) ;Name
defb 1 (01) ;Epilog
ld bc,0880h (01 80 08) ;Zuweisungsadresse
in a,(c) (ed 78) ;Strukturbyte lesen
call 0f003h (cd 03 f0)
defb 1ch (1c) ;auf den Schirm
ret (c9) ;Rücksprung

und

Quellcode:
defw 7f7fh (7f7f) ;Prolog
defm 'st' (5354) ;Name
defb 1 (01) ;Epilog
ld bc,0c80h (01 80 0c) ;Zuweisungsadresse
ld a,01h (3e 01) ;Steuerbyte
out (c),a (ed 79) ;Ausgabe
ret (c9) ;Rücksprung

Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
021
28.12.2006, 18:27 Uhr
Enrico
Default Group and Edit



Zitat:
spakko schrieb
Mein XC9572 hat nur 44 Anschlüsse, wovon 10 nicht nutzbar sind. Und:
...

Meiner hat 84 Pins. Deswegen hat mich das etwas gewundert.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
022
28.12.2006, 18:37 Uhr
Enrico
Default Group and Edit



Zitat:
spakko schrieb
Nochmal ich. Die Sache lässt mir keine Ruhe. Habe ein wenig mit den im M005 Handbuch abgedruckten ASM Beispielen herumexperimentiert. Leider funktioniert nicht einmal die Abfrage der Modulkennung richtig. Kann es sein, dass die Beispiele für KC85/2 und 3 geschrieben sind und die Hilfsprogramme jetzt auf anderen Adressen liegen ? Hier mal 2 Beispiele:
...

Die UP-Aufrufe und Einsprungadressen haben sich nie geändert, die Adressen sind spätestens seit CAOS 4.3 ganz anders. Aber das ist ja egal.
Es wird nicht gehen, weil Du auf Schacht 8 liest, und Schacht C schreibst.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
023
01.01.2007, 11:19 Uhr
spakko



Und wie müßten die Beispiele richtig lauten ? Danke.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
024
01.01.2007, 11:45 Uhr
Enrico
Default Group and Edit


Ich weis ja nicht, in welchem Schacht Du dein Modul hast. Bei Schacht 8 wäre das z.B.
...
LD BC,0880h.
...
--
MFG
Enrico

Dieser Beitrag wurde am 01.01.2007 um 11:46 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
025
01.01.2007, 18:59 Uhr
spakko



Im ersten Beispiel stimmt die Adresse doch, oder ?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
026
01.01.2007, 19:47 Uhr
Enrico
Default Group and Edit


Das weis ich nicht. Du musst eben die nehmen, wo Dein Modul drin steckt.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
027
02.01.2007, 16:34 Uhr
spakko



Ja, danke erstmal. Werde meine Nase noch mal tief in die Bücher stecken und mich wieder melden.
Dieser Beitrag wurde am 02.01.2007 um 16:35 Uhr von spakko editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
028
03.03.2008, 10:14 Uhr
PeterSieg



Hallo. Gibt es hierzu weiterführende, konkrete Schalt- und Programmbeispiele (außer dem M005 Handbuch)?

Soll heißen, hat jemand schon einmal für das M005 etwas aufgebaut..?
Bei ebay, war vor kurzem mal ein LCD-Anzeige-Modul drin.. mit AVR..

Peter
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
029
03.03.2008, 18:16 Uhr
Enrico
Default Group and Edit


"Für" das M005 kannst Du als solches gar nichts bauen. Die Lochrasterplatine ist ja für Eigenentwicklungen gedacht.

Die Schaltungsbeispiele und auch der ganze Text sind doch prima als Grundlage geeignet. Wenn Du dich daran hältst, klappt das auch.

Alle Module, ausser dem Joystickmodul, folgen dem grundsätzlichen Schaltungsaufbau wie es im M005 beispielhaft angegeben ist.
Egal ob das nun die Originalmodule sind, oder Neuentwicklungen wie dem Scanner- oder 4 MB-RAM-Modul.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek