Arduino ohne Bootloader mit serieller Kommunikation zum Debug

Hallo

ch brauche mal Eure Hilfe.

Folgende Ausgangssituation: Mein Sketch ist so gross geworden, dass es fast nicht mehr in den den Speicher des Leonardo passt.
Da kam mir die Idee einen USBasp über den ISP als Programmer zu nutzen um die 4 kB des Bootloaders verfügbar zu machen.

  1. Das Flashen klappt auch, aber wie kann ich jetzt über die IDE debuggen ? Eine serielle Kommunikation über den USB Anschluss funktioniert ja nicht mehr.

  2. Obwohl der Bootloader weg ist, zeigt mir die IDE immer noch 28kB verfügbaren Speicher an. Wie kann ic die 4 kB jetzt auch nutzen ?

Freu mich über jeden Tipp...

Kai

Fuses auf Betrieb ohne Bootloader umstellen
Board Definition ändern
Serial1 zum debuggen benutzen.

Wobei, Punkt 1 kann ich kaum glauben!
Habe ich aber auch noch nicht selber probiert.

combie:
Serial1 zum debuggen benutzen.

Wobei er aber einen TTL zu USB Converter braucht.
Grüße Uwe

uwefed:
Wobei er aber einen TTL zu USB Converter braucht.

Wohl wahr.

Mein Sketch ist so gross geworden, dass es fast nicht mehr in den den Speicher des Leonardo passt.

In der Regel ist es das einfachste, den Sketch ein bisschen zu optimieren...
Bzw. noch einfacher/wirtschaftlicher ist es natürlich, etwas größere Hardware zu verwenden.

Hey,

danke für den schnellen Input - jetzt hab ich eine Marschrichtung und versuch das jetzt mal umzusetzen.

@Optimieren: Schwierig- Ein paar Bytes könne ich rausschlagen- zu Ungunsten der Lesbarkeit des Codes.

Schaut mal im Anhang:
Fernsteuerbare und autonome Roboter, die Weg/Ziel Erkennung haben. Da braucht man schon ein paar Bytes für...

Der Code für den ersten Robbi mit Ultraschall passte noch in den Speicher, beim zweiten bin ich bei der Distanzerkennung auf einen Laser umgestiegen und da platzte mir der Speicher .-)

Kai

Schalki 1.PNG

Schalki 2.PNG

painless:
@Optimieren: Schwierig- Ein paar Bytes könne ich rausschlagen- zu Ungunsten der Lesbarkeit des Codes.

Da bist Du einem Irrtum aufgessen.
Weder Variablennamen noch Komentare noch Einrückungen noch NL finden Eingang in den compilierten Sketch. Das ist das meiste was einen Skech leserlich macht.

Zeig uns mal Deinen Sketch und wir geben Dir Tipps woran Du feilen kannst.

Grüße Uwe

Hallo Uwe,

danke für den Hinweis. Das weiß ich.

Mir fehlt das Wissen zu den Interna der IDE/Leonardo/Speicherverwaltung etc. Das suche ich mir über das WEB zusammen....

Daher find ich Eure Arbeit und den Input dazu genial !

Schöne Grüße

Kai

Dipl. Ing.
Nachrichtentechnik

Wieso darfst Du uns den Sketch nicht zeigen?

Grüße Uwe

Hallo,

natürlich kann auch ein Leonardo weiter über USB mit Dir reden, auch wenn kein Bootloader mehr drauf ist.
Du mußt natürlich den USB-Kram für den 32u4 in Dein Programm mit einbauen.
Wieviel Platz das dann wieder braucht, weiß ich nicht. Ich habe mir die zugehörigen Source auch nie angeschaut, auch den Arduino-Bootloader nicht.

Fazit: ich würde auch erstmal meinen Source versuchen aufzuräumen und zu optimieren, wenn es sinnvoll möglich ist.

Gruß aus Berlin
Michael