Une définition “define” est un type de directive qui dit au compilateur que s'il rencontre un mot donné, il le remplace avec un autre nom ou nombre. Une définition “define” est utile pour des situations où une routine (sous-programme) a besoin d'être modifié facilement. Par exemple, une définition pourra être utilisé pour spécifier la quantité de temps de fonctionnement d'une alarme une fois initialisée.
Il est aussi possible d'utiliser les définitions “defines” pour spécifier des ports - Ces définitions peuvent être utilisés pour aider à la création de code que puisse être facilement adapté pour fonctionner avec différents PICs avec différents ports.
GCBASIC fait un usage considérable de définitions “defines” en interne. Par exemple, le code LCD utilise des définitions “defines” pour mettre les ports qui doivent être utilisés pour communiquer avec le LCD.
Pour créer une définition il est nécessaire d'utiliser la directive #define. Voici quelques exemples de définitions:
#define Ligne 34
#define Luz PORTB.0
#define LuzOn Set PORTB.0 on
Ligne est une constante simple - GCBASIC trouvera “Ligne” dans le programme et le remplacera avec le nombre 34. Ceci pourra être utilisé dans des programmes pour un suiveur de ligne, pour rendre le calibrage du programme plus facile pour différentes conditions d'illumination.
Luz est un port - représente une broche particulière du PIC. Ceci pourra être utile si le programme a beaucoup de lignes de code qui contrôlent Luz, et là il existe la possibilité que le port auquel Luz a été associé aura besoin d'être changer dans le futur.
LuzOn est une définition utilisée qui pourra rendre le programme plus lisible. Au lieu de taper “Set PORTB0 on” plusieurs fois, il sera possible d'écrire LuzOn et faire en sorte que le compilateur fasse la dure tâche.