| Not eXactly C | |
| Date de première version | |
|---|---|
| Influencé par | C |
| Système d'exploitation | firmware NXT Mindstorm |
| Site web | http://bricxcc.sourceforge.net/ |
| modifier | |
LeNot eXactly C (« pas exactement duC » en français) ouNXC est unlangage de programmation spécifique au robotLego Mindstorms NXT basé sur leNBC, unlangage assembleur.L'IDE associé à ce langage estBricxCC.
La première version du NXC date de 2007, année de libération de la norme NXT sous licence publique Mozilla. Son développeur, John Hansen, avait déjà mis au point leNQC pour leRCX ; il développe également l'IDEBricxCC.
Jusqu'à la version 1.26 dumicro-programme, l'utilisation de nombres àvirgule flottante était impossible sur le NXT, car non utilisés pour la commande des moteurs et l'acquisition des mesures de capteurs. Depuis cette version, cela est aussi possible avec le NXC.
Voici deux exemples de programmes réalisables avec le NXC, suivis de l'explication de leur effet.
task main(){OnFwd(OUT_A, 75);Wait(1000);}L'actionneur relié à la prise « A » duNXT démarre puis le programme s'arrête au bout d'une seconde.
task main(){SetSensorTouch(S1);SetSensorLight(S2);OnFwd(OUT_A);while(SENSOR_1 ==FALSE) {if(SENSOR_2 >50) {PlayTone(440,10); } }}L'actionneur relié à la prise « A » duNXT 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, leNXT produit une tonalité (de fréquence 440 Hz donc unla3) durant 10 millisecondes. L'appui sur le capteur 1 (capteur de contact) provoque l'arrêt du programme.
| Modèles | |
|---|---|
| Environnements de développement | |
| Langages de programmation | |
| Concours | |
| Concurrents | |
|---|---|
| Déclaratifs | |
| Fonctionnels | |
| Impératifs | |
| Orientés objet | |