Document fait avec Nvu Document made with Nvu



specificationsinstructionslogicielsutilisationemulateurs

Utilisation

Téléchargement des applications
Exemple

Téléchargement du noyau

Il existe plusieurs outils développés par MICROCHIP ( http://www.microchip.com/developmenttools/ ) qui permettent de télécharger un code executable. Ils utilisent un connecteur possédant 5 signaux:
  • VCC qui est l'alimentation à 3,3 Volts ou 5 Volts en fonction du type de microcontrôleur,
  • nMCLR qui contrôle l'initialisation du composant,
  • PRGC qui est l'horloge de transfert du programme,
  • PRGD qui est la donnée série du programme,
  • et enfin GND pour la masse.
Il suffit de récupérer le noyau correspondant au microcontrôleur et disponible dans la page des logiciels.

Une autre méthode consiste à utiliser l'émulateur en combinaison avec l'interface RS232 vers ICSP qui permet en plus de dialoguer directement avec le noyau FORTH du microcontrôleur.


Téléchargement des applications

Une fois le noyau FORTH installé dans le microcontrôleur, les applications peuvent être installées en utilisant l'interpréteur FORTH via l'interface RS232. Ceci a l'avantage de retrouver la souplesse du FORTH mais demeure fastidieux en cas de mise au point des applications avec l'inconvénient d'une usure prématurée de la mémoire interne.

Le mieux est d'utiliser l'émulateur pour mettre au point le code complet contenant à la fois le noyau FORTH et les applications, de le sauvegarde et de le télecharger in une seule fois comme un nouveau noyau.


Exemple

Prenons le cas d'une petite application développée sur un dsPIC30F4012. Cette appication est un petit chenillard sur les ports RE0, RE1, RE2, RE3, RE4 et RE5 et dont la vitesse est contrôlées par l'état des ports RD0 et RD1 (0 pour 500ms, 1 pour 375ms, 2 pour 250ms et 3 pour 125ms).

Que ce soit avec l'émulateur ou directement avec le microcontrôleur, il faut commencer par télécharger le noyau correspondant dspic30f.hex.

Ensuite, il faut interpréter le pilote des ports pour dsPIC30f ports_ABCDEFG_30f.txt.

Il ne reste plus qu'à charger le code suivant:

DECIMAL

1 VARIABLE VOYANTS
1000 VARIABLE DUREE

( Instruction associee au port D )
PRGHERE
]
    3 AND NEGATE 4+ 125 * DUREE !
    EXIT
[
CONSTANT PRG_PORT_D_B CONSTANT PRG_PORT_D_H

TACHE: T_CHENILLARD
    VOYANTS DUP >R @ DUP SORT_PORT_E 2/ DUP 0= 32 AND + R> !
    DUREE @ T_CHENILLARD T_ACTIVE
;

: CHENILLARD
    0 DUP DUP SYNC_PORT_E
    PRG_PORT_D_H PRG_PORT_D_B 3 SYNC_PORT_D
    49152 T_CHENILLARD DUP >R T_AJOUTE 10 R> T_ACTIVE
;

: LANCE
    [ HERE LITERAL ] >HERE
    CHENILLARD
;

L'instruction "LANCE" permet de lancer le programme "CHENILLARD" au démarrage du microcontrôleur.


Si vous détectez une anomalie, veuillez me le signaler en rédigeant un message avec le maximum de détails et surtout la procédure permettan de mettre en évidence le problème et envoyez le à la liste de diffusion.