Menu
Un automate programmable PIC

1) GenerPIC

GenerPIC crée du code PIC en assembleur à partir de la description d'un automatisme.
Ce code est compilable par MPLAB® IDE (v 8.00 actuellement) de Microchip, téléchargement gratuit sur http://www.microchip.com
La description de l'automatisme utilise en plus des fonctions habituelles (temporisation, front, set, reset, etc.) des équations booléennes.
La configuration hard du PIC est décrite dans un fichier, ce qui permet au programmeur confirmé de développer pour une autre application que le kit 8048 de Velleman.

Télécharger le  répertoire  Gener PIC.exe (répertoire zip auto extractible).

Télécharger MPLAB® IDE 

Pour une premiere ouverture du projet créé par GenerPIC, il faut ouvrir le projet depuis MPLAB® IDE (en ouvrant depuis le projet en .mcp, ça ne marche pas)
Ne pas oublier de configurer le PIC : Configure =>  Select Device => Device : choisir 16F627 => OK.
Project => Buid All
Acceper éventuellement une nouvlle adresse dans la fenêtre Tools location.
Normallement, pas de problème : compilation avec quelques alarmes

Fichiers téléchargés :

GENERPIC.EXE        : exécutable
Lisez_moi.html      : Le manuel
CycleU.txt          : Fichier pour un cycle en U réalisé en séquentiel
GrafcetU.txt        : Fichier pour un cycle en U réalisé en Grafcet
8048_627.inc        : Fichier système pour la carte K8048 de Velleman équipée d'un 16F627 
P16F627.INC         : Fichier système pour le PIC 16F627
Base.inc            : Fichier système contenant le code pour le noyau du système d'automatisme
VarBase.INC         : Fichier
système contenant les variables système pour l'automatisme
Vide.mcp            : Fichier de projet vide  pour MPLAB® IDE
Vide.mdl            : Fichier de projet modèle vide en format texte

Exemple de codage :

Extrait du fichier de démo CycleU.txt :

Mise a un du bit memoire
set:Memoire,V2S.V1R

Code obtenu après traitement par GenerPIC:

;SET(Memoire,V2S.V1R)
;Memoire=Memoire+V2S.V1R
;BitT1:=V2S.V1R
    BSF           BitT1
    BTFSC         V2S
    BTFSS         V1R
    BCF           BitT1
;Memoire:=Memoire+BitT1
    BTFSC         BitT1
    BSF           Memoire

En utilisant PICFinder, on obtient une solution plus compacte:

Résultat pour Memoire=Memoire+V2S.V1R :
BTFSC V2S
BTFSS V1R
BTFSC Memoire
BSF   Memoire

Attention

  1. Ce programme est expérimental, il y a des restrictions facilement levables, d'autre ne le sont pas.
  2. A priori le code généré est correct, mais il peut cependant y avoir des erreurs dans certains cas spécifiques.
  3. Le code généré n'est pas optimum, il peut être amelioré.

Menu