Programmera Atmel ARM7

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
macgyver
Inlägg: 321
Blev medlem: 8 juni 2005, 00:24:09
Ort: Göteborg
Kontakt:

Inlägg av macgyver »

självklart, ska bara snygga till den lite och testa att den fungerar som tänkt

HEX avkodningen kan ARM:en sköta
det enklaste sättet som jag har testat är att överföra .HEX filer via COM-porten är att skriva i cmd-prompten:
t.ex. MODE COM1:38400,n,8,1 sätter COM1 till 38400bps, ingen paritet, 8-databitar, 1 stopbit

sen skriver man bara COPY FIL.HEX >COM1 så skickas filen till COM1
dessa kan man sen lägga in i en .BAT fil med argument för t.ex bps och filnamn
då slipper man ju skriva ett eget program, eller använda nåt terminalprogram
Användarvisningsbild
Schnegelwerfer
Inlägg: 1863
Blev medlem: 8 november 2004, 13:46:56

Inlägg av Schnegelwerfer »

Det där var ett jäkligt bra tips!
Fungerar det även i XP/W2K?
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

Det var smart!

Tyvärr vet jag inte hur en HEX-fil är uppbyggd, men jag antar att det i början på varje rad står en adress följt av själva datan i HEX-format ?

Har du tänkt att ha en bootloader som ligger i flashen permanent sen? Eller bara en i SRAM:et, det jobbiga med det är ju att man måste skicka över den varje gång man ska programmera, jag gillar inte att använda OCD Commander hela tiden...

/Johan
macgyver
Inlägg: 321
Blev medlem: 8 juni 2005, 00:24:09
Ort: Göteborg
Kontakt:

Inlägg av macgyver »

Japp det fungerar i XP iaf, med Win2000 har jag inte testat men det borde det göra

jag kom på att jag hade kod för att ta emot och spara hexfiler, använde den i ett mp3spelarbygge med en DS89C420 controller.
min student www sida funkar inte just nu så jag lägger den på min ftp sålänge
ftp://modermodemet.mine.nu/hex_download.c
Har du tänkt att ha en bootloader som ligger i flashen permanent sen?
precis, ett program som ligger i flashminnet som använder COM-porten för att ladda program till SRAM:et, och kunna utföra enkla debug funktioner via en textterminal, t.ex. dumpa minne och register, styra I/O enheter osv
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

den koden var väldigt kort och fin, trodde det skulle vara krångligare...

har du tänkt att kompilera alla dina program med en startadress på typ 0x00000500 eller liknande sen eller lägger du bootloadern längst bak i minnet?

hur ska bootloadern aktiveras? genom en i/o pinne vid reset?

/Johan
macgyver
Inlägg: 321
Blev medlem: 8 juni 2005, 00:24:09
Ort: Göteborg
Kontakt:

Inlägg av macgyver »

jag hade tänkt lägga bootloadern på adress 0 så att den alltid startar vid power-up, med den ska man kunna
-- ladda .HEX filer som antingen kan läggas i flashminnet eller ramminnet
-- starta appkationer (via konsolen) i flash och ramminnet
-- debuga
interruptvektorerna hamnar ju då i början på bootloadern, men de kan man ju sätta jumps på som hoppar till RAM-adresser i slutet på ramminnet där de sedan kan dirigeras vidare

jag har börjat skriva på en bootloader, som än så länge bara kan köras från RAM-minnet med OCD_commander

ftp://modermodemet.mine.nu/ARM.rar

du kan testa den om du vill, bara att köra "make all" och ladda in main.elf till kortet med OCD_commander, koppla in RS232 kabeln till com1, (programmet anväder USART0 i ARM:en")
lade med ett enkelt terminalprogram comd, man skriver "comd -b38400" för 38400bps. Det enda bootloadern klarar nu är att dumpa minne :)

edit: glömde att skriva att kristallfrekvensen får ställas in i main.c filen också
[/url]
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

tyvärr har jag bara com 5 och com 6 på denna konstiga dator :)

men det var kul att se din kod!

/Johan
Användarvisningsbild
Hedis
Inlägg: 2493
Blev medlem: 8 december 2003, 15:10:44
Ort: Vänersborg
Kontakt:

Inlägg av Hedis »

Det skall ju inte spela någon roll vilket nr porten har på din Pc om du kör ett terminalprogram. Det enda viktiga är ju att det är USART0 på ARM:en.

Edit: Glöm allt jag skrev.....
Såg nu att det var ett program för pc-sidan med i filen......
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

jag tänkte mest på terminalprogrammet han skickade med.

men du har rätt Hedis, jag kan testa med ett vanligt terminalprogram... enligt koden borde den skriva ut macgyvers namn, jag har nog något strul för jag får inte riktigt igång det, ska kolla vidare.

/Johan
Skriv svar