Outils pour utilisateurs

Outils du site


tpqt

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
tpqt [2018/03/15 08:24]
bvandepo
tpqt [2019/04/11 17:14]
bvandepo
Ligne 13: Ligne 13:
 </color> </color>
  
-Polycopié du cours: http://homepages.laas.fr/bvandepo/files/iut/tp_pic/cours_preparation_pic_qt_six.pdf+Polycopié du cours: https://homepages.laas.fr/bvandepo/files/iut/tp_pic/cours_preparation_pic_qt_six.pdf
  
-et:   {{http://homepages.laas.fr/bvandepo/files/iut/tp_qt/coursPOO2015.pdf}}+et:   {{https://homepages.laas.fr/bvandepo/files/iut/tp_qt/cours_POO_intro9_2019.pdf}}
  
  
Ligne 106: Ligne 106:
   cd QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant/   cd QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant/
   rm broadcastreceiver.pro.user   rm broadcastreceiver.pro.user
 +  qmake-qt4 broadcastreceiver.pro
   qtcreator broadcastreceiver.pro &   qtcreator broadcastreceiver.pro &
   echo fini   echo fini
-Cliquer sur Configurer le projet. +   
 +<color red>   
 +Important: COCHER la configuration DEBUG  puis Cliquer sur Configurer le projet. 
 +</color>
  
  
Ligne 121: Ligne 124:
   git add broadcastreceiver.pro  dialog.ui  main.cpp  receiver.cpp  receiver.h   git add broadcastreceiver.pro  dialog.ui  main.cpp  receiver.cpp  receiver.h
   git commit -m'initial version'   git commit -m'initial version'
-  gitk +  gitk &
   echo fini   echo fini
  
Ligne 153: Ligne 156:
  
 Afin que l'application à développer sur PC soit capable d'émettre les datagrammes pour piloter la carte PIC, il faut implémenter une méthode ** void Receiver::sendUDP(int i)**, (i code le numéro de la led à allumer, donc le bouton  pressé de l'application sur le PC). Cette méthode devra faire les actions suivantes: Afin que l'application à développer sur PC soit capable d'émettre les datagrammes pour piloter la carte PIC, il faut implémenter une méthode ** void Receiver::sendUDP(int i)**, (i code le numéro de la led à allumer, donc le bouton  pressé de l'application sur le PC). Cette méthode devra faire les actions suivantes:
-  - Définir une variable de type QHostAddress  (par exemple DestIP +  - Définir une variable de type **QHostAddress**  (par exemple **destIP** 
-  - Appeler la méthode bool setAddress(char * IP) de l'objet  DestIP pour régler l'ip du dispositif avec lequel communiquer. +  - Appeler la méthode **bool setAddress(char * addrIP)** de l'objet  **destIP** pour régler l'ip du dispositif avec lequel communiquer à l'aide d'une chaine de caractères **addrIP**
-  - Définir une variable de type quint16  pour coder le numéro du port UDP destination (par exemple DestPort=4567;+  - Définir une variable de type **quint16**  pour coder le numéro du port UDP destination (par exemple DestPort=4567;
-  - Définir un tableau de caractères (par exemple chaine[]) et générer la chaîne pour piloter les leds (par exemple avec la fonction sprintf comme pour le PIC) +  - Définir un tableau de caractères (par exemple **chaine[]**) et générer la chaîne pour piloter les leds (par exemple avec la fonction sprintf comme pour le PIC) 
-  - Pour émettre la chaîne sur la socket, appeler la méthode **qint64 writeDatagram(const char *data, qint64 len, const QHostAddress host, quint16 port);** de l'objet udpSocket. NB: il faut caster (convertir le type de) la chaîne en  (const char *)  et  pour le paramètre len utiliser (qint64)strlen(chaine)+1 (car on envoie le contenu de la chaine + le caractère \0 terminateur de chaine.+  - Pour émettre la chaîne **chaine** sur la socket, appeler la méthode **qint64 writeDatagram(const char * chaine, qint64 len, const QHostAddress host, quint16 port);** de l'objet **udpSocket**Pour le paramètre **len** utiliser la valeur **(qint64)strlen(chaine)+1** (car on envoie le contenu de la chaine + le caractère \0 terminateur de chaine.
      
-Pour que la méthode **void Receiver::sendUDP(int i)** soit appelée lorsque l'utilisateur presse le bouton 0vous devrez appeler **sendUDP(0);** dans la méthode **void Receiver::sendUDP0();** qui est une fonction associée au signal "click de la souris" sur le bouton 0. +La méthode **void Receiver::sendUDP(int i)** est appelée lorsque l'utilisateur presse un des boutons, le paramètre i codant le numéro du bouton. 
- +
-Faire de même pour les méthodes **sendUDP1** et **sendUDP2** afin d'indiquer au programme ce qu'il doit faire en cas d'appui sur les boutons 1 et 2.+
  
 Tester que l'appui sur le bouton i commute bien la led i du simulateur. Tester que l'appui sur le bouton i commute bien la led i du simulateur.
Ligne 170: Ligne 171:
   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant
   git commit -a -m'emission'   git commit -a -m'emission'
-  gitk +  gitk 
   echo fini   echo fini
  
Ligne 197: Ligne 198:
   - Utiliser la fonction sscanf pour décoder le datagramme reçu **int sscanf(char *chaine, const char * format, …)**   - Utiliser la fonction sscanf pour décoder le datagramme reçu **int sscanf(char *chaine, const char * format, …)**
   - Régler les valeurs de variables codant l'état des boutons (b1,b2,b3)   - Régler les valeurs de variables codant l'état des boutons (b1,b2,b3)
-  - Régler les afficheurs de la fenêtre (sw1,sw2,sw3) en appelant la méthode **void setChecked(bool);** de chacun des trois objets sw1 à 3 +  - Régler les afficheurs de la fenêtre (sw1,sw2,sw3) en appelant la méthode **void setChecked(bool);** de chacun des trois objets sw1 à 3 . Appeler également la méthode setText(char * chaine) de l'objet statusLabel pour afficher les caractères ASCII reçus.
    
 Tester que l'appui sur le bouton i dans l'application simupic est bien répercuté sur votre application. Tester que l'appui sur le bouton i dans l'application simupic est bien répercuté sur votre application.
Ligne 206: Ligne 207:
   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant
   git commit -a -m'reception'   git commit -a -m'reception'
-  gitk +  gitk 
   echo fini   echo fini
      
Ligne 232: Ligne 233:
   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant
   git commit -a -m'avec carte pic'   git commit -a -m'avec carte pic'
-  gitk +  gitk &
   echo fini   echo fini
  
tpqt.txt · Dernière modification: 2020/04/02 14:05 de bvandepo