Hallo Besucher, der Thread wurde 21k mal aufgerufen und enthält 92 Antworten

letzter Beitrag von Kiwipower am

SD2IEC Dual-AVR LCD

  • Moinsen!


    Nachdem ich mittlerweile erfolgreich eine Kombiplatine auf Lochraster aufgebaut habe, wollte ich mal ein Platinenlayout basteln. Naja....irgendwie habe ich da nicht so richtig das Talent für.
    Hab mal was mit KiCAD aufgebaut, aber irgendwie bekomme ich das Routen nicht so wirklich auf die Reihe.
    Kann sich das mal jemand anschauen und mir da ein wenig weiterhelfen?

  • Bevor ich es vergesse: Der Plan ist gedacht für eines dieser Arduino-SD-Module, die es in der Bucht für 2-3 Euro gibt.
    Die müssen nur ein wenig angepasst werden, da CD, WP und SHIELD nicht verbunden sind.
    Lässt sich aber sehr leicht umbauen.
    Hab mal die Schematics von der SD-Platine und dem dazu angeboenen Level-Shifter (auch eine sehr kleine Platine) angehängt.

  • Hallo nochmal,


    ich habe KiCAD nicht installiert, kannst Du den Schaltplan des SD2IECLCD.sch eventuell als Screenshot posten?
    Ich kann die KiCAD-Dateien mit Eagle nicht importieren.
    Das Level-Shifting übernimmt bei meinen Designs eigentlich immer ein Spannungsteiler auf der Hauptplatine.
    Ich poste mal den schaltplan von mir, der sich eher am LarsP Design orientiert.
    Falls mit der komischen Arduino-Platine dann viele Leitungen oder Steckverbindungen nötig werden sollten, wäre
    ich eher geneigt, einen SMD SD Card Reader einzuarbeiten, auf den ich für 2 Euro Zugriff habe. Die beschaltung können
    wir selber machen ...

  • Super!


    Da mache ich gerne was draus. Ich poste Bilder vom Schaltplan und dem ersten Layout, sobald das fertig ist.
    Es fehlen aber ein paar sachen ... Ich müsste nur noch wissen:
    Der ATMega644 hat keinen ext. Quarz - soll der mit internem laufen? Soll ich nicht lieber einen
    dafür vorsehen?
    Es fehlt der Anschluss für den manuellen Reset. Ich werde die Reset-Leitung über einen Pull-Up an 5V
    ziehen und die Möglichkeit reinbringen, den reset per Taster zu machen.
    Was ist mit den Tasten für DC1 und DC2? Entfallen die wegen des Kodierschalters?
    Apropos Kodierschalter - welchen willst Du da drin haben? Ich muss das passende Eagle-Package raussuchen
    oder selber eines erstellen (Pads, Form, Freiflächen usw.) - da kümmere ich mich aber drum...
    Zum Display - es war ja die Rede von einem 4x20 LCD von Reichelt oder Pollin. Hitachi-kompatibel?


    Ich würde gerne alles auf eine Platine machen, wenn es geht, bin aber für vorschläge offen.
    Was schwierig ist, ist die Größe von Shadowolfs Platine nicht zu übertreffen - es sei denn, wir bestücken beidseitig
    und gehen auf 0603 oder 0402-Bauteile. Das wiederum verursacht beim Bestücken Tobsuchtsanfälle.
    Ich werd mir was überlegen ...


    Nochmal kurz eine Bitte - ich würde gerne den Quellcode für die Firmware sehen. Die Kommunikation über I²C ist
    in keiner meiner Stände enthalten. Normalerweise ist auch der Cardreader über SDI am Prozessor. Hier aber nicht ...
    Der Code muss sich massiv von der bisherigen SD2IEC 0.10.3 unterscheiden ...


    Liebe Grüße


    Andre

  • Die Firmware ist die reguläre von Unseen, die einzige Änderung, die ich gemacht hatte, betraf den Drehencoder im Displaypart.
    Den geänderten Sourcecode hatte ich hier angehängt.
    Die I²C-Geschichte ist im offiziellen Release enthalten.


    Der Schaltplan basiert auf der LarsP-Variante.
    Drehencoder habe ich von Reichelt, Artikelnummer STEC12E06. ALPS STEC12E Drehimpulsg., 24/24, horiz., MT
    Fürs Display ist kein Quarz vorgesehen und auch nicht nötig.
    Display ist ein Santech C2004A, Hitachi-kompatibel. Datenblatt Hier. Beziehe ich über die Bucht bei lilyscasket. Kostenpunkt 10 Euro inkl. Porto.
    Die Taster sind für die Displayversion nicht notwendig, kann man aber, ebenso wie die beiden LEDs, mit einplanen.
    Auf dem Display werden neben Image/Datei auch der aktuelle Inhalt vom Fehlerkanal angezeigt.


    Was die Grösse anbelangt: Das muss nicht unbedingt so superklein werden.
    Vorgesehen hatte ich die Etuigehäuse vorn Reichelt, und das Display selber ist ja nicht gerade klein.
    Ich habe einen Lochrasteraufbau mit DIP-AVRs auf einer Platine von der gleichen Grösse wie das Display untergebracht.

  • Ich hab mal ein altes MMC2IEC 1.6, was hier noch rumlag, umgebaut.
    Atmel gegen nen 644er getauscht, Quarz/Keramikschwinger dazu, Strippen ran, Display dazu, fertig :D

  • Hallo Leute,


    habe hier - basierend auf dem Schaltplan von Euch - einen ersten Entwurf und davon 4 PDFs gemacht:


    Schaltplan, Layout in versch. Ansichten, Bestückungsplan.


    Es werden aber noch ein paar Fragen zu klären sein, ich möchte das Design auch noch drastisch erweitern.
    Momentan ist aber alles drin, was ich von Euch bekommen habe.


    Es fehlen meiner Ansicht nach:


    - Betriebs LED
    - Reset Tasteranschluss
    - Busy / Dirty LED
    - DC1 und DC2 Anschluss
    - Quarz für den zweiten AVR


    Die Schnittstellen zum SD Card Reader und Display sowie Poti habe ich momentan mit Pfostenverbindern gelöst.
    Die sind aber noch leicht an Eure Hardware anzupassen - mache ich dann auf Bedarf.
    Der Quellcode beinhaltet nur die Routinen für den 644P - bitte schicke mir auch den Code vom 1284P... ich will das natürlich
    selber ausprobieren ;-).
    Aber genug davon - seht Euch erstmal die PDFs an, dann haben wir eine gute, weitere Redegrundlage ...

  • Die zip-Datei aus dem anderen Thread beinhaltet Routinen für 644, 644p und 1284p, sowie fertige Binaries für alle 3.
    Schau Dir mal die Batchdateien und so genauer an....


    Aber super Arbeit!
    Die LEDs und Buttons für Autoswap kann man ja optional hinzufügen. Einen zusätzlichen Quarz braucht man nicht; wenn man unbedingt einen supergenauen Takt haben will, kann man den AVR vom SD2IEC per fusebit so konfigurieren, dass er den eigenen Takt an Pin2 ausgibt, und diesen dann am Display-AVR an XTAL1 (Pin13) einspeisen. Eventuell muss man dann noch die LEDs umkonfigurieren, aber das sollte kein Problem sein.
    Der Vorteil, wenn man einen 1284 nimmt, ist der grössere Buffer für die Verzeichniseinträge. Mit dem 644 gehen um die 100 Dateien pro Verzeichnis, mit dem 1284 gute 400.

  • Hallo,


    achso, ja dann verzichte ich auf den Quarz im 644P und möchte mit Euch über Einzelheiten sprechen, die ihr gerne
    geändert / erklärt haben wollt.
    Ich brauchte übrigens den Quellcode (nicht die Hex-Datei )vom 1284, damit ich sehen kann, welcher Port
    an den Busy/dirty LEDs angeschlossen werden muss - oder halt eine Liste davon. Aber ich ziehe mir die Info selber
    raus - vielen Dank erstmal.
    Die Eagle-Library vom Encoder ist übrigens für einen stehenden. habe mir bei reichelt aus versehen einen gewinkelten
    besorgt - da müsste ich vielleicht noch mal beigehen.
    Ich werde den Bestückungsplan auch noch um hilfreiche Infos über die Signale erweitern.


    Wenn alles fertig ist, erzeuge ich Euch über den CAM-prozessor Daten für den Leiterplattenhersteller (Gerber-dateien),
    oder was Ihr sonst so wollt ...


    Liebe Grüße


    Andre

  • Ich nochmal -


    Ich habe mir das nochmal angesehen ...
    Der Schaltplan aus Deiner PDF stimmt nicht mit den Bildern überein. In der PDF ist scheinbar Port A und B beim 1284
    verwechselt worden - deshalb habe ich auch immer wieder wegen SPI nachgefragt (MOSI, MISO, SCK).
    Jetzt muss ich wohl das Layout überarbeiten - das wird so nicht funktionieren ...
    Ich habe die fraglichen Dateien angehängt. Der Quellcode vom 1284 fehlt in Deinen Archiven nach wie vor - es ist nur der Ordner mit den
    kompilierten Dateien drin. Das müsste man sortieren und trennen ...


    Liebe Grüße


    Andre

  • Stimmt....da hab ich nicht aufgepasst.
    Was die Sourcen anbelangt: http://www.sd2iec.de/
    Binaries für alle Modelle: sd2iec-0.10.3-binaries.zip
    Sourcen: sd2iec-0.10.3.tar.gz


    Die einzigen Dateien, die ich geändert habe, sind die Sourcen aus dem Verzeichnis lcd-i2c des Quellcodearchivs.
    Die Binaries für die LarsP-Versionen haben defaultmässig den i2c-LCD-Support aktiviert; im Zweifelsfall mal in den configs nachschauen.


    Eventuell können wir das ja mal kurz per Telefon abklären? Wahrscheinlich reden wir seit Tagen knapp aneinander vorbei...