[S] Leute die einen Logic Analyzer (MiniLA) bauen wollen

Gast #761536
Lesenswert?

Arbeitet keiner von den "Mitmachern" in 'ner Firma, die EBV als Distri 
hat und man die Teile bei einer Bestellung dort hinzufügen könnte und 
anschließend "abkauft".

Leider wurde diese Möglichkeit bei meinem AG irgendwann im Zuge der 
Bürokratisierung abgeschafft...
Gast #761731
Lesenswert?

Hat sich mal einer die Daten von dem Samsung angeschaut? Wenn nein, kann 
das bitte noch jemand machen: 
http://www.samsung.com/global/business/semiconductor/productInfo.do?fmly_id=174&partnum=K7B803625B

Nicht, dass ich wieder was übersehen habe wie bei dem AS7C33256PFS36A 
(das kein Flow-Through mehr unterstützt) oder dem GS84032AGT-150 (das zu 
langsam ist).

Das mit dem Bestellen kriegen wir dann auch noch hin.
Gast #762149
Lesenswert?

Heute gabs noch 2 Angebote für SRAM:
- GS84032AT-150 für €4,68 (der ist aber sowieso zu langsam) und
- GS84036AGT-190 für €6,64
Beide können allerdings erst im April geliefert werden...

Ich würde sagen wir nehmen den Samsung vom letzten Post. Schaut euch 
bitte übers WE mal das Datenblatt an.

Und die PCBs sind heute angekommen. Bei dem Drittel, das ich mir 
angeschaut habe, hat es an den kritischen Stellen vom letzten Mal 
eindeutig keine Probleme gegeben. Sieht also ganz gut aus...
#764579
Lesenswert?

Hallo!

Laut Datenblatt müsste es passen. Der Zusatz SB heißt Flow-Through-Typ?
Wie gehts eigentlich weiter. Gibt es bereits einen Lieferanten?
Wie ist sonst der Status der Bestellung? War lang nicht mehr hier, 
deshalb die Frage...

MfG Matthias Eder
#764847
Lesenswert?

Ich (myscha) habe mich jetzt mal angemeldet.

@ Eder Matthias
Die xxxxx25 stehen für flow-through. Auf der Seite, die ich oben 
verlinkt habe, gibt es rechts einen "part number decoder". Laut diesem 
steht 25 für "3.3V, LVTTL, SB-FT WIDE", wobei das SB-FT IMO für Sync 
Burst-Flow Through stehen müsste. In folgendem PDF auf Seite 5 wird der 
Samsung-Typ als Ersatz für den Alliance FT-Typ aufgeführt: 
http://www.semiconductorresource.com/pdf/all%20alliance%20x-refs.pdf

Von daher denke ich schon, dass das passt. Ich habe trotzdem mal an 
Samsung geschrieben, aber bisher keine Antwort erhalten.
Gast #766406
Lesenswert?

Hallo !

Ich habe die SRAM Beschaffungsprobleme verfolgt und unser Lager 
überprüft. Wir haben einige im Lager und könnten ca. 12 Stück 
K7B803625B-QC75 entbehren.
Die Teile sind neu aber nicht RoHS konform. Als Gegenleistung hätten wir 
gerne eine Leiterplatte (als Projekt für unseren Azubi).
Bei Bedarf Bitte über das Forum hier melden.
Versand wäre ab morgen möglich.

MfG Norbert
#767131
Lesenswert?

Hi Norbert,
das ist ein verlockendes Angebot, aber leider brauchen wir mittlerweile 
21 St. Und ich möchte nach Möglichkeit vermeiden, dass wir am Ende 
zweierlei Versionen haben...

Eine Platine kannst du aber gerne haben - musst halt die kleinen 
Reparaturen durchführen, die ich weiter oben beschrieben habe. Falls du 
eine (oder mehrere) haben willst, schreib mir eine Email.
#768149
Lesenswert?

So jetzt mal wieder ein aktueller Status:
- SRAMs sind bestellt und werden per Nachnahme verschickt, sollten also 
die nächsten Tage eintreffen.
- Digikey hat sich leider etwas verzögert, weil es Probleme mit der 
Kreditkarten-Zahlung gab. Ist jetzt aber auch unterwegs mit UPS Express, 
sollte also auch die nächsten Tage eintreffen.

Ich habe noch nicht alle Adressen von den "Mitmachern", also bitte noch 
zuschicken, falls noch nicht geschehen...
#769053
Lesenswert?

Die Digikey-Sachen sind in Köln und ich muss da am Montag wegen Zoll und 
EUSt. anrufen. Heute war niemand mehr zu erreichen als ich Feierabend 
hatte.

Die SRAMs sollen laut dem Lieferanten am Montag bei mir ankommen.

Und ich habe mich heute um etwas ESD-gerechte Verpackung gekümmert...
#769614
Lesenswert?

Ich hoffe, dass die Reichelt-Warenkörbe noch aktuell sind - habe meine 
Teile schon danach bestellt... ;)

Im Ernst: ich habe diesen kompletten ("Mainboard" inkl. USB & 
Programmer) hier 
http://www.reichelt.de/?ACTION=20;AWKID=45440;PROVID=2084 eben nochmal 
kontrolliert und der passt. Mit dem habe ich auch meine Teile bestellt. 
Und der baut auf den anderen "einzelnen" auf, daher sollten die auch 
stimmen.

Da ist aber noch kein Material für irgendwelche Tastköpfe dabei.

Und ich habe heute doch tatsächlich jemanden bei UPS erwischt: die 
Digikey-Sachen werden auch am Montag zugestellt...
#772615
Lesenswert?

So jetzt ist alles da! Endlich!!!

Hab schon mal angefangen um zu packen und zu "portionieren".

Ein paar Teile (z.B. SRAM) sind/haben MSL. Spielt das in unserem Fall 
eine Rolle - also wenn die von Hand gelötet werden? Oder ist nur beim 
Reflow-Löten interessant? Ich kenn mich damit zu wenig aus...
#772627
Lesenswert?

soweit ich das weiß sollte das nur beim reflow-löten ein problem 
darstellen.

denn bei uns wird ja nur das beinchen warm ;-)

PS: für alle die nicht wissen was MSL ist:
Moisture Sensitive Level - empfindlichkeit von elektronischen bauteilen 
im bezug auf feuchtigkeit.
Wenn zu feucht kann es beim reflow löten passieren das dein bauteil 
"explodiert" (Popcorn)
Gast #772934
Lesenswert?

Ich habe gestern noch ein Layout für den Programmer gemacht. Ist 
allerdings mit 0805-C's und -R's und passt somit nicht zum 
Reichelt-Warenkorb. Ich werde das aber heute noch passend machen, 
sprich: auch noch eine THT-Version layouten. Dann könnt ihr das Dingens 
ätzen und braucht es nicht auf Lochraster aufbauen.

Wenn Interesse besteht, bitte Bescheid geben.
Gast #772941
Lesenswert?

Guter Hinweis mit dem SRAM, dann setzte ich das wohl nach dem Reflow mit 
der Hand.

Layout für den Proger täte mich interessieren. Egal ob in 0805 oder 
anders.

Toll das jetzt alle Sachen da sind, bin schon ganz gespannt.....
Gast #772987
Lesenswert?

@ Dipl. Ing. (depr.)
Das mit dem MSL gilt auch für den CPLD. Wobei ich da die Zeit grad nicht 
weiß. Beim SRAM sind's 168h, also innerhalb 7 Tagen muss er 
Reflow-gelötet sein.


Auch wenn das für uns nicht sooo interssant ist, werde ich trotzdem 
zuerst alles andere vorbereiten, die beiden Teile zuletzt auspacken und 
dann versuchen alles möglichst sofort zu verschicken. Dann dürfte auch 
Reflow-löten kein Problem sein.

