[Metalab] AVR / LINKER guru gesucht (SOLVED)
overflo
flo at tekstix.com
Tue Mar 10 20:05:14 CET 2015
ohai,
danke fuer die guten tipps.
hab das auf intern@ weiter besprochen, das ist immer der krampf mit
mehreren mailinglisten.
ich hab mein problem wie folgt geloest:
1. i uploaded the micronucleus bootloader and set the fuses
2. i plugged in the device and uploaded the userspace programm over usb
3. i DUMPED the contents of the attiny (avrdude -p attiny85 -P usb -c
usbtiny -U flash:r:flash.hex:i)
4. i write those contents back to a new device -> win.
i will take a look at the .hex files later to see whats really going on.
if anyone is interested in doing research there i can provide allt he
.hex files.
right now i found a soltion and can now flash all my devices with one run.
hurra.
-flo
Am 10/03/15 um 13:38 schrieb Herbert Poetzl:
> On Tue, Mar 10, 2015 at 12:34:39PM +0100, Erwin Erkinger wrote:
>> hi,
>> Jakob hat schon die meisten Sachen geklärt - nur ein paar
>> zusätzliche Anmerkungen:
>> Hex-Files:
>> Je nach Generator wird im HEX File oft das „unbenutzte“
>> Memory fälschlicherweise mit „0“ aufgefüllt. Wenn schon
>> auffüllen dann mit 0xFF. Ev. überlappen sich auch die beiden
>> HEX-Files in Ihrem Adressraum. Zwei Hexfiles zusammenstückeln
>> funktioniert damit ev. nicht richtig.
>> Flash-Memory:
>> Wenn Flash gelöscht wird (zB. vor dem programmieren) werden
>> alle Zellen auf 0xFF gesetzt. Das eigentliche Programmieren
>> kann die Bits einer Memory-Zelle nur auf 0 zurücksetzen. Das
>> Löschen des Memorys geht nur Blockweise - wie groß diese
>> Blöcke sind steht im Datenblatt der CPU.
>> Bootsektor:
>> Oft ist die Segmentierung des Flash so gelöst das ein kleiner
>> Sektor existiert der für den Bootloader vorgesehen ist. Dort
>> zeigt auch der Reset-Vektor hin.
>> —> Fazit:
>> die beiden HEX-Files verbinden und dann auf einmal
>> programmieren ist aus meiner Sicht die einzig effektive
>> Lösung.
> https://pypi.python.org/pypi/IntelHex/1.1
>
> Kann hex files korrekt mergen.
>
> Natuerlich gehts auch mit (g)awk oder vi :)
>
> best,
> Herbert
>
>
More information about the Metalab
mailing list