ds30 bootloader als programmer

Deze pagina wordt niet meer bijgehouden (14-Jul-2016)
Is deels vervangen door: http://www.knutselaar.eu/WP/ds30-firmware-aanmaken/

De uiteindelijke bedoeling van bootloaders is dat je je microcontroller zonder hardware programmer zoals b.v. de wisp648 of PICkit 2 kunt programmeren.
Om een bootloader te kunnen gebruiken moet je zoals eerder genoemd een seriële verbinding naar een PC hebben.
Zeker in die gevallen dat er om andere redenen al een seriële verbinding is, is het een voordeel een bootloader te gebruiken.

Hoe gaat het een en ander in zijn werk?

Het ds30 bootloader GUI programma op de PC (ds30LoaderGui.exe) wordt eerst geladen met de HEX file die je in je controller wilt zetten.
Daarna stel je op de GUI device type in (b.v 18F type 25K22), de baudrate, het COM poort nummer en het vakje “Write program” aanvinken.
Als je nu op de knop Write drukt zal het programma verbinding gaan zoeken met de bootloader op de controller, na 10 seconden volgt een timeout.
De bootloader op de controller “luistert” vrij kort na een reset of power on. (ongeveer 1 seconde) Het is dus de bedoeling om na het indrukken van de Write knop de PIC Microcontroller te resetten of aan te zetten. De verbinding wordt dan gemaakt en uiteindelijk komt de melding completed.

Behalve de ds30 GUI (Graphical User Interface) heb je ook de commandline versie (ds30LoaderConsole.exe). Hiermee kun je vanuit je compiler (b.v. Proton of Amicus18) net als bij een hardware programmer direct je PIC Microcontroller programmeren.
Bij Proton en Amicus18 kun je deze als volgt installeren.
Klik in de menu balk van de proton of Amicus18 IDE op de “View” knop en dan op “(Compile and )Program Options”.
Er verschijnt nu een nieuwe window , kies hier voor programmer als dat nodig is en kies dan voor “Install New Programmer”.
Nu komt er een window op met “Install New Programmer, Availiable Programmers”. Kies in dit window voor de “create a custom programmer entry” optie en druk op “Next”. Het volgende scherm wordt dan “Install New Programmer, Select Display Name”. Hier vul je de naam in die je wilt zien als je de programmer wilt selekteren, b.v. “ds30-19K2”, daarna op “Next” drukken.
Het volgende window heet “Select Programmer Executable”, vul hier de naam van de executable voor de commandline versie in: “ds30LoaderConsole.exe” en druk op “Next”.
In het hierop volgende window moet de path naam naar de executable opgegeven worden. Het beste doet men dit met “find manualy” (gaat vaak sneller). Je krijgt dan een directory browser te zien waar je de directory moet selecteren waarin de file te vinden is, vanuit hier zal dan het path aangemaakt worden.
Laatste stap is het opgeven van de parameters voor de commandline versie. dit moet je doen in het laatste venster. Een voorbeeld voor wat je hier in kunt vullen: “−−file=$hex−filename$ −−device=PIC$target-device$ −−port=COM6 −−baudrate=19200 −−writef” (zonder “”). −−file= en −−device= hoef je nooit te veranderen, −−port= en −−baudrate= moet je aanpassen naar wat je gebruiken wilt.

Voor COM poort nummers en het FTDI bordje zie: FTDI driver informatie

Wanneer je met de “ds30LoaderConsole.exe” gaat werken krijg je een zwart schermpje met witte tekst te zien.
Na het indrukken van een toets wacht de bootloader maximaal +/- 10 seconden op contact met de te programmeren PIC controller.
Binnen deze 10 seconden moet je van bootloader firmware voorziene controller dus opstarten of resetten.
Als alles goed gaat ziet het er zo uit.

De files ds30LoaderGui.exe en ds30LoaderConsole.exe kun je vinden in de volgende download file: DS30 Executables en testfiles (HEX) voor 18F25K20 en 18F25K22 met DS30 bootloader
De 2 files staan in de directorie DS30-091112

Update 29-11-2013: De Amicus18 IDE geeft waarschijnlijk als $target-device altijd de 18F25K20 als device door. Dit betekent wanneer je een 18F25K22 wilt programmeren dat je als target-device “18F25K22” moet invullen. De regel wordt dan:
−−file=$hex−filename$ −−device=PIC18F25K22 −−port=COM6 −−baudrate=19200 −−writef

Update 25-09-2014:ds30LoaderConsole.exe optie “write-program” verandert in “writef”
Optie “write-program” werd niet herkent in de nieuwere ds30LoaderConsole.exe (writef betekend write flash)




Hit Counter by Digits