Die nicht ESD-kritischen Sachen (Grabber, Elko's, Induktivitäten) sind 
schon entsprechend gepackt, heute mache ich noch die IC's und zum 
Schluss die "MSL's".
#773013
Lesenswert?

Hallo!

Ich habe ein Layout des Programmers mit bedrahteten Bauelementen.
Ich habe dabei einfach den Schaltplan von Xilinx verwandt. Allerdings 
kann ich das Layout erst heute Abend reinstellen, weil ich es auf meinem 
Laptop nicht finde ;)

MfG Hias
#773590
Lesenswert?

@ Hias
Evtl. wäre es sinnvoll, den 6pol. Stecker so auszuwählen und zu 
platzieren, dass man das Ganze direkt am MiniLA einstecken kann.

@ all
Was ist euch lieber/wichtiger:
- dass ihr die Sachen so schnell wie möglich bekommt, oder
- dass ich möglichst auf den MSL achte?

Bei ersterem würden die Päckchen (wahrscheinlich) am Freitag und Samstag 
rausgehen und so etwa am Dienstag bei euch sein. Bei letzterem würden 
die Sachen komplett am Dienstag rausgehen und wären entsprechend später 
bei euch.

Leider werden die Päckchen beim hiesigen Hermes-Shop um die Mittagszeit 
geholt. D.h. ich muss das Ganze verpacken und am nächsten Tag abends 
abgeben und am übernächsten geht's dann los...
#773642
Lesenswert?

Hallo!

Ich hab ein Entwicklungsboard von Xilinx überlassen bekommen. Da is 
ebenfalls dieser 6-polige Wannenstecker drauf. Aufgrund dessen hab ich 
das so bei dem Layout gewählt.
An was hättest du gedacht? 6 polige (einreihige) gewinkelte 
Buchsenleiste?


Ich löte von auch von Hand und würd es deshalb lieber früher bekommen, 
als MSL -gerecht.

Hias
#773861
Lesenswert?

@ Hias
Ich dachte an ne 6-pol. 1-reihige Buchsenleiste, richtig!

Mir ist der Xilinx-Standard relativ, da ich das Dingens nur für den 
MiniLA verwenden werde. Deswegen war mein Gedanke eine Buchsenleiste zu 
verbauen und die Pinanordnung so zu gestalten, dass ich das 
"Programmiergerät" direkt einstecken kann. Da man zwischen E_ und E_ 
aber sowieso strippen ziehen muss, ist man dort entsprechend flexibel 
und die Pinbelegung des Steckers ist nicht so wichtig.

So wie in deinem letzten Post müsste es stimmen, ja.


Wegen MSL:
da ihr euch ja ziemlich einig seid, verschicke ich die Sachen asap, 
benachrichtige euch dann und gebe die Sendungsnummer durch. Beim CPLD 
steht leider keine "MSL-Zeit" drauf, bei Bedarf kann ich euch aber 
sagen, wann ich die Teile geöffnet habe.
#773883
Lesenswert?

@ Hias
Hab mir dein Layout eben nochmal angeschaut: ich glaube du hast dich 
beim D-Sub vertan. Es sollte die männliche Version sein, soweit ich 
weiß, nicht die weibliche.

Anbei noch ein Layout mit SMD-Widerständen und -Kondensatoren. Das passt 
aber NICHT zum Reichelt-Warenkorb für den Programmer. Leider kann ich 
mit FreePCB und meinem Gerber-Viewer nicht drucken, deswegen gibt's die 
Daten nur so...
Angehängte Dateien:
Gast #775035
Lesenswert?

Gute Nachricht für euch (und für mich natürlich auch ;) ):
ich habe gestern noch eine kleine Spät-/Nachtschicht eingelegt und 
vorhin 16 Päckchen beim Paket-Shop abgegeben. Die werden innerhalb der 
nächsten paar Stunden abgeholt und sollten dann am Dienstag bei euch 
sein (Montags liefert Hermes meines Wissens nicht).

Es fehlen noch ein Einschreiben und 3 weitere Päckchen, die ich aber 
morgen losschicken möchte.

Die Sendungsnummern schicke ich euch dann jeweils noch per Email.
Gast #778240
Lesenswert?

Echt? Ich dachte immer Hermes liefert Montags nicht, aber in dem Fall: 
umso besser...

Achso, bzgl. MSL für die Reflow-Löter: CPLD und SRAM habe ich Donnerstag 
abend um 20.45 ausgepackt. Das SRAM hat 168h und beim CPLD stand nichts 
drauf.
#778506
Lesenswert?

Achso: gebt beim Auspacken ein bisschen acht - ich habe zu den Grabbern, 
falls vorhanden, immer die beiden bedrahteten Elkos, den Tantal und die 
Induktivität gepackt. Nicht, dass ihr das überseht und wegwerft. Auf den 
entsprechenden Päckchen müsste auch ein ! sein...
Gast #779927
Lesenswert?

Projektstand:

Minila fertig bestückt

Programmiergerät macht bei mir probleme - allem anschein nach wissen die 
vom MINILA Projekt, wiso Sie die Jtag Leitungen als Drähte Ausgeführt 
haben. Hab meinen Minila jetzt mit 4 cm langen Kupferlackdrähten 
programmiert!!!

Funktionstest folgt - Software hat schon mal was ausgespuckt!!!!

mfg Alex
#779934
Lesenswert?

Hallo!

Ich habe auch gerade den LA programmiert.
Mit oben vorgestelltem Programmer hatte ich keine Probleme.
Als nächstes hab ich das Eeprom des FTDI-Chips beschrieben-> ebenfalls 
alles i.O..

Jedoch meldet die miniLA-Software beim Starten, dass das USB Interface 
nicht initialisiert werden kann.

@Alex:
Hast du ebenfalls das USB-Interface am laufen?
Wenn ja was hab ich vergessen? :D

MfG
Hias
Gast #779979
Lesenswert?

Bei mir das selbe. Ich krieg per USB keine Verbindung.
Heute aber nicht mehr. Liegt glaub ich bei mir daran, dass Windows das 
GERÄT erkennt obwohl es eigentlich nur über den D2XX dll ansteuerbar 
sein sollte. Muss ich mal checken.

mfg Alex
#780874
Lesenswert?

Hallo!

Erstmal das erfreuliche:
Mit dem LPT Port funktioniert der miniLA einwandfrei.

Mit dem USB Interface allerdings hab ich noch leichte Probleme:

Das erste auffällige:
Wenn ich die Jumper auf LPT-Mode stecke habe ich einen Stromverbrauch 
von ca 340mA. Im USB Modus sind das ca 470mA obwohl der FTDI-Chip 
buspowered ist.
Das ist definitiv nicht normal.

Zweitens:
Die Initialisierung des MPSSE-Modus vom FTDI 2232 funktioniert nicht 
immer.
Ich habe im Quellcode die Stelle mit der Fehlermeldung. USB Init failed 
gesucht und musste feststellen dass die Synconisation mit der 
MPSSE-Einheit fehlschlägt. Infos dazu gibts unter 
http://www.ftdichip.com/Projects/MPSSE.htm
Dort findet man auch ein Test-Programm, dass exakt die selbe 
Initialisierung wie das miniLA Programm verwendet. Auch hier ist der 
Fehler der Initialisierung reproduzierbar.

Drittens:
Manchmal gelingt diese Initialisierung, jedoch findet die Software den 
miniLA trotzdem nicht.

Ich suche momentan nach Hardwarefehlern, weil mich der enorme 
Stromverbrauch doch etwas stuzig macht.

Hat jemand von euch ähnlches beobachtet?

MfG
Hias
#780968
Lesenswert?

Hi!

