Next Byte Codes

Le Next Byte Codes ou NBC est un langage assembleur pouvant être utilisé pour programmer le Lego Mindstorms NXT, la brique programmable de Lego, développé par John Hansen, un membre du Mindstorms Developer Program[1].

Next Byte Codes
Paradigme structuré, imperatif
Auteur John Hansen
Typage statique, fort
Influencé par C
Système d'exploitation Windows, Mac OS X et Linux
Licence MPL
Site web bricxcc.sourceforge.net

Le compilateur NBC est disponible sous Mozilla Public License pour Windows, Mac OS et Linux[2]. Son environnement de développement intégré est BricxCC.

Un débogueur a été développé par SorosyDotCom et est disponible en téléchargement gratuit.

Exemples de programmes

Voici deux exemples de programmes réalisables avec le NBC, suivis de l'explication de leur effet.

Allumage d’un moteur :

thread main
  OnFwd(OUT_A)
  wait 1000 
  exit
endt

L'actionneur relié à la prise « A » du NXT démarre puis le programme s'arrête au bout d'une seconde.

Réaction à la lumière :

variables segment
  sensor_1 byte
  sensor_2 byte
variables ends

thread main
  SetSensorTouch(IN_1)
  SetSensorLight(IN_2)
  OnFwd(OUT_A, 100)
debut:
  ReadSensor(IN_1, sensor_1)
  brtst EQ, suite, sensor_1
  exit
suite:
  ReadSensor(IN_2, sensor_2)
  brcmp LT, debut, sensor_2, 50
  PlayTone(TONE_A4, 10)
  jmp debut
endt

L'actionneur relié à la prise « A » du NXT est démarré et le type des capteurs 1 et 2 est défini ; si l'on met le capteur 2 (capteur de luminosité) devant une source de lumière, le NXT produit une tonalité (de fréquence 440 Hz donc un la3) durant 10 millisecondes. L'appui sur le capteur 1 (capteur de contact) provoque l'arrêt du programme.

Voir aussi

Articles connexes

Liens externes

Bibliographie

  • (en) Michael Gasperi, Philippe Hurbain et Isabelle Hurbain, Extreme NXT : Extending the Lego Mindstorms NXT to the Next Level (Technology in Action), APress, (ISBN 1590598180, DOI 10.1007/978-1-4302-0211-0), « In the Box »

Références

  • Portail de la programmation informatique
  • Portail de la robotique
  • Portail Lego
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.