Forum: Mikrocontroller und Digitale Elektronik ATMega 328P Arduino eigenes Modul Hochladen nicht möglich


von Steffen R. (steffenr)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe mal wieder ein Problem an dem ich schon seit langer Zeit 
verzweifel.

Ich benötige für meine Hausautomatisierung ein RS485 Modul der mehrere 
Schalteingänge für meine Lichttaster hat und einfach in eine 
Unterputzdose passt. Leider habe ich sowas nicht gefunden und deshalb 
habe ich selbst solch ein Modul erstellt. Platine machen lassen und 
zusammen gelötet. Auf einen leeren 328P Chip einen Arduino Bootloader zu 
brennen ist mir nach Misserfolgen mit einen China USBASP und einem 
originalem USBASP dann mit einem USBAVR MKII mit Atmel Studio wohl 
einmal geglückt. Aber da ich keine Ahnung von Fuse usw habe, dann wohl 
doch nicht richtig. Dann kam mir der Einfall, dass ich einfach von einem 
Arduino Nano den Chip ablöte und diesen benutze. Doch auch auf diesen 
lässt sich mit der Arduino IDE kein Sketch hochladen (mit FTDI Adapter). 
Zurück auf dem Nano gelötet und dort funktioniert es.
Also stimmt wohl mit der Schaltung oder Platinenlayout meines Modules 
etwas nicht. Aber was?

Wäre für einen Tipp dankbar.

Gruß
Steffen

von Arduinoquäler (Gast)


Lesenswert?

Steffen R. schrieb:
> Wäre für einen Tipp dankbar.

Auf die Schnelle:

Auf deinem Board erkenne ich einen Quarz, richtig?
Wenn das so ist braucht dieser zwei Lastkapazitäten
18-22 pF. Dazu müssen auch Fuses umprogrammiert werden.

Also funktioniert ein Arduino-328 nicht einfach nach
dem Umlöten auf deinem Board. Denn auf den Arduino Nanos
ist ein Keramischer Resonator drauf der anders
behandelt wird.

von Steffen R. (steffenr)


Lesenswert?

Arduinoquäler schrieb:
> Steffen R. schrieb:
>> Wäre für einen Tipp dankbar.
>
> Auf die Schnelle:
>
> Auf deinem Board erkenne ich einen Quarz, richtig?
> Wenn das so ist braucht dieser zwei Lastkapazitäten
> 18-22 pF. Dazu müssen auch Fuses umprogrammiert werden.
>
> Also funktioniert ein Arduino-328 nicht einfach nach
> dem Umlöten auf deinem Board. Denn auf den Arduino Nanos
> ist ein Keramischer Resonator drauf der anders
> behandelt wird.

Vielen Dank für die schnelle Antwort.

Ja es ist dieser Quarz: 
http://www.produktinfo.conrad.com/datenblaetter/1000000-1099999/001009305-da-01-en-QUARZ_MT_16_000MHZ_SMD.pdf

ProMini und Nano sind im Endeffekt gleich bis auf USB und FTDI?

Mit Fuses programmieren habe ich leider keine Ahnung. Eher gesagt 
bekomme ich noch nicht einmal eine Verbindung hin zum Chip über den 
USBAVR MKII.
Darum wäre mir eine Lösung ohne Bootloader brennen und Fuses umstellen 
lieber.
Gibt es einen Keramischer Resonator in der Bauform das ich dieses 
einfach gegen den Quarz ersetzen kann? Wenn nicht ändere ich halt das 
Platinenlayout und lasse nochma eine neue Platine herstellen. Reicht es 
wenn der Quarz gegen den keramischen Resonator ersetzt wird oder braucht 
der dann noch was?

Gruß
Steffen

von Flip B. (frickelfreak)


Lesenswert?

DE RE muss low gehalten werden, damit der UART nicht blockiert wird. Der 
pullup muss gegen einen pulldownwiderstand ersetzt werden. Die 
lötstellen an den tht stiftleisten haben zu wenig zinn und deshalb teils 
keinen Kontakt.

: Bearbeitet durch User
von Arduinoquäler (Gast)


Lesenswert?

Steffen R. schrieb:
> zum Chip über den USBAVR MKII.
--------------------^^^^^^^^^^^^

Was ist das für ein Gerät? (ich kenne das nicht)

Steffen R. schrieb:
> Darum wäre mir eine Lösung ohne Bootloader brennen und Fuses umstellen
> lieber.

Das klingt nach Chaos.
Also entweder Bootloader oder ISP, mehr gibt es nicht. Aber
die ISP-Verbindungen hast du ja sträflicherweise schon mal
nicht vorgesehen.

von Draco (Gast)


Lesenswert?

Wieso hast du auf deiner Platine keinen ISP vorgesehen?! o.O