Das ist wohl ein Wink mit dem Zaunpfahl. Nein es wird nichts heiß, außer 
der CPLD. Den hohen Stromverbrauch kann ich aber nachvollziehen. Bei 
100Mhz braucht der CPLD ca 400mA. Ein Teil davon geht mit Sicherheit in 
Wärme verloren, deshalb der heiße CPLD. Von dem her streicht das mit dem 
Stromverbrauch. Das scheint normal zu sein.

Ich hab die Schaltung überprüft, aber nichts ungewöhnliches gefunden. 
Nur der Multplexer ist mir noch ein wenig supekt. Welche Funktion hat 
der Baustein?

Wie schauts mit den anderen aus? Schon irgendwelche (USB)-Erfolge?

MfG Hias
Gast #781230
Lesenswert?

ich könnt grad die wand hochgehen. Hab gestern und heute gelötet und 
jetzt hab ich nen kurzen in der versorgung. Also bis ich was posten kann 
dauerts noch. Zum glück hab ich strombegrenzung drin gehabt
Gast #781292
Lesenswert?

Hallo Michael,

das Paket ist heute mittag bei mir angekommen. Vielen Dank für die viele 
Arbeit, die du dir mit der ganzen Sache gemacht hast.

Die Grabber sind für das Geld absolut zu empfehlen, jetzt nur noch die 
passenden Kabel bauen :)


Danke!

Benjamin
Gast #781633
Lesenswert?

Hm,
bisher hab ich noch keine Ursache für den Kurzschluss gefunden.
Lötstellen sehen gut aus, Kältespray zeigt nix an.

Hat jmd. hier eine der defekten Platinen und diese schon erfolgreich in 
Betrieb genommen?
Gast #781856
Lesenswert?

Am Quarz ist nur der Deckel und die Kontakte aus Metall oder?
Weil zum Deckel besteht keine Verbindung :(

Ich hasse so Fehler, die nicht erkennbar sind und so gut wie überall 
sein können :p

Danke trotzdem!!

 lg Daniel
Gast #781916
Lesenswert?

In der kleinsten MultimeterEinstellung (bis max. 200 Ohm), zeigt der
Multimeter genau 1,0 Ohm an.
Ich muss zwar nochmal mit nem richtig gescheiten Multimeter messen
(liegt ein Geschoss unter mir in der Firma g) - aber der niedrige
Wert scheint nichts gutes :(

 lg Daniel
#781953
Lesenswert?

Schaut mir nach eine Lötbrücke bei den beiden großen IC's aus.
Grade beim SRAM liegen viele GND-VCC Pins direkt nebeneinander.
Auch beim CPLD gibts drei solche stellen (36/37, 72/73, 108/109).
Wenn du die Platine von der Seite und unter der Lupe anschaust, kann man 
solche Brücken eigentlich gut erkennen. Viel Glück :)

btw. Hat schon jemand Erfolg mit der USB-Verbindung?
Kann jemand btte mal die Signale vom Quarz (6MHz) am Oszi anschauen.
Von den Atmel µC her meine ich dass beide Signale gleich sein sollten.
Das ist bei mir nicht der Fall....

MfG Hias
#782234
Lesenswert?

Neue Ergebnisse:

Ich hab mir die Signale auf dem EPP Datenbus angesehen.
Wenn endlich mal die Initialisierung funktioniert ist Datenverkehr zu 
verzeichnen. Was genau kann ich leider mit meinem Oszi nicht 
herrausfinden.

Es scheint also, dass beim Datenaustausch etwas nicht funktioniert. Weil 
das ganze konstant erscheint.
Ich hab deshalb mit Hilfe des Testprogramms von FTDI aus der 
Codesammlung (HOSTemul) und des Communicaton-Protokoll einfach mal einen 
Sampling gestartet, und siehe da eine der LED's geht an. Es scheint 
also, dass das Ding läuft. Aber und jetzt kommt das ungewöhnliche: Das 
Lesen funktioniert nicht.
Ich bekomm immer 0xFF zurück.

Jemand ne Idee an was das liegen könnte?
Ich bin weiter auf der Suche nach der Ursache.
Auch was die Initialisierungsprobleme angeht.

Hias
Gast #782311
Lesenswert?

So, ich bin daheim
Da ich vorhin erfahren hab, dass wir im Geschäft nächste Woche bei 
Digikey bestellen hab ich es riskiert den Fehler thernisch zu finden. 
Und siehe da:
der CPLD wird heiß.
Also schonmal eingeegnt, Wenn jmd. nochmal Bauteile von Digikey braucht,
weil er seine beim löten geschrottet hat kann sich hier ja mal melden.
Bei kleinen Sachen kann ich da sicherlich mit meinem Chef reden (solange 
es nicht zu viel wird).

 lg Daniel
#782356
Lesenswert?

Hallo!

Der CPLD wird zumindest bei mir auch ziemlich heiß.
Im Datenblatt wrd eine Stromaufnahme von ca 400mA bei 100Mhz angegeben.
Ein ziemlich großer Teil wird dabei in Wärme umgesetzt.
Was bei dir jetzt heß ist weiß ich nicht. Verbrennen tue ich mir de 
Finger nicht, aber unangenehm ist es schon wenn ich auf den CPLD fasse.

MfG Hias
Gast #782453
Lesenswert?

der schluss ist da - sagt das ohmmeter. Wenn dann nur der clpd heiß wird 
liegt vermutlich da der fehler. Ich schlag deine werte: 2v bei 5,6a :) 
ich geh jetzt pin für pin durch und entlöt ihm notfalls :p
Gast #782770
Lesenswert?

Unter  Mikroskop konnt ich nix finden - hab jetzt rausgelötet und der
Kurzschluss ist weg. Jetzt muss ich nurnoch auf die Digikey Bestellung
warten :)
Vor einlöten überprüf ich jetzt aber Pad für Pad ob nicht in dem
fehlerhaften PCB auch noch hier irgendwo der Wurm drin ist!

Wenn es dann läuft kann ich mich auch an das USB Problem machen -
das sehe ich eher optimistisch, da wir hier einige gute Geräte
zum Auswerten haben und auch einige Kollegen schon sich mit dem
FTDI sehr intensiv beschäftigt haben.
Oder jmd. von hier (Hias? g) hat das Problem bis dahin schon gefunden 
-
was ich eher vermute ;)

 lg Daniel
#783295
Lesenswert?

Hallo!

Kann jemand btte mal die Signale vom Quarz (6MHz) am Oszi anschauen.
Von den Atmel µC her meine ich dass beide Signale gleich sein sollten.
Das ist bei mir nicht der Fall. Beide Schwingen zwar, aber die Amplitude 
ist nicht gleich.

MfG Hias
Gast #783422
Lesenswert?

So, einer der JTAG Pins war auf Vcc.
Als ich am Pfostenstecker das Kabal ausgelötet habe, ist
plötzlich weder auf dem Kabel, noch dem Pfostensteckerpin VCC -
komisch. Ich denk den Pfostenstecker werd ich sicherheitshalber auch 
nochmal
entfernen.
Jetzt hab ich zwischen VCC und GND ein Widerstand von 20k.
Kann das wer bestätigen? Achja, die Pads bin ich einzeln durchgegangen.
Bis auf den JTag Pin war alles ok.

 lg Daniel
#783843
Lesenswert?

Hallo!

Hmm hab gerade noch auf LPT umgesteckt.
Ich bekomm zwar die Firmware_Infos. Aber wenn ich einen Samplingvorgang 
mit einem definierten Signal starte, dann bekomm ich nur Müll.
Ich denke also, dass der Fehler eher beim CPLD zu suchen ist.
Mein erster Tip war der Oszilattor, aber den kann ich nicht überprüfen, 
weil mein Oszi nur 20Mhz schafft :)
Entweder ist dieser defekt. Oder die Firmware funktioniert nicht 
richtig.

