Hello, Guest the thread was called4.4k times and contains 39 replays

last post from C=Mac at the

Wie bekomm ich die Software in den AtMega ??

  • Ich klau mir das Anschlussschema immer vom das-Labor-SVN. ;)
    Guckstu hier: https://www.das-labor.org/trac…rboard-2006-schematic.png


    Für dich ist nur die linke obere Ecke im Schaltplan interessant, also der Kasten wo was von MOSI, MISO, SCK und so weiter steht. Einfach die Pinne nachschauen, im Schaltplan ist zwar ein Mega32 abgebildet, der Mega64 ist aber was den ISP angeht Pinkombatibel.

  • danke, bestens.


    das sieht alles recht klein aus. Da kommt mir doch die Idee, dass man das mit ins sd2iec einbauen kann. Nur das wirft gleich die nächsten Fragen auf:


    Brauch ich unbedingt den Reset am Pin 9 des AtMega um die Firmware einzuspielen?...wenn nicht spar ich etwas Platz im Gehäuse.


    Stört es das SD2IEC später im Betrieb wenn ich an den nicht belegten Pins 6 7 8 den 74HC244 angelötet habe, auch wenn dieser ja nur zum updaten der Software Strom bekommt? - Oder sollte ich da einen Schalter zwischen setzen?

  • Du willst das der ISP den Mikro reseten kann, sonst kommt der ISP, hier Beispielsweise avrdude, nicht an den Bootloader.

    Mmmh.....ist doch alles neu für mich. Ich versuchs mal zu verstehen:
    'Du willst, dass der "Hardware zum Flashen" den "AtMega" reseten kann, sonst kommt "das Programm zum Flashen", hier beispielsweise avrdude, nicht an den Bootloader.'


    Wenn das so richtig verstanden ist, dann geh ich jetzt mal davon aus, dass ich den Reset zum flashen brauche, weil ich sonst den bootloader nicht in den AtMega bekomme...???

  • Der Bootloader ist da schon drauf, das passiert schon in der Fabrik.


    Jetzt kommt aber das Problem. Wenn du den Mikrocontroller mit Strom versorgst springt der Bootloader an, wartet eine kurze Zeit ob da jemand mit ihm reden will und springt danach ins geflashte Programm. Also muss der ISP, genaugenommen das ISP-Programm auf deinem PC, dafür sorgen das ihn der Bootloader erwartet und nicht das geflashte Programm. Ergo gehört da ein Reset mit dran.


    Übrigens ist es keine schlechte Idee den Reset auch nach "draußen" zu führen, schließlich kann man auch die SD2IEC Firmware in eine Ecke bugsieren aus die sie selber nicht mehr raus weiß.

  • Naja, gut. dann kommt der halt mit rein. bin jetzt mal davon ausgegangen, dass ich den evtl. wenn überhaupt notwendig nur zum flashen brauche, und da hätten mir 2 Stifte auf der Platine gereicht wo ich dann in dem seltenen Fall dass ich flashe nen Jumper drauf gesetzt hätte
    Aber wenn er später das ganze SD2IEC resetet ist natürlich auch prima.


    Naja, die wichtigere Frage ist irgendwie untergegagen:

    Stört es das SD2IEC später im Betrieb wenn ich an den nicht belegten Pins 6 7 8 den 74HC244 angelötet habe, auch wenn dieser ja nur zum updaten der Software Strom bekommt? - Oder sollte ich da einen Schalter zwischen setzen?

  • Der Bootloader ist da schon drauf, das passiert schon in der Fabrik.


    Nein, die für MMC2IEC relevanten Mikrocontroller sind "leer" wenn sie aus der Fabrik kommen. Also kein Bootloader. Du meintest sicher Bausätze.


    Zitat von »michael-b-173«
    Stört es das SD2IEC später im Betrieb wenn ich an den nicht belegten Pins 6 7 8 den 74HC244 angelötet habe, auch wenn dieser ja nur zum updaten der Software Strom bekommt? - Oder sollte ich da einen Schalter zwischen setzen?


    Man darf bei solchen Bausteinen die Versogungsspannung nicht abschalten, wenn an den Eingängen noch Signale anliegen können.
    Bau den Programmer mit dem 74HC244 separat auf und schließe ihn an das MMC2IEC über ein Kabel/Buchse an. Dann kannst Du das Kabel abziehen und bist sicher, dass die Funktion des MMC2IEC nicht gestört wird.


  • Nein, die für MMC2IEC relevanten Mikrocontroller sind "leer" wenn sie aus der Fabrik kommen. Also kein Bootloader. Du meintest sicher Bausätze.


    Nein, ich meine das stückchen Programm was bei der Auslieferung auf dem Mikro drauf ist, den Urbootloader welcher per $ISP-Software gesteuert wird.
    Ohne diesen Urbootloader könnte man den AVR nur im Hochstrom-Modus beschreiben.

  • Nein, ich meine das stückchen Programm was bei der Auslieferung auf dem Mikro drauf ist, den Urbootloader welcher per $ISP-Software gesteuert wird.
    Ohne diesen Urbootloader könnte man den AVR nur im Hochstrom-Modus beschreiben.


    Ok, verstehe was Du meinst. Ob die ISP-Funktionalität in den Atmegas wirklich in Software gelöst ist, entzieht sich meiner Kenntnis. Evtl. ist das auch einfach ein Sack voller Schieberegister und Zähler.

  • Man darf bei solchen Bausteinen die Versogungsspannung nicht abschalten, wenn an den Eingängen noch Signale anliegen können.
    Bau den Programmer mit dem 74HC244 separat auf und schließe ihn an das MMC2IEC über ein Kabel/Buchse an. Dann kannst Du das Kabel abziehen und bist sicher, dass die Funktion des MMC2IEC nicht gestört wird.

    es würden ja keine signale anliegen. mir gings ja nur darum ob der AtMega probleme kriegt wenn ich alles andere mit auf die selbe Platine löte. Idee war einfach ein SD2IEC in EIN Gehäuse zu pressen an dem die folgenden Anschlüsse zu finden sind: IEC, LPT, 5V.
    Mir gings einfach darum ob ich zwischen dem AtMega und dem 74HC244 einen Schalter setzen muss. Eine Verbindung zum PC würde nicht ständig bestehen. Fürs Flashen würd ich dann das LPT-Kabel kurz anklemmen.

  • Da der 74HC244 ein Tri-State Buffer ist, müsste man eigentlich nur Pin 1 und Pin 19 auf High legen, damit er sich "abschaltet" und die Eingänge des AVR nicht stört. Es müßte also reichen, wenn Du an Pin 1 und 19 des 74HC244 einen Pullup-Widerstand, z.B. 10KOhm, gehen 5V anschließt, so dass er automatisch "abgeschaltet" wird, wenn kein LPT-Kabel angeschlossen ist.

  • äh... das ist so, als ob Du ein Bild aufhängen wolltest und jetzt fragst, ob das stört, wenn Du den Hammer mit an die Wand hängst.


    Also... klar kannst Du den ISP-Programmierer und das SD2IEC auf einer Platine aufbauen - WENN Du gewährleistest (z.B. über abziehbares Kabel oder MEHRpoligen Schalter), dass Du den ISP-Programmierer vom SD2IEC trennen kannst - aber sinnvoll ist das wirklich nicht.


    Den ISP-Programmierer wirst Du ja auch immer wieder für alles mögliche verwenden können, also tu Dir selbst den Gefallen und investiere den Euro für eine separate Platine - und bau Dir da einen ISP-Programmierer mit Programmiersockel auf, wie das auf Antabakas Seite beschrieben ist.


    edit: Der "mehrpolige" Schalter darf natürlich auch das OUTPUT ENABLE sein, dass Draco angerissen hat - aber wie gesagt - das ist der Hammer an der Wand.

  • Mal ne spontane Idee: Kann man nicht den 74HC244 auch am Userport anschließen, bzw ein Programm zum programmieren (WER KANNS?) schreiben um die Firmware zukünftig am CeVi zu erledigen? Nicht jeder hat noch nen LPT........
    die BIN-Datei mit neuer Firmware könnte man dann doch vielleicht direkt von der SD-Card holen, oder evtl. auf SD kopieren und auf einer echten 1541 (oder 1581...oder was auch immer, je nach Größe) zwischenlagern.

  • Das würde gehen. Beim Userport hast Du nur das Problem, dass die Stecker kaum mehr verfügbar sind, deswegen würde ich das lieber am Joyport sehen. Wenn nur der Faktor Zeit nicht wäre, würde ich sofort damit anfangen...


    ich versteh zwar nicht wie das übern joyport gehn soll, aber machs..... :wilkommen:


    Userportstecker kannste einen abhaben, wenn du die software hinbekommst. :weihnachten: hier liegen irgendwo noch einige sehr wenige. vielleicht ist das einfacher zu programmieren......?

  • die BIN-Datei mit neuer Firmware könnte man dann doch vielleicht direkt von der SD-Card holen, oder evtl. auf SD kopieren und auf einer echten 1541 (oder 1581...oder was auch immer, je nach Größe) zwischenlagern.


    Die meisten Leute lösen das Problem so, dass sie einen Bootloader auf den AVR programmieren der neue Firmware-Versionen auf der SD-Karte sucht und ohne den C64 zu benötigen selbstständig aufspielt wenn erkannt.