Na wat posts in de EL kroeg en een nacht prutsen later kom ik er niet meer uit.Als test wil ik is wat experimenteren met een bootloader op een 18F4550.
Mijn opstelling is als volgt:
-PIC18F4550
-Easypic5
-MPLAB met de C18 compiler (student versie)
Het easypic bord heeft een usb uitgang die aangesloten is op de pic. In feite heb ik nu dus de zelfde opstelling als een PICDEM Full Speed USB dev bord.
Vervolgens heb ik het MCHPFSUSB v2.2 USB Framework gedownload welke ook op het PICDEM bord gebruikt wordt. Dit framework bevat de bootloader hexfile voor de pic en de zogenaamde PICDEM FS USB Demo Tool, waarmee ik nieuwe hexfiles in de pic zou moeten flashen.
De bootloader wordt weggeschreven in de 1e geheugenbank van de pic welke loopt tot 007FF. Dit betekend dat mijn eigen programma dus pas vanaf 00800 mag worden weggeschreven.
Vervolgens ben ik zelf een klein testprogrammatje gaan schrijven in C18, welke PORTA.0 zou moeten gaan toggelen.
Klik voor main.c
Klik voor 18f550_bl.lkr
Een aantal bronnen op internet bevestigen mij dat dit "the way to go" is. Wil ik nu met de PICDEM Bootloader tool mijn hex erin schieten krijg ik een write error... Het lijkt er dus op dat mn bootloader overschreven wordt want na deze actie was de bootloader stuk.
Flash uitlezen/ereasen etc gaat gewoon goed, totdat het op schrijven aan komt.
Iemand nog een tip, idee of whatever. In een andere programmertaal/dicalect mag ook.
Alvast bedankt
Mijn opstelling is als volgt:
-PIC18F4550
-Easypic5
-MPLAB met de C18 compiler (student versie)
Het easypic bord heeft een usb uitgang die aangesloten is op de pic. In feite heb ik nu dus de zelfde opstelling als een PICDEM Full Speed USB dev bord.
Vervolgens heb ik het MCHPFSUSB v2.2 USB Framework gedownload welke ook op het PICDEM bord gebruikt wordt. Dit framework bevat de bootloader hexfile voor de pic en de zogenaamde PICDEM FS USB Demo Tool, waarmee ik nieuwe hexfiles in de pic zou moeten flashen.
De bootloader wordt weggeschreven in de 1e geheugenbank van de pic welke loopt tot 007FF. Dit betekend dat mijn eigen programma dus pas vanaf 00800 mag worden weggeschreven.
Vervolgens ben ik zelf een klein testprogrammatje gaan schrijven in C18, welke PORTA.0 zou moeten gaan toggelen.
Klik voor main.c
Klik voor 18f550_bl.lkr
Een aantal bronnen op internet bevestigen mij dat dit "the way to go" is. Wil ik nu met de PICDEM Bootloader tool mijn hex erin schieten krijg ik een write error... Het lijkt er dus op dat mn bootloader overschreven wordt want na deze actie was de bootloader stuk.
Flash uitlezen/ereasen etc gaat gewoon goed, totdat het op schrijven aan komt.
Iemand nog een tip, idee of whatever. In een andere programmertaal/dicalect mag ook.
Alvast bedankt