Forum: Mikrocontroller und Digitale Elektronik Bootloader chip45boot2 ATmega1284P startet nicht (immer)


von Holger D. (hodoe)


Lesenswert?

Moin, habe hier den neuesten Bootloader installiert und verwendet die 
neueste IDE. Es handelt sich um einen ATmega1284P mit MAX232-Chip für 
die serielle Schnittstelle und betrieben wird das ganze mit einem 8 MHz 
Quarz.

Wenn ich in der IDE den Bootloader kontakitiere, dann klappt dies hoch 
bis 57,6 K. Das flashen funktioniert auch fehlerfrei. Gelber 
Fortschrittsbalken, dann sozusagen alles auf grün. Allerdings startet 
das Programm im AVR nicht.

Kontaktiere ich mit 9600 baud und programmiere dann, dann startet auch 
das Programm.

Woran kann das liegen. Eine Anfrage über das Kontaktformular von chip45 
wurde leider nicht beantwortet.


Gruß
Holger

von Oliver S. (oliverso)


Lesenswert?

Holger D. schrieb:
> Allerdings startet
> das Programm im AVR nicht.

Startet das auch nach einen Reset nicht?

Oliver

von S. Landolt (Gast)


Lesenswert?

> Allerdings startet das Programm im AVR nicht.

Woran wird das erkannt, d.h. was soll das Programm machen?

von Holger D. (hodoe)


Lesenswert?

Oliver S. schrieb:
> Startet das auch nach einen Reset nicht?

Richtig. Egal ob aus der chip45-IDE oder AVR_Reset oder Spannung aus und 
wieder ein, das Programm startet nicht. Es wird ein 2x16 OLED 
angesteuert und es wird auch direkt beim Einschalten ein Relais 
eingeschaltet.

Wie gesagt, bei 9600 baud läuft es.


Holger

von S. Landolt (Gast)


Lesenswert?

> Wie gesagt, bei 9600 baud läuft es.

Nun ja, da ist der Fehler auch nur 0.2 % - bei den genannten 57.6 kBd 
jedoch 2.1 oder gar 3.5.
  Aber ob es daran liegt? Lässt sich mit den bisherigen Informationen 
nicht beurteilen.

von Holger D. (hodoe)


Lesenswert?

S. Landolt schrieb:
>> Wie gesagt, bei 9600 baud läuft es.
>
> Nun ja, da ist der Fehler auch nur 0.2 % - bei den genannten 57.6 kBd
> jedoch 2.1 oder gar 3.5.
>   Aber ob es daran liegt? Lässt sich mit den bisherigen Informationen
> nicht beurteilen.

Welche weiteren Informationen hätten wir denn gerne? Wie ich schrieb, 
klappt der Kontakt. Auch das Flashen scheint zu funktionieren. Es gibt 
keine Fehlermeldungen und der gelbe Fortschrittsbalken wechselt zu grün. 
Übrigens startet das Programm auch bei 38400 und 19200 baud nicht. Bei 
9600 baud funktioniert alles wie es soll. Allerdings dauert es dann auch 
ewig.


Holger

von S. Landolt (Gast)


Lesenswert?

> Welche weiteren Informationen hätten wir denn gerne?

"wir"? -??

> Übrigens startet das Programm auch bei 38400 und 19200 baud nicht.

Dann liegt also das Problem woanders.

von DerEinzigeBernd (Gast)


Lesenswert?

Holger D. schrieb:
> Es gibt
> keine Fehlermeldungen und der gelbe Fortschrittsbalken wechselt zu grün.

Das bedeutet nicht, daß das Flashen funktioniert, das bedeutet nur, daß 
das Programm keine Fehlermeldungen ausgibt und munter seinen 
Fortschrittsbalken pinselt.

Du müsstest Dir schon das Protokoll Deines Bootloaders selbst ansehen, 
und was der Bootloader beim Empfangen der Datenblöcke und beim 
Programmieren dieser so von sich gibt.

In der Dokumentation 
https://www.chip45.com/download/chip45boot2_infosheet.pdf ist auf Seite 
3 sogar beschrieben, was da passieren müsste; Du brauchst nur noch einen 
"Mithörer", der der seriellen Verbindung zwischen Deinem PC und dem µC 
mit seinem Bootloader drauf zuhört und den Inhalt ausgibt.

Du kannst auch anstelle des Programmes mit dem Fortschrittsbalken ein 
Terminalprogramm wie Teraterm verwenden und von Hand die beschriebenen 
Kommandos und Daten an den Bootloader senden. Dann siehst Du auch die 
Antworten, die der Bootloader von sich gibt.

von Holger D. (hodoe)


Lesenswert?

DerEinzigeBernd schrieb:
> Das bedeutet nicht, daß das Flashen funktioniert, das bedeutet nur, daß
> das Programm keine Fehlermeldungen ausgibt und munter seinen
> Fortschrittsbalken pinselt.

Das glaube ich nicht so ganz. Denn wenn es zu einem Fehler kommt (aus 
versehen Stromquelle ausgeschaltet, D-SUB-Stecker sitzt nicht richtig), 
dann gibt es ja einen Abbruch und eine Fehlermeldung.

> Du brauchst nur noch einen
> "Mithörer", der der seriellen Verbindung zwischen Deinem PC und dem µC
> mit seinem Bootloader drauf zuhört und den Inhalt ausgibt.
> Du kannst auch anstelle des Programmes mit dem Fortschrittsbalken ein
> Terminalprogramm wie Teraterm verwenden und von Hand die beschriebenen
> Kommandos und Daten an den Bootloader senden. Dann siehst Du auch die
> Antworten, die der Bootloader von sich gibt.

Das werde ich bei Gelegenheit machen.


Gruß
Holger

von spess53 (Gast)


Lesenswert?

Hi

>...betrieben wird das ganze mit einem 8 MHz Quarz.

Sicher, das du von einem Quarz sprichst und nicht von dem internen 
Oszillator?

MfG Spess

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.