Turbo CC5X
Comment compiler 8k de code avec CC5X Free



La version Free de CC5X permet de découvrir le langage C sur PIC. Cette version est limitée à la création de programmes de moins de 1k de code. Pour les passionnés cette limite est vite atteinte.Turbo CC5X vous permet de dépasser cette limite pour peu que vous suiviez une méthode de programmation que nous vous proposons ci-dessous.

Le principe
CC5X free vous permet de compiler des programmes de moins de 1k de code, au delà de cette limite le compilateur affiche un message d'erreur indiquant que la limite fatidique est dépassée. Pour réaliser des programmes plus gros, il suffit de créer des modules de moins de 1k qui seront ensuite " linkés " ensemble par un utilitaire.

Si le principe semble relativement simple, dans la pratique un seul outil permet de réaliser cette performance, il s'agit de MPLAB (qui lui est gratuit). Malheureusement le paramétrage de MPLAB pour réaliser ce qui semble simple est très compliqué et plus encore avec la version 6.2 qui a été relookée de fond en comble.

C 'est la que Turbo CC5X entre dans la danse. Moyennant la copie de quelques exécutables au bon endroit et la pose de vos projets dans le répertoire c:\turboCC5X, il vous permettra de compiler, assembler et linker de manière transparente vos sources en C et de créer des programmes de 8k si bon vous semble.

La version 1.0 en téléchargement ici est limitée au 16F876 mais nous préparons une version 1.1 qui permettra de compiler des programmes pour la plupart des processeurs de Microchip couramment utilisés.

Les sources
Pour que Turbo CC5X puisse compiler vos modules, il faut :
- que chaque module fasse moins de 1k de code,
- que les fonctions et variables de tous les modules soient déclarées dans un header,
- que le header ne fasse pas référence au processeur ( fichier .H ).
En pratique, le programme sera organisé de la façon suivante :
Header.H

#pragma bit led @ PORTC.0

extern page0 void init_port(void) ;
extern page1 void allume_led(void) ;
extern page1 void eteint_led(void) ;

extern bank0 int compteur ;
extern bank0 int i ;

Module0

Bank0 int i,compteur ;

Page0 void init_port(void)
{
TRISC=0 ;
}
void main(void)
{
while(1){
allume_led() ;
for (i=1;I<1000;I++);
eteint_led();
for (i=1;I<1000;I++);
compteur++;
}
}

Module1

Page1 void allume_led(void)
{
led=1;
}
page1 void eteint_led(void)
{
led=0 ;
}

Si notre programme ne fait rien de spécial, il permet de décrire la structure qui doit être respectée pour pouvoir compiler des modules séparément avec Turbo CC5X.
Un certain nombre de règles doivent être suivies :
- déclarer les fonction " externes " dans le fichier d'entête en indiquant la page dans laquelle elles résident,
- déclarer les variables " externes " dans le fichier d'entête en indiquant la bank dans laquelle elles résident,
- déclarer les fonctions et les variables dans leurs modules respectifs.
Seul le 'main' ne sera pas déclaré puisqu'il doit toujours résider en page 0.

Installation
Turbo CC5X est livré avec son installeur, ce dernier créera sur votre disque un répertoire dans le disque C (C:\TurboCC5X).
Vous devrez ensuite compléter l'installation manuellement en copiant les fichiers suivants dans le répertoire C:\TurboCC5X :
- MPLINK.EXE
- _MPLINK.EXE
- MP2COD.EXE
- MP2HEX.EXE
- MPASMWIN.EXE
Vous trouverez ces fichiers dans le répertoire d'installation de MPLAB.

Copiez également le fichier CC5X.EXE qui est livré avec le compilateur. Vous devez obtenir les fichiers suivants dans le répertoire :


Le dossier ucfraise est un dossier de projet.
Les dossiers de projets devront toujours être placé dans le répertoire de Turbo CC5X.
Cette obligation est nécéssaire à cause de l'utilitaire MP2COD de Microchip qui n'accepte pas les nom de fichier (y compris le chemin) de plus de 62 caractères.
Turbo CC5X
L'interface de Turbo CC5X est on ne peut plus simple.


Créer un nouveau projet en cliquant sur 'Nouveau' ou ouvrez un projet existant en cliquant sur 'Ouvrir'. Ajoutez ensuite les fichiers sources au projet puis compiler l'ensemble. En cochant la case 'Voir tous les résultats', vous verrez dans la fenêtre de droite tous les messages du compilateur.

Télécharger
Pour télécharger Turbo CC5X 1.0 cliquez sur le lien:


Corrections de la version 1.0

Adjonction d'un ascenceur vertical sur le fenêtre résultats,

vérification de la présence des éxécutables dans le répertoire turboCC5X à la compilation.