Hat von euch jemand schon irgendwelche Erfolge?

MfG Hias
#785993
Lesenswert?

Und wie sieht's bei euch aus - gibt's schon irgendwelche 
Erfolgserlebnisse? Ich bestücke meinen so nach und nach. Ein bisschen 
wird's bei mir also noch dauern.

An die, die beim Auslesen nur Mist empfangen:
habt ihr dran gedacht die zusätzliche Adressleitung anzuschließen?
#788263
Lesenswert?

Egal :)

Das ist ein Adresspin. Im ursprünglichen Design wurde ein 128X32 SRAM 
verwendet. Wir haben die doppelte Größe. Somit auch einen Adresspin 
mehr.
Diesen kannst du jetzt auf Masse legen (unterer Adressraum) oder auf VCC 
(oberer Adressraum) oder einfach mit dem nebenliegenden Adresspin 
brücken.
Nur unkontaktiert solltest du ihn nicht lassen.

Hias
Gast #788569
Lesenswert?

also, eeprom upload auf ftdi ging, testfirmware lässt leds blinken,
usb bekomme ich gleichen fehler.
Zum Thema Daten: hab noch kein LTP Port angeschlossen. Mach ich morgen.

 lg Daniel
Gast #789193
Lesenswert?

Wenn ich kein netzteil anschliese, dann bekomme ich mit dere minLA 
Windows Software kein Initialisierungsfehler. Nur unten links steht
"HW Not Detected".

Sobald die Versorgungsspannung an ist bekomme ich die Fehlermeldung
"Could nit initialise".

Kann das wer bestätigen?
Gast #789489
Lesenswert?

Ich hab grad mit Bob Grieb, dem Autor des Layouts
gemailt. Er hat erstmal keine Idee was es sein könnte.
Aber er schlägt vor, ersteinmal das parallele Interface hinzubekommen.
Dazu soll man auch im Gerätemanager aufpassen was eingesetllt ist (ECP 
oder EEP) und er hatte auch bei manchen PC's Probleme mit DMA (im Bios).

Ich hab leider kein Parallelen Port hier im Moment ;)

 lg Daniel
#789637
Lesenswert?

