Formation Yocto SDK Qt 5

Réf : PHYTEC-5173

  • Durée : 5 jours
  • Sessions : intra-entreprise
  • Plate-forme: i.MX 6 Quad
  • Adaptation de contenu sur demande

Cette formation vous intéresse ?

La formation Yocto SDK Qt5 aborde les techniques de développement d’applications graphiques, réseau et multitâche, en utilisant la technologie Objet C++ du framework Qt5.

  • Maîtriser la technologie Qt 5.9 LTS et Qt 5.12 LTS son déploiement dans vos applications sous Linux Yocto
  • Maîtriser et mettre en oeuvre les mécanismes de la programmation C++ d’interfaces graphiques d’application, multitâche, de gestion d’E/S standard et réseaux sur systèmes embarqués Linux Yocto.

Cette formation Qt5 est particulièrement adaptée aux développeurs débutants ayant quelques notions de programmation Objet, confrontés aux problèmes de développement d‘applications Objet C++ sous Linux embarqué.

L’offre Qt

• Integration Qt sous Yocto et génération du SDK Qt5 sous Yocto

• Les versions SDK Yocto Qt 5.9 LTS et Qt 5.12 LTS

• Les outils de développement Qt 5 : Qt-Creator, Qt-Designer, Qt Linguist et Qt Assistant

• Rappel sur les concepts Objets et programmation C++

• Particularités liées à la gestion mémoire sous Qt et Object parent

• Notions de QMetaClass : Les propriétés, l’instrospection ...<A

 

Programmation des interfaces graphiques

• Architecture d’une application Qt5,

• Modules QtCore, QtWidget

• Classe QDialog, modalité et Boîtes de dialogue standards

• QWidget et Qt Designer

• Notion de layout et feuille de style

Travaux pratiques

• Construction d’applications de type QDialog sous environnement Qt Creator

• Initiation à la création d’interface et de Widget avec Qt-Designer

Mise en oeuvre d’un SDK Yocto Qt 5.12 LTS

• Installation du SDK Qt 5.12 sur poste de developpement

• Parametrage du Kit de déploiement sous Qt Creator

Travaux pratiques

• Debogage distant sur cible Phytec i.MX6 SBC Mira sous QtCreator

Introduction aux applications fenêtre

• Classe QMainWindows

• Gestion des menus et barre de menu

• Traitement des QAction

• Interface multidocuments/vues

Travaux pratiques

• Réalisation d’applications fenêtre de types SDI et MDI

 

Applications fenêtre Qt5

• Presentation de données sur interface graphique :

Notion de Model/Vue et QTableModel

• API 2D et Drawing sous Qt5

• QGraphicsScene et QGraphicsItem

• Gestion des annimations 2D

Travaux pratiques

• Réalisation d’une application cliente base de données SQL

• Réalisation d’application d’affichage graphique 2D

Chaines, Classes Containers flux et sérialisation d’objets

• QString

• QLocale et internationnalisation des applications Qt 5 avec Qt Linguist

• Gestion du système de fichiers

• QStreamData, QStreamText, méthode de sérialisation d’objects

• Gestion des réglages de l’application via QSettings

• QtXML : introduction au support XML (SAX et DOM)

Programmation multitâche sous Qt5

• Affinité de thread et boucle d’événement

• Classes QThread, QEvent, QSemaphore, QMutex ...

• QProcess : Inter-Process Communication

• QStateMachine

Programmation réseau et bus de terrain Qt5

• Module QtNetwork

• QSocketUDP et QSocketTCP client et Serveur

• QStcpServer (Stream Control Transmission Protocol)

Travaux pratiques

• Mise en oeuvre d’une application client/serveur ModbusTCP/IP entre un PC Linux et plate-forme Linux Yocto Qt 5.12 LTS i.MX6

 

Programmation réseau et bus de terrain Qt5 (suite)

• Modules QtSerialBus et QtSerialPort sous Qt 5.12 LTS : Port série et Bus Can

Travaux pratiques

• Réalisation d’une application multitâche d’acquision d’E/S CAN bus sur cible Linux Yocto Qt 5.12 LTS i.MX6 QuadCore

Customisation d’une Image Yocto Qt5

• Recette minimale de construction de paquetage

• Customisation de recettes d’image Linux Yocto et génération du SDK Qt5 associé

Travaux pratiques

• Écriture d’une recette simple Yocto pour l’intégration de votre application Qt5 à l’image filesystem finale.

• Analyse d’exemples de paquetages et gestion des mises à jour unitaires sous Yocto sur cible phytec Linux Yocto Qt 5.12 LTS i.MX6 SBC Mira iMX6

Customisation d’une Image Yocto Qt5 (suite)

• Ajout des étapes de compilation et notion de classes

• Cross compilation Qt5 avec CMake sous Yocto

• Syntaxe bitbake avancée

Travaux pratiques

• File system read only et partitionnement du système de fichier sous Yocto

• Mise en oeuvre d’un QTimer dans une application tactile d’acquision de GPIO  et de Key Button sur cible Phytec i.MX6 SBC Mira sous QtCreator

• Gestion des droits d’accés aux périphériques linux et règles udev

• Recette d’ajout de script de démarrage avec initd

• Recette d’ajout de service de démarrage sous Systemd