Experiment med PIC18F4550 och PUF (PIC USB Framework)
Postat: 20 november 2006, 12:01:48
Tänkte skriva lite om mina experiment med en 4550 och PUF(http://vasco.gforge.enseeiht.fr). PUF är ett öppen källkodsbaserat ramverk för USB-anslutna PICar som gör det relativt enkelt att bygga egna usb-anslutna datortillbehör.
PUF är avsett att användas med Linuxsystem och allt som behövs för att kompilera med mera finns med i paketet. Eftersom jag redan har en programmerare valde jag dock att använda denna.
Jag laddade ned PUF-paketet som innehåller en bootloader till PICen och en testapplikation. Denna kod är färdig att bygga, men i mitt fall fick jag justera en rad eftersom mitt kort använder en 20MHz-kristall istället för en 4MHz som är förval.
Hex-filen byggdes med ett vanligt make-kommando och PICen programmerades sedan med denna. Här kompilerade jag först i Linux, växlade till Windows (inget Linuxstöd för min programmerare
) och programmerade PICen. Efter lite krånglande med programmeraren kom koden på plats, och när kretsen monterats på testkortet som sedan kopplades till datorn hittade Windows en ny enhet. Allt långt så väl, dags att starta om till Linux igen.
Testkortet är för övrigt en mycket enkelt konstruktion, ska se om jag kan fixa några bilder på det sedan. Det består i princip av en bit experimentkort, en 40-pin ic-hållare, ett par kondensatorer och knappar.
Tillbaka i Linux kompilerades Docker, PUF's PC-applikation för att styra och mata PICen med ny kod. Det första testet gjordes sedan med den testapplikation som finns i PUF-paketet. Att ladda in ny kod var enkelt:
För att sedan bestämma vad PICen ska göra används Demo-programmet för att ange olika configuration ID, med testprogrammet anges tex id 3 vilket får RA0 på PICen att växla konstant.
Även detta fungerade efter några försök, så nu ska jag försöka sätta mig in i koden och lära mig hur man justerar den efter egna önskemål. Funderar bland annat på att koppla in en TC1047 för att mäta temperatur och styra en fläkt, en ide är också att använda detta som grund för ett PC-baserat mätinstrument.
PUF är avsett att användas med Linuxsystem och allt som behövs för att kompilera med mera finns med i paketet. Eftersom jag redan har en programmerare valde jag dock att använda denna.
Jag laddade ned PUF-paketet som innehåller en bootloader till PICen och en testapplikation. Denna kod är färdig att bygga, men i mitt fall fick jag justera en rad eftersom mitt kort använder en 20MHz-kristall istället för en 4MHz som är förval.
Hex-filen byggdes med ett vanligt make-kommando och PICen programmerades sedan med denna. Här kompilerade jag först i Linux, växlade till Windows (inget Linuxstöd för min programmerare

Testkortet är för övrigt en mycket enkelt konstruktion, ska se om jag kan fixa några bilder på det sedan. Det består i princip av en bit experimentkort, en 40-pin ic-hållare, ett par kondensatorer och knappar.
Tillbaka i Linux kompilerades Docker, PUF's PC-applikation för att styra och mata PICen med ny kod. Det första testet gjordes sedan med den testapplikation som finns i PUF-paketet. Att ladda in ny kod var enkelt:
Kod: Markera allt
/usr/local/bin/docker write ../puf-1.0/application/application.hex
erasing section [2000, 7fff]
writing section [2000, 7fff]
Även detta fungerade efter några försök, så nu ska jag försöka sätta mig in i koden och lära mig hur man justerar den efter egna önskemål. Funderar bland annat på att koppla in en TC1047 för att mäta temperatur och styra en fläkt, en ide är också att använda detta som grund för ett PC-baserat mätinstrument.