Atmega8a gleich 328

AVR-Programmierung für Quereinsteiger (Leseprobe)

Published on Dec 14, 2016

Atmel AVR ist eine 8-bit-Mikrocontroller-Familie des Herstellers Atmel. Diese Controller sind wegen ihres einfachen Aufbaus, ihrer leichten Programmie...

Elektor

  • bascomforum.de »
  • Forum »
  • Hardware »
  • Programmier-Adapter »

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

      • 1

      Hallo zusammen,

      kurz zum Hintergrund der Entstehungsgeschichte für den Einsatz des Brenners:

      Inspiriert durch die Anfrage eines Hobbyelektronikers ist eine universelle Anzeigesteuerung für 7-Segmentanzeigen im Mischbetrieb mit LED (Digitaluhr) entstanden, bei der jeweils zwei Digits von einem ATmega8 gesteuert werden; ein ATmega16 dient als Master in diesem kleinen Netzwerk. Zum Einsatz kamen MC aus Fernost, die, obwohl fabrikneu, sich per ISP nicht programmieren ließen.
      Da man mit der Hochvolttechnik ggf. „verfuste“ MC wieder zugänglich machen kann, begann die Suche nach entsprechender Hardware.
      Dabei bin ich auf ein Shield (Erweiterungskarte) für den Arduino 2560 R3 gestoßen.
      Nach einer Änderung der Fusebits war der Zugriff per USBasp-Modul wieder problemlos möglich.
      Alles in allem aus meiner Sicht eine Lösung mit geringen Kosten und der Möglichkeit, sich erstmalig mit den Arduinos zu beschäftigen.

      Hier der Link für das Github-Projekt ......... :https://github.com/dilshan/avr-hv2/
      Projektunterlagen von Dilshan R Jayakody ... : github.com/dilshan

      Neben der Firmware für den Arduino ist eine unter Windows oder Linux lauffähige Anwendersoftware kostenfrei für 28- sowie 40-polige AVR (z. B. ATmega8A, ATmega16A) verfügbar.
      Vor der Installation sind die USB-Treiber für die auf dem Arduino eingesetzten Schnittstellen-IC zu installieren.
      Benötigt wird noch ein 12V-Netzteil (Programmierspannung)mit Anschlussstecker für den Arduino.

      Allerdings gibt es einige Dinge zu beachten:

      1. Möchte man für den 28-poligen Anschluss ebenfalls einen Textoolsockel einsetzten, muss man darauf achten, dass ein Sockel mit einem Reihenabstand von 10,16 mm verwendet wird, was eine eher unübliche Abmessung ist.
      Da es mir nach intensiver Suche nicht gelungen ist, solch einen Sockel kostengünstig zu bekommen, ist eine kleine Adapterplatine entstanden, mit der die üblichen Sockel mit einem Reihenabstand von 7,62 mm eingesetzt werden können.

      2. Der Entwickler hat für sein Shield japanische Transistoren eingesetzt, deren Kennwerte den hier typischen entsprechen. Allerdings ist die Reihenfolge der Anschlüsse vertauscht [Kennzeichnung nach JIS (Japan)] , so dass bei Verwendung (z. B. Typenreihe BC) die Anschlüsse auf der Platine gekreuzt werden müssen.

      3. Die Arduino- Arduino IDE 1.8.19 beinhaltet für die Installation einige USB-Treiber. Für den bei mir verbauten CH340 fanden sich problemlos die passenden Treiber im Internet.
      Version 2.o macht zwar einen optisch attraktiveren Eindruck, aber nach der Installation war die Sprachumstellung nicht möglich.

      Interessenten an den Leiterplatten für Shield/ Adapter können sich gerne bei mir melden.
      Ingolf

      01_PCB.jpg

      02_PCB.jpg

      03_PCB.jpg

      • 2

      Hallo!

      Ich habe einen Fusr Doctor, davor gab es keine Fragen zur Arbeit für ihn, aber ich bin auf ein Problem gestoßen, indem ich versehentlich die Fuse Doctor am Atmega328BP blockiert habe ;-), der Arzt bestimmt die Prozessor-ID korrekt, sagt aber, dass dieser Prozessor von nicht unterstützt wird diese Firmware-Version (ich habe Version 2.11, viel darüber geredet, die Firmware mit 328BP und anderen relativ seltenen Prozessoren zu modifizieren, aber ich konnte immer noch keine Firmware finden)

      Und jetzt lügt Atmega328BP und wartet auf die Auferstehung

      Atmega8a gleich 328

      Dateien

      • DSCN0022.JPG

        (591,81 kB, 12 mal heruntergeladen, zuletzt: 1. Juni 2022, 19:32)

      • DSCN0023.JPG

        (602,23 kB, 9 mal heruntergeladen, zuletzt: 1. Juni 2022, 19:32)

      • DSCN0024.JPG

        (471,48 kB, 10 mal heruntergeladen, zuletzt: 1. Juni 2022, 19:32)

      • 3

      Bitte schreibe immer richtig.
      Der Übersetzer kann nicht korrigieren.

      Warum 3x das gleiche Bild?

      Atmega8a gleich 328

      Sonic schrieb:

      indem ich versehentlich die Fuse Doctor am Atmega328BP blockiert habe

      Meinst du wirklich den Atmega328BP ?
      Schreibfehler?

      Nach meiner Recherche ist der Atmega328PB nicht für den Fuse-Doctor geeignet:
      github.com/SukkoPera/avr-fusebit-doctor

      • 4

      Atmega8a gleich 328

      Michael schrieb:

      Bitte schreibe immer richtig.Der Übersetzer kann nicht korrigieren.

      Warum 3x das gleiche Bild?

      Ich entschuldige mich, aber ich kann dafür kein Deutsch und ich benutze einen Übersetzer, wenn Sie einen guten Online-Übersetzer empfehlen können, bin ich Ihnen sehr dankbar.

      Atmega8a gleich 328

      Atmega8a gleich 328

      Sonic schrieb:

      indem ich versehentlich die Fuse Doctor am Atmega328BP blockiert habe

      Meinst du wirklich den Atmega328BP ?Schreibfehler?

      Nach meiner Recherche ist der Atmega328PB nicht für den Fuse-Doctor geeignet:

      Ja, ich habe genau 328PB (leider war es nicht möglich, den Chip selbst zu fotografieren, damit die Markierung normal zu sehen war.

      • 5

      Ich werde in unseren Foren nach einer modifizierten Firmware für den Arzt mit Unterstützung für 328PB-Wiederherstellung suchen, ich habe sogar darüber nachgedacht, einen einfachen Parallelprogrammierer für Atmega zu bauen

      Atmega8a gleich 328

      In Bezug auf das Foto habe ich versehentlich 3 fast identische Fotos hochgeladen (lassen Sie eines, wenn Sie können)

      Atmega8a gleich 328

      • 6

      Atmega8a gleich 328

      Sonic schrieb:

      ich benutze einen Übersetzer, wenn Sie einen guten Online-Übersetzer empfehlen können, bin ich Ihnen sehr dankbar.

      Ich benutze gerne deepl.com

      Vielleicht kannst du besser auf englisch schreiben.

      Du musst den nicht neu bauen.
      Du kannst den Fuse-Doctor neu programmieren.

      • 7

      Kann dieser deepl.com-Übersetzer besser übersetzen?

      Ich spreche auch nicht genug Englisch

      Atmega8a gleich 328

      OK danke, ich werde versuchen, den Atmega328bp neu zu bauen.

      • 8

      Wird der Atmega328bp nicht exakt so behandelt wie der Atmega328/p? Dann wäre nur die Signature Tabelle zu ändern. Oder eine "ignoriere" Funktion (wie bei Pony)

      Atmega8a gleich 328

      • 9

      Pluto25 schrieb:

      Wird der Atmega328bp nicht exakt so behandelt wie der Atmega328/p? Dann wäre nur die Signature Tabelle zu ändern. Oder eine "ignoriere" Funktion (wie bei Pony)

      Atmega8a gleich 328

      Ich habe Pony schon lange nicht mehr benutzt, es gibt zwar einen selbstgebauten Programmierer für den LPT-Port, aber ich glaube nicht, dass es helfen wird, da es mit SPI geflasht wird.

      Ich habe dem Entwickler Fuse Doctor genau die gleiche Frage gestellt (ich warte immer noch auf eine Antwort), aber logischerweise, wenn sich 328P von 328PB unterscheidet, ist es nicht viel, in der Dokumentation für 328pb die gleichen Bytes an Sicherungen wie bei 328p.

      Atmega8a gleich 328

      • 10

      Pony war nur als Beispiel erwähnt, da es auch Chips beschreiben kann dessen Signature nicht passt.
      Obwohl

      Atmega8a gleich 328

      Die Lpt hätte genug Pins. Ob Herr Lanconelli sich motivieren lässt ein PonyProg3000HV zu erstellen?
      Atmega8a gleich 328

      Ist das Jemand anders als Dilshan bei Github? Dieser Code ist veröffentlicht und könnte angepasst werden. (Von jemanden, der besser C spricht als ich

      Atmega8a gleich 328
      )
      PS Sollen nur die Fuses zurückgesetzt werden oder wird er als vollwertiger Programmierer eingesetzt?

      • 11

      Pluto25 schrieb:

      Pony war nur als Beispiel erwähnt, da es auch Chips beschreiben kann dessen Signature nicht passt.
      Obwohl

      Atmega8a gleich 328

      Die Lpt hätte genug Pins. Ob Herr Lanconelli sich motivieren lässt ein PonyProg3000HV zu erstellen?
      Atmega8a gleich 328

      Ist das Jemand anders als Dilshan bei Github? Dieser Code ist veröffentlicht und könnte angepasst werden. (Von jemanden, der besser C spricht als ich

      Atmega8a gleich 328
      )
      PS Sollen nur die Fuses zurückgesetzt werden oder wird er als vollwertiger Programmierer eingesetzt?

      Tatsache ist, dass Pony Prozesse über SPI schreibtTatsache ist jedoch, dass bei nicht korrekt eingestellten Sicherungen das SPI nicht funktioniert

      Atmega8a gleich 328

      Ja, dort fügen die Leute selbst die Firmware hinzu und modifizieren sie (ich habe die ursprüngliche neueste Version 2.11), aber jetzt gibt es Version 2.16, die alle Prozesse behandelt, der Doktor kann nur den Prozessor wiederherstellen (aber ich bin sicher, dass, wenn Sie die ändern Firmware, können Sie durch den Doctor und flashen)

      Atmega8a gleich 328

      • 12

      Das ist eher simpel. Wie gut ist Dein C ? Finde die Stelle an der das dritte Signature Byte verglichen wird und füge 0x16 als gleich atmega328p hinzu. Damit wird er den 328bp genau so behandeln als wäre er ein 328(p)
      Oder ändere die 0x14 (für den 238) in 0x16. Jedoch funktioniert er dann nicht mehr mit einen echten 238.

      Das wäre ein schönes Projekt. Ist ein Protokoll mit dem der Bascom Programmierer mit der Hardware spricht bekannt?

      • 13

      Natürlich habe ich sofort versucht, die Atmega 328pb -Kennung in den Code einzufügen

      Atmega8a gleich 328

      dort ist alles nicht so einfach und deshalb werden 328pb (und ein paar andere) nicht hinzugefügt.
      Atmega8a gleich 328

      Ja, es wäre nicht schlimm wenn jemand die "Sensible" Firmware finalisieren würde, dass der Arzt auch die Prozessoren flashen könnte, meiner ist auf Atmega8 zusammengestellt und die Firmware belegt dort 7808 Bytes, also wenn du "Super Doctor" machst dann mindestens 168 bzw höher, aber über das Interaktionsprotokoll als Bascom oder Arduino

      Atmega8a gleich 328

      • 14

      Ist das irgendwo zu finden?
      Ich habe nur das vom STK500 gefunden aber dies ist falsch?
      Es werden zwar 7 Byte gesendet (1b 01 00 01 0E 01 14) aber keins davon ist 31

      Atmega8a gleich 328

      "The PC sends this command to check if the starterkit is present "
      Atmega8a gleich 328

      • 15

      Ich werde sehen, wo ich das Thema im Forum gesehen habe, wo die Möglichkeit diskutiert wurde, eine Firmware für den Arzt zu schreiben, damit er die Prozessoren programmieren kann (und auf dem Arzt wird es möglich sein, die Prozessoren sowohl in SPI als auch parallel zu programmieren Modus)

      Wenn Sie mit der Bank arbeiten, können Sie sehen, wie der Bootloader funktioniert (dort ist meines Wissens nach nichts schwierig).

      Atmega8a gleich 328

    • bascomforum.de »
    • Forum »
    • Hardware »
    • Programmier-Adapter »