Not eXactly C
| Not eXactly C linguaggio di programmazione | |
|---|---|
| Data di origine | 2006 |
| Influenzato da | C |
| Implementazione di riferimento | |
| Sito web | bricxcc.sourceforge.net/nbc/ |
Not eXactly C (NXC) è un linguaggio di programmazione simile al linguaggio C, utilizzato per la programmazione di robot Lego Mindstorms NXT.
Sviluppato da John Hansen, questo programma possiede numerose migliorie rispetto al software in dotazione con il robot LEGO MINDSTORMS e permette, digitando semplici codici, di eseguire operazioni o funzioni molto complesse.
Questo programma viene soprattutto utilizzato nelle competizioni della RoboCup Junior proprio per la miriade di azioni che il robot può compiere.
Il compilatore NXC è disponibile sotto licenza Mozilla Public License.[1]
Un esempio di codice è il seguente:
/*Questo è un commento che si
svolge su più righe*/
//questo è un commento che si svolge su una sola riga
#define tempo_Fwd 2000 //questa è una costante
int ripetere=4; //queste sono variabili
string quale_parte="destra";
task main() //crea un nuovo task. Ogni programma deve avere almeno il task main
{
OnFwd(OUT_BC,75); //chiede ai motori collegati alle porte B e C di muoversi in avanti con potenza 75
Wait(5000); //attende 5000 millisecondi
Off(OUT_BC); //chiede ai motori collegati alle porte B e C di spegnersi
if (quale_parte=="destra")//se la stringa quale_parte è uguale a "destra"
{
ripetere=2; // imposta la variabile ripetere a 2
}
else //altrimenti
{
ripetere=4; //imposta la variabile ripetere a 4
}
repeat(ripetere) //ripete per tante volte quanto indica ripetere le seguenti azioni
{
OnFwd(OUT_BC,75); //chiede ai motori collegati alle porte B e C di muoversi in avanti con potenza 75
Wait(tempo_Fwd); //attende tempo_Fwd millisecondi
Off(OUT_BC); //spegne i motori B e C
}
}
Un IDE per programmare in NXC è, per esempio, Bricx Command Center[2].
Note
Voci correlate
Collegamenti esterni
- Sito ufficiale, su bricxcc.sourceforge.net.
- Guida all'NXC (PDF), su bricxcc.sourceforge.net.