Grundsätzlich werden Atemgas immer über ISP programmiert, Bootloader 
sind zwar eine schöne Sache, helfen aber bei ernsten Problemen nicht 
(Sprich Fuses).

Also tue dir selber einen gefallen und mach den ISP zugänglich auf 
deiner neuen Platine.

Steffen R. schrieb:
> Mit Fuses programmieren habe ich leider keine Ahnung.

Dann mach sie dir bitte, lese dich ein, so schwer ist das nicht.

von Arduinoquäler (Gast)


Lesenswert?

Draco schrieb:
> .... lese dich ein, so schwer ist das nicht.

Wobei man das mit AVR Studio verbal und ohne Bit/Hex-
Gepfriemel frei Haus geliefert bekommt.

von Dieter S. (Gast)


Lesenswert?

Wichtig ist, wenn du den Bootloader für 16 MHz geflasht hast, muss es 
ein 16 MHz Quarz oder ein 16 MHz Keramikresonator sein.
Dabei ist es egal ob Quarz oder Resonator.

Ich vermute aber auch einen Fehler auf der Platine. Wie schon 
geschrieben, fehlende Lastkondensatoren oder auch eine schlechte 
Lötstelle. Die sehen teilweise nicht so perfekt aus.

von Steffen R. (steffenr)


Angehängte Dateien:

Lesenswert?

Hallo,

"Was ist das für ein Gerät? (ich kenne das nicht)"

Sorry falsch geschrieben USBAVRISP XPII (siehe Bild)


"die ISP-Verbindungen hast du ja sträflicherweise schon mal
nicht vorgesehen."
"Wieso hast du auf deiner Platine keinen ISP vorgesehen?! o.O"

Weil ich sonst immer nur mit Arduinos gespielt habe und garnicht dran 
gedacht hatte das auf einem Atmel Chip, wenn man ihn einzeln kauft, kein 
Arduino Bootloader drauf ist und das man dieses erst per ISP draufladen 
muß. Darum habe ich mir so einen Stecker gekauft den man direkt auf den 
Chip hält. (siehe Bild, weißer Stecker)

"Also tue dir selber einen gefallen und mach den ISP zugänglich auf
deiner neuen Platine."

Werde ich berücksichtigen und mich auch in die Fuses Thematik einlesen 
für zukünftige Projekte.



Aber ich habe es eben geschafft ein Sketch über die Arduino IDE 
hochzuladen. Habe den Resonator vom Nano gegen den Quarz getauscht und 
wieder den Nano 328P Chip draufgelötet und schon ging es :)
Also lag es am Quarz.  Ja die Lötstellen sehen nicht gut aus aber haben 
Verbindung. Werde diese aber nochmal nachlöten.

Ich danke euch allen für die sehr schnelle und umfangreiche Hilfe.
Wenn jetzt auch noch alles mit der RS485 Komunikation funktioniert lade 
ich das Kicad Projekt und den Arduino Sketch hier hoch. Kann aber leider 
noch dauern.


Gruß
Steffen

von Arduinoquäler (Gast)


Lesenswert?

Steffen R. schrieb:
> Sorry falsch geschrieben USBAVRISP XPII (siehe Bild)

Ich sehe kein Bild.

Und diese Bezeichnung (USBAVRISP XPII) ist mir auch fremd.

von Steffen R. (steffenr)


Angehängte Dateien:

Lesenswert?

Hallo,

sorry Bilder vergessen.

von Arduinoquäler (Gast)


Lesenswert?

Steffen R. schrieb:
> Darum habe ich mir so einen Stecker gekauft den man direkt auf den
> Chip hält.

Aha jetz kommt Licht ins Dunkel.

Damit kannst du ja auch die Fuses umprogrammieren. Einfach
rein in das Atmel Studio und den Programmier-Dialog starten.

von Dieter S. (Gast)


Lesenswert?

Steffen R. schrieb:
> wieder den Nano 328P Chip draufgelötet und schon ging es :)
> Also lag es am Quarz.

Also am Quarz liegt es nicht, sondern an den fehlenden 
Lastkondensatoren. Die werden beim Keramikresonator nicht benötigt, da 
diese integriert sind.

von Arduinoquäler (Gast)


Lesenswert?

Dieter S. schrieb:
> Also am Quarz liegt es nicht, sondern an den fehlenden
> Lastkondensatoren.

Stimmt. Ich habe bei einem Nano die Fuses gelesen - sie
stehen bei diesem (mit Resonator) genau so wie bei einem
normalen Quarz.

Zum Schaltplan: direkt an jeden Vcc Pin (4, 6, 18) gehört
ein Abblock-C, am Spannungsregler selbst auch noch einer nach
Herstellerempfehlung.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.