Forum: Mikrocontroller und Digitale Elektronik Wellington PIC18 Bootloader


von Marcel W. (macew)


Lesenswert?

Beitrag "CAN Bootloader - PIC"

Gerd B. schrieb:
> Ich nutze diesen:
> https://wiki.kewl.org/dokuwiki/projects:wellington
> http://hg.kewl.org/pub/wellington/
>
> Wellington ist an Tiny PIC Bootloader angelehnt und ist GPL3 lizensiert.


Hallo Gerd,
danke für den Hinweis.
Installiert habe ich alles, allerdings klappt das Kompilieren gar nicht:

[AS] gpasm -a inhx32 -e on -I ../loader humble-can-prototype.asm -o 
humble-can-prototype.hex
humble-can-prototype.asm:33:Error [132] Unknown processor.
../loader/devices.inc:2264:Error [101] Device unsupported
../loader/devices.inc:2267:Error [113] Symbol not previously defined 
(ROWSIZE).
humble-can-prototype.asm:66:Error [131] Processor type is undefined.
humble-can-prototype.asm:67:Error [131] Processor type is undefined.

[...]

Warning [231] Must use inhx8m format for EEPROM8
Makefile:36: recipe for target 'humble-can-prototype.hex' failed
make: *** [humble-can-prototype.hex] Error 1


Erstmal ist es ja schon komisch, dass er nicht nach mytemplate.asm
schaut, sondern nach humble_can_prototype.asm . Die Dateien habe ich
soweit mir möglich angepasst... Kannst Du mir dabei weiterhelfen? Gibt 
es eine Dokumentation dazu?

MFG

Marcel

von Gerd B. (bertr2d2) Benutzerseite


Lesenswert?

Hallo Marcel,

Marcel W. schrieb:
> Beitrag "CAN Bootloader - PIC"
>
> Gerd B. schrieb:
>> Ich nutze diesen:
>> https://wiki.kewl.org/dokuwiki/projects:wellington
>> http://hg.kewl.org/pub/wellington/
>>
>> Wellington ist an Tiny PIC Bootloader angelehnt und ist GPL3 lizensiert.
>
>
> Hallo Gerd,
> danke für den Hinweis.
> Installiert habe ich alles, allerdings klappt das Kompilieren gar nicht:
>
> [AS] gpasm -a inhx32 -e on -I ../loader humble-can-prototype.asm -o
> humble-can-prototype.hex
> humble-can-prototype.asm:33:Error [132] Unknown processor.

Huch, ist Dein gpasm so alt ?
PROCESSOR   18f26k80

Was sagt:
gpasm -l | grep 25k80
?


> ../loader/devices.inc:2264:Error [101] Device unsupported
> ../loader/devices.inc:2267:Error [113] Symbol not previously defined
> (ROWSIZE).
> humble-can-prototype.asm:66:Error [131] Processor type is undefined.
> humble-can-prototype.asm:67:Error [131] Processor type is undefined.
>
> [...]
>
> Warning [231] Must use inhx8m format for EEPROM8
> Makefile:36: recipe for target 'humble-can-prototype.hex' failed
> make: *** [humble-can-prototype.hex] Error 1
>
>
> Erstmal ist es ja schon komisch, dass er nicht nach mytemplate.asm
> schaut, sondern nach humble_can_prototype.asm . Die Dateien habe ich

Das Makefile schaut nach ASM Files und kompiliert diese:
ASOURCE:=$(filter-out template.asm, $(wildcard *.asm))

Du kannst Die nicht benötigten ASM Files in dem boot Verzeichnis löschen 
wenn Du willst.

> soweit mir möglich angepasst... Kannst Du mir dabei weiterhelfen? Gibt
> es eine Dokumentation dazu?

Siehe Code ;-) Der ist wirklich Klasse und könnte ein Lehrbeispiel sein.
Ein wenig Info gibt es noch auf der genannten Internet Seite.

Gruß

Gerd

: Bearbeitet durch User
von Marcel W. (macew)


Lesenswert?

Hallo Gerd,

danke für deine Hilfe. Also:

weder

gpasm -l | grep 25k80

noch

gpasm -l | grep 26k80

gibt irgendeine Rückanmeldung...?!

: Bearbeitet durch User
von Gerd B. (bertr2d2) Benutzerseite


Lesenswert?

Hallo Marcel,
Marcel W. schrieb:
> Hallo Gerd,
>
> danke für deine Hilfe. Also:
>
> weder
>
> gpasm -l | grep 25k80
>
> noch
>
> gpasm -l | grep 26k80
>
> gibt irgendeine Rückanmeldung...?!

Dein gpasm ist zu alt. Du musst ihn aktualisieren.

Gruß

Gerd

von Marcel W. (macew)


Lesenswert?

Hallo Gerd!

Nachdem ich die GP-UTILS Bibliothek upgedated habe, funktioniert das 
Kompillieren! Konnte die entsprechende *.hex-Datei auch mittels MPLABX 
und dem PICKIT3 auf den Mikrocontroller flashen, allerdings muss ich 
jetzt noch rausfinden, ob der Bootloader das macht was er soll...

Gerd B. schrieb:
> Siehe Code ;-) Der ist wirklich Klasse und könnte ein Lehrbeispiel sein.
> Ein wenig Info gibt es noch auf der genannten Internet Seite.

welchen Code meinst Du da? In den *.asm-Dateien steht ja nichts drin, 
woran man erkennen kann, was der Bootloader eigentlich macht.

Nochmal danke und ein schönes Wochenende!

MFG

Marcel

von Gerd B. (bertr2d2) Benutzerseite


Lesenswert?

Hallo Marcel,

Marcel W. schrieb:
> Hallo Gerd!
>
> Nachdem ich die GP-UTILS Bibliothek upgedated habe, funktioniert das
> Kompillieren! Konnte die entsprechende *.hex-Datei auch mittels MPLABX
> und dem PICKIT3 auf den Mikrocontroller flashen, allerdings muss ich
> jetzt noch rausfinden, ob der Bootloader das macht was er soll...
>

Es sind noch ein paar einfache Testprogramme (u.A. *LED.asm) im demo 
Verzeichnis beigelegt. Diese kannst Du nutzen, um die Funktion des 
Bootloaders
zu überprüfen. Siehe auch easy-loader:
http://hg.kewl.org/pub/easy-loader

BTW: Wellingtons Default Werte
CAN-Rate 250kBaud, CANID 666, Normal Frames

cansend can0 666#91

sollte eine Reaktion hervorrufen.

> Gerd B. schrieb:
>> Siehe Code ;-) Der ist wirklich Klasse und könnte ein Lehrbeispiel sein.
>> Ein wenig Info gibt es noch auf der genannten Internet Seite.
>
> welchen Code meinst Du da? In den *.asm-Dateien steht ja nichts drin,
> woran man erkennen kann, was der Bootloader eigentlich macht.

Wie gesagt, er ist an den TinyPicBootloader angelehnt:
http://www.etc.ugal.ro/cchiculita/software/picbootloader.htm
-> General info about Bootloaders

Siehe insbesondere auch die ASM files in loader.

Gruß

Gerd

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.