Il vous faut : un éditeur + un compilateur.
Pour ma part je choisi l'environnement PCW avec son compilateur CCS
Vous pouvez utiliser MPLAB qui est gratuit, avec un compilateur C.
Ecrivons un promier programme : l'envoi du fameux "hello world".
Vous pouvez faire une nouveau projet :
Choisez le bon PIC (16F84), et configurer bien les fusible :
- RC pour un oscillateur à cellule résistance – condensateur,
- XT pour un oscillateur à quartz jusqu’à une fréquence de 4 MHz incluse,
- HS pour un oscillateur à quartz de fréquence supérieure à 4 MHz (10 et 20 MHz en particulier).
- LP est réservée à un usage avec un oscillateur à quartz à très basse fréquence tel celui utilisant un quartz horloger à 32,768 kHz.
Dans notre cas : XT ou HS, suivant votre programmateur de carte
- WDT ou WDTE est le fusible de validation du timer chien de garde (Watch Dog Timer Enable). Nous allons pas nous en servir pour l'instant.
- PWRT ou PWRTE est le fusible de validation du timer de reset à la mise sous tension (PoWer up Reset Timer Enable). Ce fusible est généralement programmé. Il permet de bénéficier d’un
délai d’attente après la stabilisation de la tension d’alimentation avant que le programme ne démarre son exécution ce qui est une attitude prudente.
- CP ou CP0 est le fusible de protection de la mémoire de programme contre une lecture non autorisée. On le laisse déactivé.
Mon programme :
#include "puce3.h"
void main()
{
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
while(1)
{
delay_ms(1000);
printf("Hello world");
}
}
L'en-tête :
#include <16F84.h>
#FUSES NOWDT //No Watch Dog Timer
#FUSES HS //High speed Osc (> 4mhz)
#FUSES PUT //Power Up Timer
#FUSES NOPROTECT //Code not protected from reading
#use delay(clock=6000000)
#use rs232(baud=9600,parity=N,xmit=PIN_B7,rcv=PIN_A1,bits=8)
Il suffit ensuite de compilez votre programme !
Celui ci envoie toutes les seconde "Hello world", que l'on pourra visualisé sur un terminal...