Accueil

 

PRINCIPAUX ELEMENTS

des

PROGRAMMES en SPIN pour le PROPELLER

 

 

Le Propeller est programmé en langage <SPIN > (on peut aussi le programmer en Assembleur : c'est plus difficile mais utile si on a besoin d'une grande vitesse d'éxécution).

Le langage SPIN ressemble au langage C , mais il est mieux adapté au traitement simultané (paralléle) de plusieurs signaux.

En SPIN le programme principal démarre dans l'un des 8 cerveaux du Propeller : le COG zéro . Il y a 7 autres cogs ou l'on peut faire exécuter différentes fonctions paralélement au programme principal. Pour cela on utilise le mot clef COGNEW suivi du nom de la fonction et du nom d'un espace mémoire réservé pour cette fonction.

Un programme écrit en SPIN comporte les éléments suivants (dans l'ordre ou on les inclus dans le programme).

  1. Une zone de COMMENTAIRE qui précise l'origine (auteur, date de création) , éventuellement les buts du programme et les montages utilisés . Cette zone est encadrée par des signes de commentaire : { }; ou avec des lignes débutées par '' .Cette zone est optionnelle mais trés utile.
  2. Une zone de déclaration de CONSTANTES : elle commence par le mot clef CON (écrit tout a gauche, sans laisser d'espace) . On y place notamment la définition de la vitesse d'horloge du Propeller. En écrivant généralement:

    clkmode = xtal1 + pll16x 'pour travailler a 80 Mhz
    _xinfreq = 5_000_000 'la fréquence du cristal associé au Propeller

  3. Une zone de déclaration de VARIABLES : elle commence par le mot clef : VAR.Les variables qu'on y déclare peuvent avoir différentes tailles (Byte, Word,long, ... ) .Les variables déclarées a cet endroit sont visibles et modifiables a partir de tous les COGS du programme en cours.
  4. Une zone de déclaration des OBJETS (en fait des bibliothéques de fonctions ) : elle commence par le mot clef OBJ . Pour une programmation facile et efficace il est utile de disposer de bibliothéques de fonctions qu'on écrit en fonction de ses besoins ou qu'on télécharge sur le site déchange d'objets de Parallax.
  5. Une zone ou on trouve les différentes FONCTIONS permettant de réaliser le programme : une fonction commence par le mot clef PUB si on peut y accéder de l'extérieur ou PRI si cette fonction ne peut étre appelée que depuis l'intérieur du programme. On trouve ensuite le nom de la fonction puis les déclarations de variables (entre parenthéses si elles sont liées a l'appel de fonction ou aprés une barre verticale si elles sont seulement utilisées a l'intérieur de la fonction.Généralement la premiére fonction du programme est appelée MAIN : elle initie éventuellement quelques variables , puis elle appelle d'autres fonctions pour faire le travail.
  6. Une zone de DONNEES ou on peut aussi placer des fonctions écrites en ASSEMBLEUR : elle commence par le mote clef DAT