Spróbuj kodu jaki umieszczam w załączniku. Poprawiłem to i owo i udało się skompilować. Należało zamienić instrukcje in i out na LDS i STS. Ciekawi mnie co innego: TOMLOADER powinien bezproblemowo zaprogramować Twój procesor, jednak zastanawiam się jak będzie wyglądała zakładka "postęp"... O ile się nie mylę powinien pokazać 2x większą ilość stron niż faktycznie wynika to z objętości ładowanego pliku. Najważniejszą dla mnie informacją jest to czy program poprawnie zapisze cały kod do procesora: czy ostatnia strona do zapisu nie ulegnie przekłamaniom. Pozdrawiam
TOMLOADER
body {font: 10pt verdana; margin: 8px;}
h1 {font-size: 14pt; color: navy; margin-bottom: 4px;}
#Header {border-bottom: solid 1px black; font-size: 13pt; margin-bottom: 4px;}
#Info {margin-top: 12px; display: block; height: 80%;}
#Footer {border-top: solid 1px black; padding-top: 4px;}
TOMLOADER - bootloader dla AVR
Instrukcja obs³ugi
Tutaj znajdziesz odpowiedzi na najczê¶ciej pojawiaj±ce siê
pytania:
Wymagania systemowe
Przygotowanie procesora
Pod³±czanie
procesora do komputera
Jak
dzia³a TOMLOADER?
Obs³uga
TOMLOADER'a
Skróty klawiszowe
W przypadku awarii...
Programowanie procesora przez terminal
1. Wymagania systemowe & nbsp; & nbsp; & nbsp;
[powrót]
& nbsp;
Aplikacja TOMLOADER do poprawnego dzia³ania wymaga pakietu
NET.Framework w wersji conajmniej 2.0. Aby mo¿liwe by³o
zaprogramowanie mikrokontrolera, w systemie musi zostaæ wykryty port
szeregowy do którego pod³±czono AVR.
& nbsp;
2. Przygotowanie
procesora & nbsp; & nbsp; & nbsp;
[powrót]
- skompiluj za³±czony projekt AVR Studio pod typ procesora jaki u¿ywasz
- przy pomocy dowolnego programatora obs³uguj±cego mikrokontrolery AVR
wgraj wsad (plik HEX w katalogu projektu) do procesora
- ustaw fusebity na startowanie z sekcji bootloadera (rozmiar 256B)
- zalecane jest ustawienie uk³adu Brown Out Detection na 4V (je¿eli u¿ywasz
zasilania 5V)
3.
Pod³±czanie procesora do komputera & nbsp; & nbsp; & nbsp; [powrót]
Potrzebujesz tylko linie TX/RX i masê. Port pracuje z
parametrami: & nbsp;8 bitów danych / brak kontroli parzysto¶ci / 1 bit
stopu.
4. Jak dzia³a TOMLOADER? & nbsp; & nbsp; & nbsp;
[powrót]
TOMLOADER umo¿liwia zaprogramowanie mikrokontrolera AVR
Mega przy u¿yciu zwyk³ego portu COM. Program wczytuje plik w formacie
Intel-Hex, wygenerowany przez AVR Studio, i przesy³a jego zawarto¶æ w
formacie binarnym do bootloadera umieszczonego w mikrokontrolerze.
5. Obs³uga TOMLOADER'a & nbsp; & nbsp; & nbsp;
[powrót]
- pod³±cz procesor do
portu COM w komputerze (przewód prosty lub & nbsp;krosowany - w zale¿no¶ci
od tego jak pod³±czy³e¶ np. MAX232 do wej¶æ uC
- uruchom TOMLOADER'a
- wci¶nij przycisk
& quot;ZAPROGRAMUJ & quot; lub SPACJÊ, aby wczytaæ plik HEX
- po wczytaniu pliku klawisz
& quot;ZAPROGRAMUJ & quot; stanie siê nieaktywny, & nbsp;obok niego pojawi
siê klawisz & quot;OK - wci¶nij po restarcie & quot;
- zrestartuj procesor: wy³±cz i w³±cz
zasilanie lub na chwilê zewrzyj & nbsp;wyprowadzenie RESET procesora do
masy (np. microswitch'em)
- po restarcie booloader w procesorze
przez ok. 1,5 sekundy oczekuje & nbsp;na nawi±zanie komunikacji z
programem TOMLOADER, po tym czasie procesor uruchamia w³a¶ciwe
& nbsp; & nbsp;
oprogramowanie u¿ytkownika
- w ci±gu max 2 sekund od restartu wci¶nij
przycisk & quot;OK & quot; lub SPACJÊ, & nbsp;
& nbsp; & nbsp; aby rozpocz±æ programowanie
- po nawi±zaniu po³±czenia z
procesorem programowanie zostanie rozpoczête automatycznie, a u¿ytkownik
bêdzie informowany o postêpie w zak³adce & quot;Postêp & quot;
- po zakoñczeniu programowania w zak³adce
& quot;Informacje & quot; zostanie wy¶wietlone podsumowanie
- mo¿esz przerwaæ programowanie procesora
w dowolnej chwili wciskaj±c klawisz ESC lub przycisk ANULUJ
& nbsp; 6. Skróty klawiszowe & nbsp; & nbsp; & nbsp;
[powrót]
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; o
- zak³adka & quot;Ustawienia & quot;
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; x -
zak³adka & quot;HEX & quot;
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; p
- zak³adka & quot;Postêp & quot;
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; i -
zak³adka & quot;Informacje & quot;
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; q -
wyj¶cie z programu
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; h -
pomoc
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; SPACJA
- rozpoczêcie programowania
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ESC
- przerwanie programowania
& nbsp; 7. W przypadku awarii... & nbsp; & nbsp; & nbsp;
[powrót]
Je¿eli w programie wyst±pi± jakie wyj±tki, których
nie obs³u¿ono, lub program nie dzia³a poprawnie, proszê o kontakt: wy-konam@biznespoczta.pl
. W mailu umie¶æ screen zak³adki & quot;Informacje & quot; oraz
ewentualne inne informacje mog±ce pomóc w ustaleniu przyczyny
problemu. Ponadto podaj wersjê systemu operacyjnego i zainstalowane
Service Pack'i
8. Programowanie procesora przez terminal & nbsp; & nbsp; & nbsp;
[powrót]
Je¿eli nie jest mo¿liwe uruchomienie TOMLOADER'a, do
zaprogramowania procesora mo¿esz u¿yæ dowolnego programu
terminalowego (np. Hyper Terminal, Real Term). Pod³±cz procesor do
portu COM, skonfiguruj parametry portu zgodnie z p.3 i nawi±¿ po³±czenie.
Zrestartuj mikrokontroler. Na terminalu przez czas max 1,5 sekundy
pojawiaæ siê bêdzie znak & quot;? & quot;. W tym czasie wpisz na
klawiaturze: & quot;pr & quot;. Procesor potwierdzi wej¶cie do trybu
programowania komunikatem & quot;T & quot;, po czym przejdzie do
wymazywania sekcji aplikacji. Gdy wymazywanie zostanie ukoñczone na
termianalu uka¿e siê znak & quot;! & quot; co oznacza, ¿e mo¿na wys³aæ
dane do mikrokontrolera. Wtedy u¿yj opcji & quot;Wy¶lij plik & quot;. W
trakcie przesy³ania danych mikrokontroler bêdzie wysy³aæ do
terminalu znak & quot;+ & quot; po ka¿dym odebranym bajcie. Po przes³aniu
ca³ego pliku, procesor zrestartuje siê samoczynnie, po czym uruchomi
nowe oprogramowanie u¿ytkownika.
UWAGA! - plik wysy³any
przez terminal MUSI byæ w postaci binarnej tj. z rozszerzeniem & quot;.bin & quot;.
Konwersji mo¿esz dokonaæ np. przy u¿yciu PonyProg. & nbsp;
UWAGA! - je¿eli bootloader
nie wykryje przez 2 sekundy ¿adnej transmisji z terminalu, przejdzie do
uruchamiania programu z sekcji aplikacji mikrokontrolera (adres 0f0000).
Autor: in¿.
Tomasz Sklenarski