Habe jetzt endlich Zeit gefunden bei Reichelt zu
bestellen.
Werde mich am Wochenende an den Aufbau begeben
(das päckchen wird knapp ... naja :-( )

Was mir am Warenkorb auffiel:
SMD-0805 47,0
da sind 49 davon drin.
Aber 100 sind günstiger wegen dem Mengenrabatt.

Gruss
Stefan
#789640
Lesenswert?

Hallo!

Es gibt erfreuliches zu Berichten. Ich hab mich noch einmal mit den 
Einstellungen des LPT-Ports auseinander gesetzt. Wichtig ist, dass ihr 
im Bios die richtigen Einstellungen habt. Ich musste z.B. von einem 
Auto-Mode auf ECP+EPP umstellen (EPP alleine hat bei mir nicht 
funktioniert, hatte ich vorher) Als Version hab ich 1.7 eingestellt, 
weiß aber nicht ob es da merkliche Unterschiede gibt. Der LogikAnalyser 
funktioniert jetzt ohne Probleme. Die Signale entsprechen den 
Erwartungen. Ich habe testweiße das Signal 3er Leuchtdioden eines 
aktuellen Projekts von mir abgegriffen. Das Ergebnis findet ihr im 
Anhang. Bin echt begeistert!

Fehlt nur noch eine Lösung für das USB-Problem...

MfG Hias
Angehängte Dateien:
#790262
Lesenswert?

Hi!

Ich mach grade das Layout für eine Pegelwandler-Platine.
Ich möchte eigentlich die 32 Kanäle auf 4 10polige Wannenstecker aus dem 
Gehäuse führen. Jeweils 8 Kanäle plus VCC und GND. Kann es da zu 
Problemen kommen? Auf der Platine sind ja jeweils eine Masseleitung 
dazwischen.

MfG Hias
Gast #791308
Lesenswert?

Hallo,

hab mir grad den Schaltplan nochmal angeschaut. Hat von euch jemand(die 
mit dem USB-Prob) den TEST Pin des FTDI Bausteins auf GND gelegt??? 
Steht so jedenfalls im Schaltplan. Hab meinen Minila schon in meiner 
neuen Wohnung kanns leider net testen.

mfg Alex
Gast #793682
Lesenswert?

Ich sitz hier grad mit unsrem FirmenLA (LeCroy WaveRunner mit LA 
Erweiterung).
Also man sieht schön, dass eine Kommunikation über USB stattfindet.
Aber entweder sind hier datenleitungen vertauscht oder der USB Code
geht nicht.
Kennt sich wer mit Delphi aus? Weil das Programm ist leider in Delphi
geschrieben und dafür hab ich keine Entwicklungsumgebung.

Und hat wer zufällig nen Programm um über die gleiche DLL
eigene Hexadezimale zahlen schicken zu können? Das würde mir bei
der Fehlersuche enorm helfen, wenn ich 100%ig wüsste was gesendet
wird.

Momentan erstick ich eher an der Datenflut der Kommunikation.
#794863
Lesenswert?

Hi,
nach kurzer oberflächlicher Analyse habe ich festgestellt, daß bei der 
Initialisierung der USB-Schnittstelle in beiden Anwendungen mit 
unterschiedlichen Latenzzeiten gearbeitet wird.

In der Anwendung von Sourceforge wird mit einer Latenzzeit von 100ms??
1
//=================================================================
2
function InitDev : boolean;
3
//=================================================================
4
var
5
  passed : boolean;
6
  res : FT_Result;
7
begin
8
   res := Set_USB_Device_LatencyTimer(100);
9
   res := Set_USB_Device_BitMode($00,$00);     // reset controller
10
   res := Set_USB_Device_BitMode($00,$08);     // enable Host Bus Emulation
11
   passed := Sync_To_MPSSE;
12
   InitDev := passed;
13
end;

und in der anderen Anwendung mit einer Latenzzeit von 16ms???
1
function InitDev : boolean;
2
var passed : boolean;
3
res : FT_Result;
4
begin
5
res := Set_USB_Device_LatencyTimer(16);
6
res := Set_USB_Device_BitMode($00,$00); // reset controller
7
res := Set_USB_Device_BitMode($00,$08); // enable Host Bus Emulation
8
passed := Sync_To_MPSSE;
9
InitDev := passed;
10
end;

gearbeitet.

Da die Anwendung mit den 16ms??? korrekt arbeitet, wäre dies mein erster 
Ansatz. Ich benötige aber noch mehr Hinweise, da ich die Anwendung 
mangels entsprechender USB-Devices nicht testen kann.

Neu compilieren schaffe ich erst am Wochenende, da ich erst eine 
entsprechende VM aufsetzen muss, damit ich den Code und die Bibliotheken 
nutzen kann. Meine aktuelle Delphiumgebung möchte ich nicht damit 
belasten.

Gruß
Frank
Gast #795244
Lesenswert?

Danke für deine Hilfe! Momentan weiß ich ehrlich gesagt auch nicht 
weiter.
Ich werde mal selbst versuchen Delphi Personal einzurichten und
die entsprechende Abfrage, die die Fehlermeldung wirft einfach mal zu 
entfernen. Da wird nämlich was zum miniLA geschicht (0xaa und 0xab) und 
eine
antwort erwartet (und zwar 0xfa = kommando unbekannt). Passiert dies 
nicht,
dann kommt die Meldung. Beim LTP/Parallel habe ich diese Abfrage nicht 
gesehen.

 lg Daniel
#795585
Lesenswert?

Hallo Daniel,
ich versuche am Wochenende ein kleines Kommunikationsprogramm 
zusammenzustellen, dass die Latenzzeiten anpassbar macht. Wir können 
damit versuchen die korrekten Latenzzeiten einzustellen.
Wobei mir noch nicht ganz klar ist, was mit dieser Latenzzeiz 
tatsächlich bewirkt wird.

Kannst Du mir den sagen, an welcher Stelle genau der Fehler auftritt 
bzw. welche Fehlermeldung ausgegeben wird?

Gruß
Frank
Gast #795628
Lesenswert?

Sourcedatei: "dlgIO_USB.pas"
In "procedure TfrmIO_USB.Init;" :
1
 begin
2
      raise Exception.Create('USB initialisation failed.');
3
      close;
4
    end;

Jedenfalls kommt diese Meldung beim starten, wenn USB ausgewählt ist.
#796000
Lesenswert?

Hallo,
ich habe das Programm jetzt mal kompiliert.
Die Anwendung sucht zu Programmstart nach einem USB-Adapter mit dem 
Namen:

"miniLA USB Interface A"

wird dieser Adapter nicht gefunden, wird der entsprechende Fehler 
ausgeworfen.

Kann mir jemand den Namen geben, mit dem sich Euer USB-Treiber einträgt?

Desweiteren haben ich die Latenzzeit mal auf 16 eingestellt.
Im Anhang die entsprechende Applikation.

Gruß
Frank
Angehängte Dateien:
#796050
Lesenswert?

Hallo!

Du musst das ept. File in das EEprom vom FTDI-Chip hochladen.
Dort wird der entsprechende Name eingetragen. Bei mir wird der Treiber 
mit
"miniLA USB Interface A" geladen.

Hab momentan leider keine Zeit das ganze bei mir zu testen.
Vielleicht finde ich morgen einen Moment.

MfG
Hias
#796218
Lesenswert?

Hallo zusammen,
bin jetzt auch endlich soweit, dass ich mich an der Fehlersuche 
beteiligen kann. Habe den miniLA über die parallele Schnittstelle zum 
Laufen bekommen.
Bei USB sieht es bei mir etwas anders aus. Ich bekomme keine Verbindung, 
allerdings auch keine Fehlermeldung. Wenn ich USB auswähle wird in der 
ComboBox auch "miniLA USB Interface A" angezeigt. Bei erneutem Aufruf 
der Konfiguration ist die Box jedoch leer. Wie gesagt - ohne 
Fehlermeldung.
Was mir aufgefallen ist, ist, dass die Kondensatoren am 6 MHz - Quarz 
22p statt 27p (Schaltplan) haben (zumindest laut Reichelt Warenkorb). 
Evtl. könnte es da einen Zusammenhang geben. Als Firmware habe ich die 
Timebase-Variante genommen.

Gruß, Thomas
Gast #796259
Lesenswert?

Hallo Frank,
also der Initialisierungsfehler ist weg! Leider steht unten links in
der Statusleiste "Hardware not found" und man kann noch nichts tun.

Aber die Verbindung zum ftdi scheint schonmal zu stehen - super Arbeit!

 lg Daniel
#796266
Lesenswert?

Hallo Thomas,
es ist so, dass die Anwendung beim Starten die Combobox initialisiert. 
Wird anschließend der Setup-Dialog aufgerufen, wird keine weitere 
Initialisierung aufgerufen.

D.h. findet die Anwendung bei Programmstart den Adapter nicht, wird auch 
kein weiterer Versuch unternommen den Adapter zu finden.

In meinem vorherigen Posting habe ich die Anwendung angehangen 
allerdings mit anderen Timing-Einstellungen.

Ich werde versuchen am Wochenende ein Testprogamm zusammenzubauen, dass 
einen vereinfachten Test der Kommunikation erlaubt und einige 
Paramatrisierungen ermöglicht.

Zusätzlich werde ich die Quellen hinsichtlich weiterer Abweichungen 
gegenüber der Anwendung von der ftdi-Seite prüfen, da das Testprogramm 
anscheinend funktioniert.

Leider kann ich selber nicht Testen, da ich keine entsprechende Hardware 
zur Verfügung habe. Ich werde deshalb jede Variante der Software posten 
und dann auf ein Echo von Eurer Seite warten müssen.

Gruß
Frank
Gast #796285
Lesenswert?

frmMain.Analyzer.State scheint auf tsNotDetected zu stehen. Warum weiß 
ich nicht genau. Ich finde so auf die Schnelle nicht die Stelle wo das
beim starten gesetzt (nicht gesetzt) wird. Vermute in einem Timer
in der uCommunication.pas


@thomas

"Wenn ich USB auswähle wird in der
ComboBox auch "miniLA USB Interface A" angezeigt. Bei erneutem Aufruf
der Konfiguration ist die Box jedoch leer. Wie gesagt - ohne
Fehlermeldung."

Das ist en bekannter Schönheitsfehler. Auf automatisch sollte
es gehen. Zieh einfach mal das USB ab, dann bekommst du Fehlermeldungen.

So wie's aussieht geht die verbindung zum ftdi jetzt. Nur scheint es nun
an der verbindung zwischen ftdi und CLPD zu hängen argh ^^

 lg Daniel
#796296
Lesenswert?

Hallo Daniel,
gut, mit dieser Fehlermeldung kann ich jetzt prüfen, was als nächstes 
schief geht. Ich melde mich heute Abend.

Wenn ich Zeit habe, werde ich die ganze Anwendung etwas anders 
strukturieren und aufbauen. Dann ist dieser Schönheitsfehler auch 
beseitigt.

Gruß
Frank
Gast #796761
Lesenswert?

ah, ich müsste folgendes wissen:
wie heißen denn die kabel, die ich von der platine zu den "tastköpfen"
(da die dinger zum anklemmen an beinchen, die es 10stück bunt gab)?

Weil ich bestell geschäftlich morgen bei reichelt und digikey, aber ich 
hab nix gefunden :(
#797389
Lesenswert?

Guten Morgen Thomas,
das ist Schade, aber ich werde morgen ein kleines Kommunikationsprogramm 
zusammenstellen, mit dem erst einmal die Verbindung über den 
USB-Baustein getestet werden kann.

Daniel schrieb ja schon, dass er die Verbindung zum ftdi hinbekommen 
hat. Ihm fehlte jetzt noch die Verbindung von ftdi zu CPLD.

Hast Du eine Fehlermeldung bekommen? Wenn ja welche.

Gruß
Frank
#797424
Lesenswert?

Nein - habe keine Fehlermeldung bekommen. Ich werde es morgen mal mit 
der anderen Firmware testen. Wie hast Du die Software eigentlich 
kompiliert bekommen. Was muss mit der tScroll-Datei in Components 
gemacht werden. Hab noch nie mit Delphi gearbeitet. Ein Bekannter hat 
mir seinen Laptop mit Borland Delphi 2006 geliehen - bekomme aber immer 
ne Fehlermeldung TOwn... fehlt. Auch wenn ich von Delphi keine Ahnung 
hab - vielleicht fällt mir ja auch was im Quelltext auf...

Gruß, Thomas
#797496
Lesenswert?

@Thomas,
die Scrollbar kann man als Komponente herunterladen. Such mal über 
Google.
Im Quellcode, musste ich dann noch ein paar Zeile auskommentieren, da 
die Version der Scrollbar einige Methoden nicht unterstützt.

Ich poste aber heute Abend gerne den vollständigen Code. Kann Dir aber 
nur abraten, daran zu arbeiten wenn Du keine Ahnung von Delphi hast. Die 
Sourcen sind echt schlimm (möchte den ursprünglichen Entwicklern nicht 
zu nahe treten).

Wenn Du bei der Initialisierung keine Fehlermeldung erhalten hast, kann 
es eigentlich nur bedeuten, dass die Einrichtung der Kommunikation 
fehlerfrei gelaufen ist. Natürlich vorausgesetzt, ich habe jetzt keinen 
Fehler eingebaut.

Ich werde mir heute Abende ein kleines Programm bauen, um ersteinmal 
sicherzustellen, dass eine Kommunikation über die USB-Schnittstelle mit 
diesen Sourcen funktioniert. Da ich einen USB-Programmer habe, kann ich 
mit meinem Testboard die Kommunikation über den ATMega Uart 
protokollieren.

Im zweiten Schritt, müsst Ihr prüfen, ob die Kommunikation auf Eurem 
Board an die nächste Stufe nach der USB-Schnittstelle weitergereicht 
wird.

Gruß
Frank
#797569
Lesenswert?

Hallo,

Ich hab die letzte Version der Software gerade etwas testen können.
Wähle ich "automatic detection" dann verbindet er problemlos mit dem 
FTDI.
Allerdings kommt der Initialisierungsfehler, wenn ich die manuelle 
Auswahl treffe. Bei mir steht auch nicht miniLA USB Interface A 
dauerhaft in der Combobox. Wenn ich in das Untermenu komme dann stehts 
drinnen, klicke ich allerdings auf den Dropdown-Pfeil dann verschwindet 
der Eintrag.

Ich habe bemerkt dass im Treiber der Name mit miniLA USB Interface (ohne 
A) angegeben ist. Vielleicht gibts damit Probleme.

Im "AutomatikModus" hab ich den Bus mit dem Oszi untersucht.
Was mir auffällt ist, dass kein extended read/write stattfindet. Der Pin 
usbadd8 wird für den Multiplexer verwendet. Dieser ist bei mir konstant 
Low.
Somit ist auch die Read/Write Leitung immer Low. Somit wäre auch klar 
dass der CPLD nichts auf den Bus legt, weil dieser immer im 
Empfangsmodus ist.
Leider hab ich in Delphi noch nie was gemacht, werd aber trotzdem nach 
Fehlern suchen.

Es wird immer über ein Testprogramm gesprochen.
Dies kennt ihr aber:
http://www.ftdichip.com/Projects/MPSSE/FT2232C-Proj04_HostEmul.zip

Das wars erstmal....

Hias
Gast #797593
Lesenswert?

Geht mit dem testprogramm der extendet Mode?
Kannst du das bisschen genauer erläutern? ich kenn mich mit dem 
Protokoll und
damit auch der Funktion des Multiplexers wenig aus, die Faulheit 
gebietet
mit hier zu fragen bevor ich mir die ganze Protokollspec antu :)

Weil wenn ich da genau weiß was es zu suchen gilt kann ich mich hier mit 
unsrem LA mal dransetzen und suchen.
#797620
Lesenswert?

Hallo.

Ich werds mal versuchen.

Der EPP ist eigentlich recht einfach zu erlären.
Es gibt 8 (bidiretionale) Datenleitungen, DataStrobe, AdressStrobe und 
Read/Write. Außerdem noch ein paar weitere, die für uns uninteressant 
sind.

Betrachten wir mal den Read (vom PC aus gesehen).
Der PC sendet Informationen, nämlich die Adresse, von der er lesen will.
Dabei legt er die Address Strobe auf Low, Write ist High und an den 
Datenleitungen liegt die Adresse an.
Danach antwortetet das Device mit dem Inhalt des zu lesenden Registers.
wenn DataStrobe Low wird, Write ist wieder High und an den 
Datenleitungen liegt der gewünschte Registerinhalt an.

Die für uns wichtigen Leitungen sind also
DST (Datastrobe)
AST (Adressstrobe)
RD/WR (Read == Low)

DST und AST scheinen zu funktionieren.
Nur Read liegt bei mir immer auf Low, somit legt der CPLD nie Daten auf 
den Bus.

Der Multiplexer ist in meinen Augen da, um den Bus auf das EPP 
anzupassen.
Die Funktion ist leicht erklärt:
Es handelt sich um einen 3 fach Multiplexer der in Abhängigkeit von A 
entweder X0 oder X1 auf X legt. (bei B und C mit Y und Z genauso)

So long....
Hias

P.S.: Auch mit dem Testprogramm kann ich nichts aus dem CPLD rausziehen.
#797651
Lesenswert?

Ich hab das eben aus der Antwort rausgenommen, weil ich nicht sicher bin 
was da passiert.
Wenn du mit dem Host_Emul Programm verbindest, hast du dann auf 
irgendwelchen Pins ein Signal drauf (Ohne Datenübertragung)? Vorhin 
hatte ich ein Signal das durchwegs high war aber sobald ich die 
Verbindung aufbaue habe ich, in regelmäßigen Abständen, kurze 
Low-Spikes. Wie gesagt ich schaff das nicht mit meinem Oszi sauber 
darzustellen.
Kannst du das mal bitte testen?
Hias

EDIT: Du warst schneller :)

