Hallo Besucher, der Thread wurde 23k mal aufgerufen und enthält 54 Antworten

letzter Beitrag von Seiker am

XS1541 Lochraster

  • PonyProg ist gerade gestorben für mich -- so ein Schrott!!


    Hihi...


    Zitat

    Nach dem Aufspielen des Bootloaders und den Setzen der Fuses wird die Firmware aufgespielt - entweder über den MAX232 an einem seriellen Port wie z.B. COM1 oder über das LittleUSB.


    Bietet das LittleUSB eigentlich Handshake-Leitungen? Wenn ja könnte man im nächsten Projekt dieser Art ja mal ein paar Jumper vorsehen um den AVR darüber statt über den Parallelport mit Bootloader zu versehen, geht unter Windows mit avrdude wahrscheinlich sogar ohne GiveIO. Ich hatte das mal vor einiger Zeit mit einem FT232RL-Adapter ausprobiert - es ist zwar furchtbar langsam (~1 Minute pro KB, inkl. Verify), aber IMHO ein wenig Endanwender-freundlicher.

  • PonyProg ist gerade gestorben für mich -- so ein Schrott!!
    Wenn ich schon eine Anleitung brauche, um ein einfaches Programm zu konfigurieren, ist es schon Mist.
    Das habe ich dann gemacht, die ersten Screenshots für die Doku erstellt und... die aktuelle Version 2.07c Beta Jan 6 2008 unterstützt den 644p nicht - das ist ja wohl ein schlechter Scherz!
    Ein bischen gegoogelt... es gibt wohl Patches, die dann je nach verwendeter Programmversion und verwendetem PC besser, schlechter oder gar nicht arbeiten.

    Hm, ich konfigurier da eigentlich ausser dem Programmieranschluss gar nichts.
    Die gepatchte (funktionierende) Version für den 644p gibt's hier (aus gegebenem Anlass): Link.
    Oder auf meiner MMC2IEC-Seite unter Punkt 99.2 (Direktlink zum Download).

  • Bietet das LittleUSB eigentlich Handshake-Leitungen?


    Das LittleUSB hat die Handshake Leitungen (CTS,RTS,DSR,DTR,DCD,RI) (siehe PDF und Schaltplan) die auch vom Windows Treiber unterstützt werden. Aber ich hätte das eigentlich noch nie gebraucht. Auch ohne Handshake Leitungen geht der Betrieb mit 115200 Bd ohne Fehler und programmieren per Bootloader funktioniert gleich schnell wie per ISP.

  • Wenn man einen lötfähigen Draht hat, bei dem der extra-Schritt des Verzinnens entfällt und der auch mehrere Verbindungen mit einem Draht erlaubt, also das Löten "irgendwo mittendrin am Draht" und nicht nur an den Enden, ist das sicher eine enorme Erleichterung.


    Also nach meiner bisherigen Erfahrung mit der Wiring Pen kann ich folgendes sagen:

    • Das mit dem Verzinnen des Anfang vom Draht ist ein super Tip von dir.


    • Mit einem Draht mehrere Punkte verbinden geht mit meinem Draht perfekt. Einfach den Draht um eine Lötstelle wickeln und weiter geht es. Am Schluss kann man sehr gut die umwickelten Stellen verlöten. Man muss halt etwas länger drauf heizen, um der Isolierung Zeit zu lassen sich zu lösen.


    • Die Endpunkte (Anfang und Endpunkt) kann man oft gut in die Bohrung der Print stecken beim (oder vor) dem Verlöten. Der Draht hat gut Platz neben einem Pin eines Sockel oder eines IC oder anderen Bauteils.





    Wenn ich Unseen richtig verstanden habe, meinte er, dass man mit diesen Leitungen und entsprechender Software einen ISP nachbilden kann. Damit könnte auch jemand, der keinen ISP hat, den Bootloader auf den Chip bekommen.


    Das wäre natürlich möglich, wenn man sich die geeignete Software schreibt. Man würde sich den Bootloader sparen. Auf der anderen Seite braucht ein Bootloader ja fast nix, interessant wäre das bei den Tiny oder ganz kleinen Atmega.

  • Das wäre natürlich möglich, wenn man sich die geeignete Software schreibt. Man würde sich den Bootloader sparen. Auf der anderen Seite braucht ein Bootloader ja fast nix, interessant wäre das bei den Tiny oder ganz kleinen Atmega.


    *seufz* Ok, nochmal zum mitschreiben: Wenn man eine halbwegs vollständig beschaltete serielle Schnittstelle hat, kann man an den Leitungen davon wackeln und so per Bitbanging nahezu beliebige Protokolle fahren die nicht timingkritisch sind. So kann man zB einen AVR via ISP programmieren, ähnlich wie es oft mittels Parallelport gemacht wird. Der Vorteil das via einem seriellen Port zu machen ist, dass man dafür meines Wissens unter Windows keinen Spezialtreiber wie GiveIO installieren muss sondern die Software (avrdude kann das, Ponyprog möglicherweise auch) einfach so läuft. Nachteil dabei ist, dass es bei einem Test mit einem FT232 den ich mal gemacht habe extrem langsam war, aber wenn man nur einen kleinen Bootloader schreibt stört es nicht, dass das Programmieren eine Minute(!) pro Kilobyte braucht.


    Wenn man das serielle Interface ansonsten zur Kommunikation mit dem AVR verwenden will braucht es aber auf jeden Fall ein paar Jumper um zwischen Normalbetrieb und Programmiermöglichkeit umzustellen.

  • st das hier der fädeldraht?
    dann bestelle ich mir mal ne rolle


    Ja das sieht genau so aus wie meine Rolle. Die kann man direkt hinten an die Wire Pen hängen.



    der ist ansich isoliert und nur da wo ich anlöte dann nicht mehr ja? sorry wenn die frage wieder zu doof ist... bevor ich fehler mache lasse ich mich aber lieber auslachen ;)


    Es gibt keine doofen Fragen, nur doofe Antworten


    Ja so ungefähr. Aber es funktioniert nicht so blitzartig wie das erst vermutet habe. Die Isolierung ist ziemlich stabil, ist auch gut so. Man muss mit dem Lötkolben schon mehrere Sekunden dran bleiben und zwar mit Druck.


    Bei den Enden geht es am einfachsten, weil da kann man das Kupfer berühren mit der Lötspitze. Man merkt auch dass der Draht dann schnell warm wird.


    Man muss erst ein wenig üben mit der Technik. Dann aber kann man sehr gut damit arbeiten (ist wohl überall so). Der Draht läßt sich auf alle Fälle fantastisch modellieren (biegen, Ösen), aus Gründen der Stabilität kann man auch die Löcher in der Lochraster benutzen um die Ebene zu wechseln.


    Es giibt auch spezielle Halteleisten, wo man die Fäden entlang führen kann. Habe ich aus Kostengründen nicht bestellt.



    Fädeln von unprofessioneller Hand sieht dann etwa so aus (nicht schön, aber es funzt):



  • Nachteil dabei ist, dass es bei einem Test mit einem FT232 den ich mal gemacht habe extrem langsam war, dass das Programmieren eine Minute(!) pro Kilobyte braucht.


    Kann ich mir vorstellen. Der USB hat den Nachteil dass Packages nur ca. mit 1KHz Takt zum selben Endpoint kommen. Also kann man nur alle 1ms eine Signalleitung direkt ändern.


    USB ist nur schnell, wenn große Paketgrößen verwendet werden. Ein "intelligentes" Endgerät das Protokolle wie ISP durchführt wird man da für effizientes arbeiten wohl immer benötigen.

  • a so ungefähr. Aber es funktioniert nicht so blitzartig wie das erst vermutet habe. Die Isolierung ist ziemlich stabil, ist auch gut so. Man muss mit dem Lötkolben schon mehrere Sekunden dran bleiben und zwar mit Druck.


    das wollte ich hören :D
    etwas länger mit dem lötkolben spielt keine rolle, hauptsache man hat ordentlichen dünnen draht zum modellieren und verlöten!


    Habe ich aus Kostengründen nicht bestellt.


    werde ich auch nicht... lohnt nicht bei meinen sachen


    Fädeln von unprofessioneller Hand sieht dann etwa so aus (nicht schön, aber es funzt)


    das ist immer meine devise beim basteln hier... für SCHÖN bin ich zu unbegabt und grobmotorisch LOL
    aber mir ist bisher ansonsten alles soweit gelungen, was für mich mehr zählt ;)


    dann werde ich das teil mal ordern! danke für die tips leute!


    ps: es gibt auch dumme fragen... ;)
    aber die sind dann wirklich unter aller kanone :bgdev

  • hab nen max232 Acpe hier liegen


    geht der auch?


    Ja.


    Laut Datenblatt braucht ein MAX232 1 µF, ein MAX232A nur noch 0,1µF. Größer darf der Wert schon sein, im Schaltplan habe ich 10µF vorgesehen (und ich habe z.B. die Platine eines Steuerungscomputers mit NSC800 CPU, MAX232 und sogar 22µF hier, der über Jahre im Einsatz war) - nur kleiner als 1µF bzw. 0,1µF beim MAX232A darf die Kapazität nicht sein, sonst schafft die Spannungspumpe das nicht mehr.


    Zur Kontrolle kannst Du die erzeugten Spannungen mit einem Multimeter messen:


    Die eine Leitung des Multimeters immer an Pin 15 GND=0V, die andere an:


    Pin 16: hier sollte +5V als Versorgungsspannung anliegen
    Pin 2: V+ -- hier sollte irgendwas zwischen +9V und +10V sein
    Pin 6: V- -- hier sollte irgendwas zwischen -9V und -10V sein



    Was hast Du da eigentlich tolles gebaut, Diddl?

  • Sorry, für das Doppelposting, aber unseens Posteingang ist voll:


    ich habe jetzt mal eine Weile gegoogelt, wie so ein ISP-Programmer mit FT232RL mit ein "paar Jumper umstecken" aussehen könnte, aber nichts wirklich brauchbares gefunden.


    Über ftisp bin ich gestolpert, das angeblich recht schnell arbeiten soll - aber das scheint closed-source zu sein und ist zudem schlecht bis gar nicht dokumentiert.


    Du hast ja geschrieben, Du hättest so etwas schon gemacht -- kannst Du mir sagen, wie bzw. mir entsprechende Links oder einen Schaltplan / avrdude-Parameter zukommen lassen?


    Wenn ich das hinbekomme, würde ich das gerne als "last-minute-Änderung" in das XS1541 einfliessen lassen -- Du hast sicher Recht mit Deiner Idee, dass das Umstecken eines Jumpers zum Aufspielen des Bootloaders benutzerfreundlicher ist, als sich extra einen ISP-Programmer zu kaufen/basteln oder wieder geflashte AVRs durch die Gegend zu schicken.

  • Sorry, für das Doppelposting, aber unseens Posteingang ist voll:


    Und das ist gut so.


    Zitat

    ich habe jetzt mal eine Weile gegoogelt, wie so ein ISP-Programmer mit FT232RL mit ein "paar Jumper umstecken" aussehen könnte, aber nichts wirklich brauchbares gefunden.


    Ich habe keine Ahnung ob man sowas im Netz überhaupt findet. =)


    Zitat

    Du hast ja geschrieben, Du hättest so etwas schon gemacht -- kannst Du mir sagen, wie bzw. mir entsprechende Links oder einen Schaltplan / avrdude-Parameter zukommen lassen?


    Such dir irgendeinen der programmer-Einträge aus der avrdude.conf heraus der "type = serbb" hat (zB dasa), setze die Zahlen für de Signale anhand der Pinbelegung einer 9-Pin-Seriell-Schnittstelle um und hänge die AVR-Pins an die passenden FT232-Signale. IIRC gibt der FT232 in der Defaultkonfiguration alles so aus dass avrdude es als Invertiert ansieht, d.h. man muss entweder den FT232 umkonfigurieren (IMHO eher eine schlechte Idee weil das dann evtl. nicht zum AVR passt) oder die avrdude.conf editieren um dem gewählten Eintrag ein paar ~ zu verpassen wo sie fehlen (bei dasa einfach: ~ vor alle 4 Zahlen).


    Zitat

    Wenn ich das hinbekomme, würde ich das gerne als "last-minute-Änderung" in das XS1541 einfliessen lassen -- Du hast sicher Recht mit Deiner Idee, dass das Umstecken eines Jumpers zum Aufspielen des Bootloaders benutzerfreundlicher ist, als sich extra einen ISP-Programmer zu kaufen/basteln oder wieder geflashte AVRs durch die Gegend zu schicken.


    Mindestens RESET sollte per Jumper auftrennbar sein (gibt sonst "unerklärliche" Resets je nach Terminalprogramm), MISO/MOSI/SCK nur wenn SPI oder die Handshaking-Signale verwendet werden oder eines davon beim gewählten Programmer-Typ an RXD/TXD hängt.


    Laut avrdude.conf-Eintrag gibts wohl auch eine Belegung die auch von Ponyprog verwendet wird, es wäre dann nur noch zu klären ob man bei Ponyprog auch die nötige Signalinvertierung einstellen kann.