La programmation du Pic
Le programme est écrit en JAL (Just another Language). Ce langage permet la programmation des PIC de Microchip. Le logiciel est libre.
Bert Van Dam dans son livre 50 applications des microcontrôleurs PIC proposent de nombreux montages. L'environnement JAL, les librairies et les programmes du livre sont téléchargeables gratuitement sur le site d'Elektor.
Pour développer cette application j'ai utilisé ces librairies que j'ai adaptées à un PIC 16F88.
Si l'on veut modifier le programme, le mieux est donc de télécharger l'ensemble sur le site d'Elektor et de placer dans le dossier Librairies les 4 librairies modifiées.
Si l'on ne veut pas modifier ou adapter le programme, on programmera le PIC avec le fichier .hex.
J'ai utilisé le programmateur ISCP Wisp648 de chez VOTI. Sur le schéma structurel et le plan de câblage, la couleur des 6 fils de liaison correspondent à ce programmateur.
Le Pic 16F88 peut bien sûr être programmé avec d'autres programmateurs, mais il faudra régler correctement les fusibles.
Si l'on se contente de charger le programme .hex, on peut se référer à la page Programmer un microcontrôleur PIC sur ce site.
|
|
Le programme utilise une boucle principale :
Forever loop ........End loop
Demande à l'horloge RTC l'heure
ds1307_readtime(sec, min, hrs)
Lit les 4 entrées analogiques : AN0 à AN3
meas = adc_read_low_res(counter)
Place l'heure et les mesures sur le Port sériel
ds1307_showtime(sec,min,hrs)
serial_hw_byte(meas)
Un appui sur l'interrupteur génère une interruption sur la broche RB0 du PIC et le programme rentre en mode configuration.
if (intf) & ( pin_b0 == 0) then
flag = 1
Le réglage de l'heure et des intervalles de mesure est possible.
|