Versuch das ganze mal mit verbundenem FDTI. Nimm dazu mal das Programm 
aus dem Link oben, sodass kein Datentransfer stattfindet. Da müssten 
jetzt kleine Spikes erkennbar sein.
#797725
Lesenswert?

Hallo!

Sehr interessant das ganze.
Ob das Read hinhaut kann ich so nicht erkennen, da bräuchte ich noch DST 
und AST.

Die Störung hab ich auch beobachtet. Ob die einen Einfluss auf die 
Datenübertragung hat weiß ich nicht. Die noch größere Frage ist woher 
sie kommt... Auf alle Fälle ist der FT2232dran Schuld. Ich werd mal 
kucken ob ich dawas finde.

Hias
Gast #797763
Lesenswert?

Ich vermute einen Softwarefehler hier:
1
if (state = tsNotDetected) then
2
    begin
3
      if ((FVersion and $70) <> 0) and ((FVersion and $70) <> $70) and not CommError then  // HW was connected
4
   state := tsReady;
5
    end
6
   else if ((FVersion and $70) = 0) or ((FVersion and $70) = $70) or CommError then  // HW was disconected
7
      state := tsNotDetected
8
   else if (old_version <> FVersion) then    // New HW connected
9
    begin
10
      state := tsReady;
11
      do_changeevent := true;
12
    end
13
   // if correct version detected, do ..
14
   else if old_state <> tsNotDetected then
15
    begin
16

17
      if (   ((status_reg and mstReset) <> 0)
18
    or ((status_reg and mstRun) = 0)) then
19
       begin
20
   state := tsReady;
21
       end
22
      else if (    ((status_reg and mstReset) = 0)
23
         and ((status_reg and mstDone) <> 0)
24
         and ((ctrl_reg and mctRun) <> 0)) then
25
       begin
26
   state := tsReading;
27
       end
28
      else if (    ((status_reg and mstTrig) <> 0)
29
         and ((ctrl_reg and mctRun) <> 0)) then
30
       begin
31
   state := tsPosttrigger;
32
       end
33
      else if (ctrl_reg and mctRun) <> 0 then
34
       begin
35
   state := tsWaitForTrigger;
36
       end;
37

38
      if state = tsReading then
39
       begin
40
   if assigned (OnStateChange) then
41
      OnStateChange(self);
42
   ReadSRAM;
43
   state := tsReady;
44
       end;
45
    end;
#797892
Lesenswert?

was ich ned versteh ist warum beim Lesen die RD/WR Leitung auf low geht? 
(D8)
Die müsste eigentlich auf High bleiben.
Das war den anderen Bespielen auch schon so.

Was mir allerdings auffällt ist, dass beim parallelen Anschluss. RD/WR 
auch während des DST auf low bleibt. Beim USB ist RD/WR nur dann LOW 
wenn AST low ist. Nicht aber bei DST.
Gast #797908
Lesenswert?

