Abstract:
|
Aquest projecte té com a objectiu crear un software per PC que permeti programar
mitjançant el bus CAN (Controller Area Network) microcontroladors de la família PIC18FXX8
de Microchip.
Per aquests microcontroladors, Microchip subministra un firmware (programa fix al
microcontrolador) anomenat Bootloader. Aquest firmware permet llegir o escriure qualsevol
regió de memòria del microcontrolador, interpretant els missatges CAN que se li envien.
Abans de poder usar el Bootloader, cal activar-lo. Per fer-ho, cal escriure una dada a l’última
posició de la memòria EEPROM (Electrically Erasable Programmable Read-Only Memory).
Aquesta característica és molt útil per programar sistemes en funcionament, ja que enviant
missatges podem transferir nou software per a cada microcontrolador connectat a la xarxa
CAN. També permet programar al mateix temps diversos microcontroladors amb el mateix
software, si aquests tenen el Bootloader amb la mateixa configuració. Això redueix els temps
de reprogramació, ja que no és necessari desmuntar un microcontrolador per ser
reprogramat. A més, com que només deixa de funcionar el microcontrolador que estem
programant, la resta de la xarxa pot seguir funcionant.
També és útil en sistemes nous. Les empreses d’automòbils usen aquest sistema per
programar les centraletes de vehicles un cop connectades al bus. Així s’estalvien manejar
grans estocs de centraletes preprogramades segons les opcions escollides pel client.
Aquest projecte és integrament de software. Les proves de funcionament s’han fet amb
hardware subministrat pel Departament d'Enginyeria Electrònica. Aquest hardware consta
de: plaques amb microcontroladors PIC18FXX8 amb connexió CAN, un hardware comercial
de l’empresa Kvaser que permet al PC accedir al bus i un programador de Microchip.
Primerament, s’ha modificat el Bootloader subministrat per Microchip perquè es pugui
configurar més fàcilment, mitjançant un programa de PC a tal fi. També s’ha canviat el
mètode d’arrencada perquè s’activi al rebre un missatge CAN, sense escriure a la EEPROM.
Un cop el Bootloader ha rebut el missatge d’activació, es pot començar a programar. Aquest
nou firmware és compatible amb els microcontroladors de la família PIC18FXX8.
Per enviar les dades de programació, s’ha desenvolupat un altre programa per PC. Aquest
programa activa el Bootloader, envia el nou programa, comprova les dades escrites i treu del
mode Boot el microcontrolador. El programa és compatible amb qualsevol hardware de PC
d’accés a bus CAN de Kvaser. Els dos programes per PC s’han desenvolupat en Visual
Basic, ja que és un llenguatge que facilita la programació en entorn gràfic. |