Liste des principales commandes du langage NQC

  1. Identification du programme principal :
    task main()
    {
     
    }
  2. Affiche le texte ALLO en position horizontale de 10 et en position verticale 20 sur l'écran LCD : Notez que la position verticale peut également être indiquée en utilisant la ligne: exemple : TextOut(10, LCD_LINE7, "Allo");
    La commande TextOut peut également utiliser un 4ième paramètre facultatif (true ou false) indiquant si l'écran doit être effacé après l'écriture du texte.
    TextOut(10, 20, "Allo!");
    
    ou
    TextOut(10, LCD_LINE1, "Allo!");
    
  3. Afficher à l'écran une valeur numérique en position 10,20 ou la valeur numérique d'une variable
    
    NumOut(10,20,100);
     
    
    
    
    ou
    
    NumOut(10,LCD_LINE1,100);
     
     
    
    
    ou
    
     
    NumOut(10,LCD_LINE1,100);
     
    
    
    
  4. Afficher à l'écran en position 10,20 la valeur captée par le capteur Ultrason branché dans le port 4
    
    NumOut(10,20,SensorUS(IN_4));
    
     
    ou
    
     
    
    NumOut(10,LCD_LINE1,SensorUS(IN_4));
  5. Afficher le nombre de rotation d'un moteur (nombre de degrés)
    
    
    NumOut(10,LCD_LINE1,MotorRotationCount(OUT_A));
     
    ou
    
    
    NumOut(10,10,MotorRotationCount(OUT_A));
     
  6. Attendre 5 secondes
    	  Wait(5000);
    	 
  7. Effacer le contenu de l'écran :
    ClearScreen();
    	 
  8. Afficher l'image Stop.ric sur l'écran en position horizontale 25 et en position verticale 20 :
    GraphicOut(25, 20, "Stop.ric");
  9. Définir une constante nommée Nom_Constante et lui assigner la valeur 99 :
    #define Nom_Constante 99 
  10. Définir une variable nommée i de type integer (entier) et lui assigner la valeur 1234
    int i;   
      i = 1234; 
  11. Affiche la valeur numérique de la variable i en position horizontale 60 et en position verticale de 5 sur l'écran du robot
    NumOut(60,10, i);	 
    ou
    NumOut(60,LCD_LINE1, i);	 
  12. Affiche la valeur numérique de la caleur captée par le capteur Ultrason branché dans le port 2 en position horizontale 60 et en position verticale de 5 sur l'écran du robot
    Notez que la position verticale peut également être indiquée en utilisant la ligne: exemple : NumOut(10, LCD_LINE7, SensorUS(IN_2));
    NumOut(60,5,SensorUS(IN_2));	 
    ou
    NumOut(60,LCD_LINE1,SensorUS(IN_2));	 

  13. Dessiner un rectangle sur l'écran LCD à partir du point 5,5 de dimension horizontale 90 et de dimension verticale de 50
    RectOut(5,5,90,50);	 
  14. Dessiner une ligne sur l'écran LCD du point 5 , 5 au point 90,50
    LineOut(5,5,95,55);	 
  15. Dessiner un cercle centré au point 50,50 de diamètre 20 sur l'écran LCD
    CircleOut(50,50,20);	 
  16. Jouer le fichier son Positive.rso avec le volume 5 en boucle
    PlayFileEx("Positive.rso",5,true);	 
  17. Jouer la note de fréquence 262 pendant 0.4 secondes
    tone peut prendre une valeur entre 220 et 3951
    	    PlayTone(262,400);    
  18. Faire fonctionner le moteur branché dans le port A à 50% de sa capacité maximale
    OnFwd(OUT_A, 50);	 
  19. Arrêter le moteur branché dans le port C
    	Off(OUT_C); 
  20. Faire tourner les moteurs branchés dans les ports A et C à 50% de leur puissance maximale pour 2 tours (720 degrés)
     RotateMotor(OUT_AC, 50,720);
  21. Faire tourner le moteur A en sens inverse à 40% de sa puissance maximale
    	OnRev(OUT_A, 40); 
  22. Initialise la communication avec le capteur ultrason branché dans le port 3
    SetSensorLowspeed(IN_3);
     	 
  23. Voici les différentes commandes pour initialiser la communication avec les différents capteurs :
    Capteur de son : SetSensorSound(IN_1);
    Capteur de lumière (photosensible) : SetSensorLight(IN_1);
    Capteur de toucher (tactile) : SetSensorTouch(IN_1);
    Capteur de ultrasons : SetSensorLowspeed(IN_1); ou SetSensor(IN_1,LOW_SPEED);
    Voici les différentes commandes pour utiliser la valeur captée par les différents capteurs :
    Capteur de son : SENSOR_1 ou Sensor(IN_1)
    Capteur de lumière (photosensible) : SENSOR_1 ou Sensor(IN_1)
    Capteur de toucher (tactile) : SENSOR_1 ou Sensor(IN_1)
    Capteur de ultrasons : SensorUS(IN_1)
  24. Initialise la communication avec le capteur tactile branché dans le port 2
      
    SetSensorTouch(IN_2);

    ou
     SetSensor(IN_2,SENSOR_TOUCH);	
  25. Initialise la communication avec le capteur de lumière branché dans le port 3
        SetSensorLight(IN_3);	 
  26. Initialise la communication avec le capteur de son branché dans le port 3
        SetSensorSound(IN_3); 
  27. Répéter pour toujours les actions indiquées entre les accollades
    while(true){ }	 
  28. Jusqu'à ce que la valeur captée par le capteur ultra-son branché dans le port 4 soit plus grande que la valeur définie pour la constante FIDO
    while(SensorUS(IN_4)>FIDO);	 

  29. Si le capteur branché dans le port 1 est activé
    if (SENSOR_1 == 1) 
  30. Si le capteur branché dans le port 1 n'est pas activé
    if (SENSOR_1 ==0)	 
  31. Jusqu'à ce que la valeur captée par le capteur de lumière branché dans le port 4 soit inférieure ou égale à la valeur définie pour la constante nommée luminosite
    Notez que pour pour utiliser la valeur captée par le capteur de lumière, vous pouvez soit utiliser : SENSOR_4 ou Sensor(IN_4)
     until(Sensor(IN_4) <= luminosite);	 
  32. Définir deux variables de type texte nommées message1 et message2
    	string message1,message2; 
  33. Assigner le texte "Allo" à la variable nommée message1
    message1 = "Allo";	 
  34. Définir la fonction sans paramètre nommée tourner
    sub tourner(){  }
    	 
  35. Définir la fonction nommée tourner en utilisant le paramètre pwr de type entier
    sub tourner(int pwr){}	 
  36. Effectuer la fonction nommée tourner en utilisant la valeur 75 comme valeur de paramètre
    	tourner(75); 
  37. Définir la tâche nommée controlerLeRobot
    task controlerLeRobot(){}	 
  38. Exécuter les tâches controlerLeRobot et lireSensor
    	Precedes( controlerleRobot, lireSensor); 
  39. Attendre la durée définie par la constante ou variable nommée tempstourne
    Wait(tempstourne);	 
  40. Ajouter 200 à la valeur de la variable nommée temps_de_deplacement
    	temps_de_deplacement += 200; 
  41. Créer la variable de type tableau-chaîne de caractères nommée autos et assigner les valeurs "honda" "ford" et "chevy" à cette variable
    	string autos[] = {"honda","ford", "chevy"}; 
  42. Afficher le texte contenu dans la variable autos[0] en position horizontale de 20 et en position verticale de 10 sur l'écran LCD
     TextOut(20, 10, autos[0]);	 
  43. Répéter 4 fois les actions définies entre les accollades
     repeat(4)
        {
        
    }	 
  44. Effectuer les actions définies entre les accollades pendant que la valeur de la variable temps_total est plus petite que 20000
     
    do
     {
     
     }
      while (temps_total < 20000);	 
  45. Assigner une valeur aléatoire entre 0 et 10 à la variable n
    n=random(10);	 
  46. Jusqu'à ce que le bouton du centre soit activé
    	until(ButtonPressed(BTNCENTER,true)); 
  47. Identification de la tâche principale du programme
    	task main(){} 
  48. Jouer la note de fréquence 200 pour une durée de 0.3 seconde
    PlayTone(200,300)	 
  49. CurrentTick() retourne la valeur du compteur intégré à la brique du nombre de millisecondes DEPUIS le début du lancement du programme
    Ci-dessous : création de la variable IntTime et assignation de le valeur retournée par CurrentTick() à cette variable
    	int IntTime;
    IntTime=CurrentTick(); 
  50. FirstTick() retourne la valeur du compteur intégré à la brique du nombre de millisecondes AU MOMENT du lancement du programme
    Ci-dessous : création de la variable IntDebut et assignation de le valeur retournée par FirstTick() à cette variable
    	int  IntDebut;
     IntDebut=FirstTick(); 
  51. PowerDown(); Éteindre la brique
    PowerDown(); 
  52. MotorRotationCount() affiche le nombre de degrés de rotation d'un moteur
    MotorRotationCount(OUT_A)	 
  53. 	 
  54. 	 
