Dies ist mein erstes Atmega-Projekt, daher habe ich folgende Fragen:
Ja.
Nur wenn Sie es bereits mit einem seriellen Bootloader programmiert haben. Andernfalls verwenden Sie ISP oder HVPP wie gewohnt.
Okay? Das ist keine Frage.
AVCC muss angeschlossen sein. Wahrscheinlich möchten Sie den nPEN auch an einen Switch anschließen.
Nein. Sie werden ab Werk unprogrammiert geliefert, mit Ausnahme der ATmega103-Kompatibilitätssicherung. Vergessen Sie nicht, diese Sicherung vor der Verwendung zu deprogrammieren.
Ja. Es wird auch empfohlen, einen 100-nF-Kondensator möglichst nahe an VCC und GND jedes Paares zu platzieren. Auf den meisten modernen Geräten sehen Sie VCC/GND nebeneinander, um dies zu vereinfachen.
Normalerweise wird ein Mikrocontroller schaltungsintern über einen bestimmten Port programmiert. Bei Atmega ist dies normalerweise eine Art SPI-Port (genannt ISP) zusammen mit RESET. Bei moderneren Geräten ist es ein "TWI-Port". Es ist oft ziemlich gut im Datenblatt beschrieben. Über diesen Port können Sie die Gerätespeicher schreiben und löschen sowie Fuses setzen. Sie benötigen jedoch auch ein bestimmtes Hardware-Tool (oft auch vom Hersteller hergestellt; manchmal können Sie eines von Drittanbietern erhalten - aber achten Sie auf den Software-Support!).
Aufgrund dieser Einschränkungen (ungewöhnliche Hardwareverbindung, Hardwaretools usw.) schreiben Leute Bootloader. Auf der Arduino-Plattform kann der ATMEGA zB über eine serielle Schnittstelle teilweise umprogrammiert werden. Dazu muss der ATMEGA jedoch mit dieser Bootloader-Software vorprogrammiert werden. Die Vorprogrammierung muss über ISP erfolgen.
Dies ist in den meisten Fällen in Ordnung. Möchte nur auf ein paar Dinge hinweisen:
Ziehen Sie RESET über einen Pull-up-Widerstand hoch, um den Chip zum Laufen zu bringen. Verbinden Sie alle VCC/GND-Paare, einschließlich AVCC/AGND. Wenn es einen AREF-Pin gibt, müssen Sie manchmal auch einen 100-nF-Kondensator auf GND legen.
Nein, nicht automatisch. Dies wird jedoch oft als Blinky-Test bezeichnet. Wenn Sie einen Blinky-Test hochladen können, haben Sie bestätigt, dass Sie Folgendes können:
Dann müssen Sie herausfinden, ob die Oszillatorgeschwindigkeit korrekt ist, und dann können Sie mit dem Schreiben von echtem Code beginnen.
@1: Ja, Sie müssen alle VCC- und GND-Pins verbinden. Dazu gehören AVCC und AGND.
@2: Führt das Gerät Ihr Programm aus? Hat der Programmierer einen Fehlercode zurückgegeben?
@4: Schließen Sie für jeden einzelnen VCC-Pin einen Entkopplungskondensator an. Faustregel 100nF Keramik.
@5: Einige Geräte unterstützen möglicherweise JTAG-Tests oder eine ähnliche Debug-Schnittstelle (debugWIRE), aber ich bezweifle, dass dies als "einfach" gilt.
Beku Ch
Ignacio Vazquez-Abrams
Jippie
Bence Kaulics