Docelowo potrzebuje uruchomić bootloader USB na atmedze32 (sprzętowy interfejs USB odpada z uwagi na to że musiał bym użyć xmegi która wymaga innego standardu programowania a to dodatkowe koszty itp. ;
odpada też połączenie bootloadera UART z przejściówką FT232RL bo ja tu widzę więcej komplikacji niż zalet)
Ponieważ jednak bootloadery tworzone głównie są na te najbardziej popularne uc jak np. atmega8(8) to postanowiłem że najpierw uruchomię bootloader z atmegą88(PA).
Rozważam:
USBAspLoader http://www.obdev.at/products/vusb/usbasploader.html
do niego znalazłem taki schemat:
http://www.forbot.pl/forum/upload_img/obrazki/IMG_4c7d66b7accc47332.png
ale mam co do schematu wątpliwości ponieważ w komentarzach w plikach nagłówkowych autor pisze że urządzenie ma być zasilane z 3,5 V i dlatego trzeba podłączyć diody zenera przy zasilaniu a na schemacie ich nie ma.
Musze zaznaczyć że bootloader tworzony był pod atmege88 a ja mam atmege88PA. Nie spodziewałem się że będzie to robić jakąś różnice ale okazało się że te mikro kontrolery mają inną sygnaturę.
Próbowałem uruchomić ten bootloader korzystając z powyższego schematu i gotowego hexa dla m88(ze strony autora). Najpierw ustawiłem fuebity w ten sposób:
wyższy bajt fuse bitów na 0xd6
niższy bajt fuse bitów na 0xdf
efuse powinny być na 0x00 ale AS nie pozwala wyzerować 5 najstarszych bitów (ale w nocie piszą że są niewykorzystane więc myślę że to nie problem)
Następnie wymazałem całą pamięć FLASH.
Następnie zmieniłem w AS lockbity na :
1) No memory lock features enabled
2) Application Protection Mode 1: No Lock on SPM and LPM in App. Sector
3) Boot Loader Protection Mode 2: SPM prohibity in Boot Loader Sector
Z jakiegoś powodu wartość hex tych lockbitów nie dało się usatwić na taką samą jak u autora, ale według mnie powyższe ustawienia wydają się ok.
Efekt jest taki że gdy wykonam powyższe czynności wykrywa mi to jako uszkodzone urządzenie USB (niezależnie czy zworka na PD7 - warunek uruchomienia bootloadera - jest zwarta do masy czy nie), natomiast gdy wymaże cały FLASH to po podłączeniu do USB nic się nie dzieje.
Co może byc nie tak?
Inne bootloadery którymi jestem zainteresowany to np:
BootloadHID http://www.obdev.at/products/vusb/bootloadhid.html
lub
AVRUSBBoot http://www.fischl.de/avrusbboot/
Może ktoś miał styczność z którymś z powyższych i mógłby mnie poprowadzić?
odpada też połączenie bootloadera UART z przejściówką FT232RL bo ja tu widzę więcej komplikacji niż zalet)
Ponieważ jednak bootloadery tworzone głównie są na te najbardziej popularne uc jak np. atmega8(8) to postanowiłem że najpierw uruchomię bootloader z atmegą88(PA).
Rozważam:
USBAspLoader http://www.obdev.at/products/vusb/usbasploader.html
do niego znalazłem taki schemat:
http://www.forbot.pl/forum/upload_img/obrazki/IMG_4c7d66b7accc47332.png
ale mam co do schematu wątpliwości ponieważ w komentarzach w plikach nagłówkowych autor pisze że urządzenie ma być zasilane z 3,5 V i dlatego trzeba podłączyć diody zenera przy zasilaniu a na schemacie ich nie ma.
Musze zaznaczyć że bootloader tworzony był pod atmege88 a ja mam atmege88PA. Nie spodziewałem się że będzie to robić jakąś różnice ale okazało się że te mikro kontrolery mają inną sygnaturę.
Próbowałem uruchomić ten bootloader korzystając z powyższego schematu i gotowego hexa dla m88(ze strony autora). Najpierw ustawiłem fuebity w ten sposób:
wyższy bajt fuse bitów na 0xd6
niższy bajt fuse bitów na 0xdf
efuse powinny być na 0x00 ale AS nie pozwala wyzerować 5 najstarszych bitów (ale w nocie piszą że są niewykorzystane więc myślę że to nie problem)
Następnie wymazałem całą pamięć FLASH.
Następnie zmieniłem w AS lockbity na :
1) No memory lock features enabled
2) Application Protection Mode 1: No Lock on SPM and LPM in App. Sector
3) Boot Loader Protection Mode 2: SPM prohibity in Boot Loader Sector
Z jakiegoś powodu wartość hex tych lockbitów nie dało się usatwić na taką samą jak u autora, ale według mnie powyższe ustawienia wydają się ok.
Efekt jest taki że gdy wykonam powyższe czynności wykrywa mi to jako uszkodzone urządzenie USB (niezależnie czy zworka na PD7 - warunek uruchomienia bootloadera - jest zwarta do masy czy nie), natomiast gdy wymaże cały FLASH to po podłączeniu do USB nic się nie dzieje.
Co może byc nie tak?
Inne bootloadery którymi jestem zainteresowany to np:
BootloadHID http://www.obdev.at/products/vusb/bootloadhid.html
lub
AVRUSBBoot http://www.fischl.de/avrusbboot/
Może ktoś miał styczność z którymś z powyższych i mógłby mnie poprowadzić?