hier das allergleiche mit usb. bitte unten rechts auf die timebase 
achten.
das ist vieeeel schneller. und der zurückgegebene wert (pro port 0xf9)
ist falsch.

(ist eine modifizierte software - habe die firmwareversionsabfrage
gezwungen eine feste version zurückzugeben - dann läuft das programm.
gibt aber wie oben zu sehen ist falsche werte - was ja auch das problem
ist warum die firmwareversion falsch rüberkommt und damit die software
sich weigert zu laufen)
Angehängte Dateien:
#797930
Lesenswert?

Eder Matthias wrote:
> Betrachten wir mal den Read (vom PC aus gesehen).
> Der PC sendet Informationen, nämlich die Adresse, von der er lesen will.
> Dabei legt er die Address Strobe auf Low, Write ist High und an den
> Datenleitungen liegt die Adresse an.
> Danach antwortetet das Device mit dem Inhalt des zu lesenden Registers.
> wenn DataStrobe Low wird, Write ist wieder High und an den
> Datenleitungen liegt der gewünschte Registerinhalt an.

Da hatte ich einen Denkfehler!

Richtig ist das hier:
Betrachten wir mal den Read (vom PC aus gesehen).
Der PC sendet Informationen, nämlich die Adresse, von der er lesen will.
Dabei legt er die Address Strobe auf Low, Write ist LOW und an den
Datenleitungen liegt die Adresse an. Der CPLD liest die Adresse.
Danach antwortetet das Device mit dem Inhalt des zu lesenden Registers.
wenn DataStrobe Low wird, Write ist wieder High (also für den PC 
READ)und an den Datenleitungen liegt der gewünschte Registerinhalt an.
#797988
Lesenswert?

@Daniel,
Du meinst also die Versionsnummer ist nicht korrekt, was bedeutet das 
genau? Was wäre die richtige Version bzw. wenn ich die Versionsprüfung 
abschalte, was kann passieren. Werden die Kommandos dann falsch 
interpetiert?

@hias,
arbeitest Du mit meiner letzten Programmversion oder hast Du eine eigene 
andere Software?

Gruß
Frank
#797997
Lesenswert?

Die ganze Kommunikation läuft anscheinend falsch -
die Versionsnummer wird an der entsprechenden Stelle nicht richtig
ausgelesen - und mit falscher Versionsnummer erkennt die
Software die Hardware nicht an. Das ist das erste Problem.
Umgeh ich das Problem, indem ich die Versionsabfrage auskommentiere
und der Variable einen festen (und richtigen) Wert gebe, dann
wird die HW erkannt und man kann drauf zu greifen.

Nur eben stimmen die Werte und alles andere vorne und hinten nicht!

Also:
Es scheint ein grundlegendes Problem in der Kommunikation zwischen
FTDI und CPLD zu sein. Diese Kommunikation wird ja aber von dem
Windows/Delphi Programm gesteuert.
Die letzten zwei Bilder zeigen eigentlich deutlich wie
sich USB und Parallel unterscheiden.

 lg Daniel
#798046
Lesenswert?

mit paralleler Software (keine pins angeschlossen) bekomm ich:
alle pins auf high (0xFF)
mit usb (keine Pins angeschlossen) bekomm ich:
teil der pins auf high (0xF9)

leg ich einen Pin auf Ground, dann ändert es sich auch beim parallelen 
Betrieb, Beim USB Betrieb bleibt es auf 0xF9.

http://minila.sourceforge.net/fw/communication_protocol_fw_1.7.html
Ansonst kann ich nur noch auf die zwei Bilder hinweisen. Mit dem obigen 
Link (und dem einen und einzigen Link da drin) sagt es aus, dass beim 
USB was nicht stimmen kann.
Die ganze AST/DST/RW Sache ist zwischen USB und Parallel 
unterschiedlich.
#798085
Lesenswert?

@Frank
Ich habe oben genannte Beobachtungen mit deiner letzten Software 
gemacht.

@Daniel
Wenn ich mit der Host-Emulsoftware einen Read von 0x0101 mache bekomm 
ich immer 0xff. Grundsätzlich 0xff egal welche Adresse. Du bekommst 
0xF9????

Ich hab gerade eine Beobachtung gemacht. Berühre ich mit dem Tastkopf 
einen der Pins, nachdem ich mit der miniLA Software von Frank eine 
Verbindung aufgebaut habe steht plötzlich eine Firmwarenummer drinnen.
Was sagt uns das? Es wird grundsätzlich was gelesen, jedoch gibt der 
CPLD nichts aus. Die Datenleitungen sind alle im Tristate, deshalb 
reicht der Pulldown des Tastkopfs aus um die Datenleitung auf 
Massepotentialzu ziehen.
Für mich haben wir es hier mit einem Timingproblem zu tun. Wo genau weiß 
ich noch nicht.

Daniel du sagst USB läuft um ein vielfaches schneller? Ich weiß nicht 
was die ganzen Angaben in deinen Logs bedeuten. Wie viel schneller.
Eventuell resultieren daraus unsere Probleme. Die USB Version nutzt das 
Wait-Signal nicht, und ist deshalb in meinen Augen sehr anfällig.

Gibt es im Treiber irgendeine Einstellung die die Transferrate 
beschränkt?
#798134
Lesenswert?

Ich benötige mal Eure Hilfe zum Thema Kommunikation:

Für USB - Read steht in der Software folgender Code:
1
    if last_access <> read then
2
    begin
3
        AddToBuffer($91);     // read extended
4
        AddToBuffer($1);      // Address high
5
    end else
6
        AddToBuffer($90);      // read short
7

8
    AddToBuffer(Addr);       // Address low
9
    if immediate then
10
    begin
11
        AddToBuffer($87);     // Send Immediate
12
        SendBytes(OutIndex);    // send off the command
13
        result := GetData;
14
    end else
15
        result := 0;
16
   last_access := read;

für LPT der folgende Code:
1
      OutPort(lpt_control,$00);         // set direction OUT
2
      Delay;
3
      OutPort(lpt_control,$01);         // write do 0 (write)
4
      Delay;
5
      if Addr <> last_address then
6
       begin
7
   OutPort(lpt_base,Addr);  // set adr (data)
8
   Delay;
9
   OutPort(lpt_control,$09);  // adrstb to 0 (slct in)
10
   Delay;
11
   OutPort(lpt_control,$01);     // adrstb to 1 (slct in)
12
   Delay;
13
       end;
14
      OutPort(lpt_base,Val);       // set data (data)
15
      Delay;
16
      OutPort(lpt_control,$03);   // datastb to 0 (autofeed)
17
      Delay;
18
      OutPort(lpt_control,$01);    // datastb to 1 (autofeed)
19
      Delay;
20
      OutPort(lpt_control,$21);      // direction IN
21
      Delay;

Das sind erhebliche Kommando Unterschiede die meines erachtens so nicht 
sein können. Die gleichen Unterschiede habe ich auch bei USB - write.

Kann das so richtig sein, oder müßten nicht immer die gleichen Kommandos 
unabhängig von der Schnittstelle gesendet werden?

Gruß
Frank
#798146
Lesenswert?

Du musst bedenken, dass der extended read notwendig ist für den 
Multiplexer.
0x91 scheint das Kommando für den FTDI zu sein einen extended read zu 
sein gefolgt von der High-Adresse der Low-Adresse gefolgt von dem Befehl 
sofort zu senden. Scheint mir alles plausibel zu sein. (Ich kenne die 
Befehle vom Treiber allerdings nicht)
#798338
Lesenswert?

Hallo Leute,
ich habe die Quellen von MiniLa_win auf meinem Server zum Download 
bereitgestellt.

http://www.derplatinenshop.de/download/minila_win.zip

Im Unterverzeichnis Src befinden zwei Projekte

1. minila.dpr
2. package1.dpk