Notions complémentaires :

Dans une commande if , vous pouvez utiliser :

- les opérateurs de comparaison
et
- les opérateurs logiques

suivants afin de vérifier plus d'une condition :

Les opérateurs de comparaison sont :

Signe

Nom

Exemple

Résultat

==

Egal

x == 11

true

<

Inférieur

x < 11

false

<=

Inférieur ou égal

x <= 11

true

>

Supérieur

x > 11

false

>=

Supérieur ou égal

x >= 11

true

!=

Différent

x != 11

false


Les opérateurs logiques sont :

Signe

Nom

Exemple

Signification

&&

et

(condition1) && (condition2)

condition1 et condition2

||

ou

(condition1) || (condition2)

condition1 ou condition2


Exemple 1 :
task main()
{
int a;
int b;
a=1;
b=2;
if(  a==0  || b==2  )
//vérifie si la valeur a est égale à 1 "ou" si la valeur b est égale 2 { TextOut(20, 50, "oui"); Wait(3000); } else { TextOut(20, 50, "non"); Wait(3000); } }


Exemple 2 :
task main()
{
int a;
int b;
int c;
a=1;
b=2;
c=2;
if(  (a==0  && b==2) || b==c  )
//vérifie si la valeur a est égale à 0 "et" la valeur b est égale 2 "ou" si la valeur b est égale à la valeur c { TextOut(20, 50, "oui"); Wait(3000); } else { TextOut(20, 50, "non"); Wait(3000); } }