Sida 1 av 1

ATMega8 samt kanda's "AVR Mini Programmer"

Postat: 14 februari 2007, 10:08:53
av Mackan
Jag har ett problem som jag inte får ordning på.
Jag har en mjukvara till en Mega8 som jag hackat om lite i.......snabbat upp hanteringen av ett litet "Keyboard And Display"-system som var lite segt.
Ändringarna fungerar och jag har testat att allt fungerar OK. Jag programmerar min kontroller via AVR Studio 4 och denna programmering körs utan något problem över huvud taget.
Nu till kruxet.......
Jag vill att servicekillarna på jobbet som skall ändra/programmera om de system som finns ute på fältet inte skall behöva släpa med sig något annat är en liten handhållen programmerare.......typ Kanda's "Mini Programmer".
När jag skall köra över programmet till den handhållna enheten så klagar den bara på att "code size to large for the selected device" och så fungerar det inte.
Jag blir snart tokig.........är det någon här på forumet som råkat ut för något liknande :?:

Kollar man i hexfilen så är koden 0x1D68 bytes stor så det skall ju inte vara några problem över huvud taget tycker jag.

Är det någon som har några ideer :humm:

Mvh.
/Markus

Postat: 14 februari 2007, 16:58:57
av cykze
Hur gör du när du kollar storleken på hex-filen?

Postat: 14 februari 2007, 19:50:19
av JimmyAndersson
Tycker det verkar lite avigt att ange storleken hexadecimalt.

Översätter:
1D68 = 7528 bytes = 7,35kB.

Postat: 14 februari 2007, 20:22:20
av björn
Vadå avigt? Du tycker det är avigt med Hex och sen visar du det i dec istället??
Nejdu, skall det vara så skall det vara binärt, så här kommer det binärt istället 1110101101000 :D :D

Postat: 15 februari 2007, 08:06:22
av Mackan
-> cykze
Jag googlade och hittade denna förklaring på hur hex-filen är uppbyggd.

Following is a typical Hex-record module consisting of four data records and a termination record.

:10010000214601360121470136007EFE09D2190140
:100110002146017EB7C20001FF5F16002148011988
:10012000194E79234623965778239EDA3F01B2CAA7
:100130003F0156702B5E712B722B732146013421C7
:00000001FF

The first data record is explained as follows:
: Start code.

10 Hex 10 (decimal 16), indicating 16 data character
pairs, 16 bytes of binary data, in this record.

01 Four-character 2-byte address field: hex address 0100,
00 indicates location where the following data is to be loaded.

00 Record type indicating a data record.

The next 16 character pairs are the ASCII bytes of the actual program data.

40 Checksum of the first Hex-record.


The termination record is explained as follows:

: Start code.

00 Byte count is zero, no data in termination record.

00 Four-character 2-byte address field, zeros.
00

01 Record type 01 is termination.

FF Checksum of termination record.


-> JimmyAndersson
Nu när vi ändå är på G att vara lite aviga så kör vi det i octalt oxå :lol:
oct = 16550 bytes
Skämt och sido man blir så inne i saker när man håller på så att det bara går av farten......hade jag varit "normal" hade jag nog lagt in det decimalt från början :)


Hur som helst så har jag inte kommit förbi problemet med kanda-programmeraren.
Finns det någon annan smidig handhållen enhet för omprogrammering av tex en Mega8 :?:
Man vill ju som sagt var inte släpa runt halva labbet för att blåsa om en microcontroller ute på fältet

Mvh.
/Markus