Im Package1 sind die benötigten Delphi-Componenten enthalten. Diese 
müssen zuerst installiert werden.

Anschließend kann dann das Projekt selber kompiliert werden.

Gruß
Frank
#798390
Lesenswert?

Hallo,
das Testprogramm von FT2232 -> HostEmul habe ich überarbeitet.

Mit diesem Programm könnt Ihr erst einmal die Kommunikation prüfen.
Es findet keine Prüfung einer Version statt.

Mit dieser Anwendung kann zum einen das vorhanden sein einer 
Schnittstelle geprüft werden sowie die Kommunikation mit der CPLD.

In der Zip-Datei sind die Sourcen und die Anwendung in komplilierter 
Form enthalten.

http://www.derplatinenshop.de/download/FT2232C.zip

Mit der Anwendung miniLa kann ich leider erst weitermachen, wenn 
sichergestellt ist, dass Euer Board funktioniert und keine 
Kommunikationsschwierigkeiten hat. Dann bin ich aber gerne bereit das 
ganze auf neue Füsse zustellen.

Was das Testprogramm angeht bitte alle Wünsche und Anpassungen posten.

Gruß
Frank
#798439
Lesenswert?

Hallo!

Danke Frank! Was hast du da geändert? Jetzt klappt jeder 
Verbindungsversuch.
Außerdem scheint das Schreiben zu funktionieren. Ihr könnt z.B.0x80 
senden.
Das bedeutet dass das Capturing gestartet wird. Erkennbar an der 
mittleren LED. 0x40 bedeutet Reset ->mittlere LED geht aus.
Das funtioniert einwandfrei.
Aber beim Lesen bekomm ich immer nur 0xff....
Ideen warum?

MfG Hias
#798482
Lesenswert?

Mein MiniLA liegt in der Firma, deswegen kann ich erst Montag was dazu 
sagen.
Zum Thema Timing, Geschwindigkeit:
Unten rechts auf den OSZIBildern sieht man die Timenbase. Einmal
sind es 50 us pro div, das andere mal 500ns pro div.
USB ist also grob gesagt (sehr grob!) um Faktor 100 schneller.
#798491
Lesenswert?

> Eder Matthias wrote:
> Jetzt klappt jeder Verbindungsversuch.

@hias
welche Anwendung hast Du verwendet. FT2232 habe ich nur aufgeräumt und 
lesbar gemacht.
An miniLa habe ich nichts verändert.

Könnt Ihr auf dem Bus messen, was zurückgegeben wird? Wenn ja, kann so 
festgestellt werden, ob es am Programm liegt oder an der Hardware, wenn 
nicht, müssen wir uns überlegen, wie ich die Rohdaten angezeigt bekomme, 
es kann ja auch an der Empfangsroutine liegen. Ich würde dann einen 
Monitorfunktion einbauen, die die Rohdaten die von USB geliefert werden, 
anzeigt bevor Sie aufbereitet werden.

Gruß
Frank
#798504
Lesenswert?

Hallo!

@Daniel: Du hast beim miniLA10.png einen extended Read auf Addr. 0X0101 
gemacht?

Ich hab das Bild mal analysiert. Als Addresse kommt hier 0xF9 raus und 
als Data 0x87. Das ist reiner Müll.

Mich würde interessieren wie es bei einem Write ausschaut. Dieser 
funtioniert ja anscheinend mit dem Testprogramm.

Die neue *.dll hab ich auch schon getestet bringt auch nichts.

Ich benutze zum testen das Host-Emul Programm in deiner Version.
Da hab ich komischerweise kaum Probleme eine Verbindung aufzubauen.
Mit der Version von FTDI ist das nicht so. Irgendetwas musst du also 
geändert haben :)
Angehängte Dateien:
#798505
Lesenswert?

Hier noch der Link auf das Programmierhandbuch.

http://www.ftdichip.com/Documents/ProgramGuides/D2XXPG34.pdf

Interessant ist, dass die Latenzzeiten sehr stark vom verwendeten Chip 
abhängig sind. Meine erste Vermutung mit der falschen Latenzzeit hat 
sich da auch als korrekt herausgestellt. In der Dokumentation werden 
tatsächlich 16ms für den FT8U232AM und den FT8U245AM und nicht die 
eingetragenen 100ms angegeben andere Bausteine können wohl mit einer 
programmierbaren Latenzzeit arbeiten.

Gruß
Frank
#798636
Lesenswert?

Eder Matthias wrote:
> Ich benutze zum testen das Host-Emul Programm in deiner Version.
> Da hab ich komischerweise kaum Probleme eine Verbindung aufzubauen.
> Mit der Version von FTDI ist das nicht so. Irgendetwas musst du also
> geändert haben :)

@hias
Neu kompiliert. Kann natürlich sein, das die aktuelle Delphi Version 
2007 an irgendeiner Stelle etwas anders macht. Was genau kann ich aber 
leider nicht sagen. Aber laßt uns zufrieden über den kleinen Teilerfolg 
sein.

Es bleibt aber immer noch die Frage, gibt Eure Hardware die korrekten 
Daten zurück. Ist das von Eurer Seite her prüfbar.

Gruß
Frank
Gast #800123
Lesenswert?

So,

ich habe die Hardware auch endlich zusammengelötet. Nachdem ich fast an 
der Programmierung des CPLD verzweifelt bin, (weil das parallele 
Verlängerungskabel ne Macke hatte) scheint nun die Firmware drin zu 
sein. Die Stromaufnahme liegt bei den 400mA die hier schonmal angedeutet 
wurden (vorher ca. 100mA). Leider bekomme ich keinerlei Kontakt. Weder 
über die Parallele Schnittstelle noch über USB. Ich bin weiter am Ball.
#800137
Lesenswert?

Hallo!

Die größte Fehlerquelle ist der Lpt_Port des PCs. Per default ist bei 
nur sehr wenigen Mainboards der EPP-Modus im BIOS aktiviert. Bitte mal 
überprüfen.
Dann sollte zumindest die Kommunikation funktionieren.
Allerdings müsste auch ohne EPP, wenn auch nur die Firmwareversion, 
angezeigt werden.

Hias
Gast #800520
Lesenswert?

Beim (funktionierenden) USB Write (z.B. 0x80 um die LED leuchten zu 
lassen)
passiert auch nichts auf der RW Leitung. jedenfalls triggert mein LA
auf der Leitung keinerlei Flanke bei einem Write 0x80 oder 0x40.
Gast #800539
Lesenswert?

Das USB Interface passt vorne und hinten nicht. Neben der im IDLE 
zustand
auf LOW sitzenden RW Leitung scheint auch das Timing irgendwie im Arsch 
zu sein!
Wenn ich den Write beobachte, dann seh ich dass die Daten schon an
den Adresspins anliegen (0x80 oder 0x40), wenn die AST Leitung gerade 
auf LOW
gezogen wird.
Das ist extrem komisch. Laut meinem LA passiert beim Schreiben mit USB
folgendes:
Adressdaten anlegen, danach Daten anlegen, dann AST auf low, AST wieder 
auf
high, DST auf low, DST auf high. (R/W die ganze Zeit low).
Gast #800552
Lesenswert?

@hias
hm, jetzt ist er wieder auf high. das ist sehr komisch was da abgeht.
Dadurch, dass er aber über den Multiplexer auf LOW gesetzt wird hat
man aber auf jeden Fall eine falsche Flanke drin
Gast #800560
Lesenswert?

Weiteres Problem:
Würde das CPLD die Adressdaten (beim Lesekommando) auf der fallenden
Flanke übernehmen, so würde es die richtigen Adressdaten nehmen. Auf der 
steigenden Flanke von AST ändern sich aber schon die Adressdaten zu den 
normalen Daten ab (bzw. laut LA haben sich sogar schon abgeändert).

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren