La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Microinformatique embarquée à l’ISET - HEL

Présentations similaires


Présentation au sujet: "Microinformatique embarquée à l’ISET - HEL"— Transcription de la présentation:

1 Microinformatique embarquée à l’ISET - HEL

2 2 approches sont étudiées A) Windows CE B) Linux embarqué

3 Historique A&R Traitement Image Matrox DOS Spectromètre embarqué NTE DiscOnChip Traitement des Défauts Apprentissage RedHat Emacs Mise en Œuvre Clips

4 Windows CE

5 Historique CE CE 6.0 CE 5.0 CE .net 4.1 CE .net 4.2 CE 3.0 CE .net 4.0
PB 4.0 eVC 4.0 Temps réel PB 3.0 eVC & eVB 3.0 CE 6.0 CE 5.0 CE .net 4.1 CE .net 4.2 CE .net 4.0 CE 3.0 CE 2.11 CE 1.0 CE 2.12 CE 2.0 1996 1997 1998 1999 2000 2001 2002 2003 2004 2006

6 Qui fait quoi ? microsoft OEM utilisateur Application Win32 - CE
Sous-ensemble de l’API Win32 Device Drivers Object Store Kernel GWES Shell Couche d'adaptation du matériel (OAL) Matériel

7 Les Outils Windows CE Etape 1 Fabriquer le système
Platform Builder Gestion des composants du système Etape 2  Surveiller le système Embedded Visual Tools Processus, Mémoire, Fichiers … Etape 3  Développer des Applications Embedded Visual Studio Applications C/C++ utilisant l’API win32 et la LibC Visual Studio.net Applications C# utilisant le Compact Framework inclus Platform Manager inclus

8 1 - Platform Builder Base de données de Binaires & Sources
OEM Adaptation Layer Noyau Windows CE Pilotes de Périphériques (PCI, USB, Com …) Piles de protocoles, Systèmes de fichiers, Modèle d’IHM Shells & Applications

9 1 - Platform Builder Environnement de développement
Génération de Makefiles Compilateurs croisés (x86, ARM, SH, MIPS) Outils de packaging, et de téléchargement Outil Graphique Interactif (IDE) Visualisation des composants, choix, Drag&Drop Menus contextuels, Debug symbolique.

10 2 - Embedded Visual Tools
Outils de Vérification & Performances Kernel Tracker  chronogrammes des objets système Call Profiler  analyse des temps d’exécution Performance Monitor  graphiques d’activité du système Outils de gestion de la cible et utilitaires ZoomIn  copies d’écrans Outils de Debug SPY++  messages Windows Heap Walker  analyse de la zone de malloc Process Viewer  information processus et threads File Viewer  gestion des fichiers de la cible Registry Viewer  édition de la base de registres de la cible System Infos  paramètres généraux du système

11 3 - Développer des Applications
Compilées Modèle d’application Native embedded Visual Studio 4.0 Platform Builder 4.1 C ou C++ Applications Win32 Runtime CLR Modèle d’application Managed Visual Studio .NET avec Device Extensions C# ou VB .NET Applications pour le Compact Framework .NET Compact Framework Common Language Runtime OS Windows CE .NET

12 Application CE 6.0 Présentation d’Olivier Delvaux

13 Linux Embarqué Applications Web Server

14 Présentation de la carte DIL/NetPC DNP/5280

15 Présentation de la carte DIL/NetPC DNP/5280
Le kit de développement est composé d’un microcontrôleur basse consommation Motorola ColdFire, d’un stack TCP/IP Realtek et d’un Web Server « BOA ».

16 Présentation de la carte DIL/NetPC DNP/5280
DIL/NetPC DNP/5280 with 66 MHz Motorola MCF5280 ColdFire and Firmware in Flash memory, 3.3 VDC Vcc Firmware and Embedded Linux pre-installed in Flash memory Evaluation Board DNP/EVA2-SV6 (Special Version 6) Null modem Cable 110 VAC or 230 VAC to 5 VDC International Power Supply CD-ROM with User Manual and Hardware/Programmers Manuals Embedded Linux with Source

17 Présentation de la carte DIL/NetPC DNP/5280
GNU Cross Tool Chain for C/C++ Software Development for Linux-based PCs elf2flt Converter Program (m68k ELF to uClinux bFLT) GNU gdb and gdbserver for Ethernet-based Remote Debugging Free TFTP Server Program for Win32-based PCs Linux Remote Login with Telnet Web Server Setup Sample Embedded TFTP Client Many Sourcecode Samples

18 Configuration de la carte
Mode Debug: Activation Pour activer le mode Debug, Placer le Jumper entre la Pin1 et la Pin20 du connecteur BDM (Background Debug Mode)

19 Accès au mode DEBUG RS232 115200Bauds 8 bits de données No Parity
1 Stop Bit Pas de contrôle de flux

20 Configuration de la carte
Mode Debug: Utilisation (1) Test de la communication Communication hyperterminal ouverte Reset de la carte

21 Configuration de la carte
Mode Debug: Utilisation (2) Commandes utiles à la configuration Show Set Client <son IP> Gateway <passerelle du réseau local> Netmask <adresse de sous-réseau> Server <adresse IP du serveur utilisé lors de la MAJ de l’image Linux>

22 Configuration de la carte
Mode Debug: Utilisation (3) Commandes utiles à la configuration Help : affiche toutes les commandes disponibles. Dn –i : permet d’uploader l’« image.bin » à partir du serveur TFTP renseigné par le champ serveur (cf. set serveur <IP>) fl w 0xff x x200000 Ecriture physique en mémoire FLASH MAJ de l’image Linux avec la liaison RS-232 implémentée

23 Connexion au PC Connexion Ethernet à l’aide d’un câble croisé.
Pour se connecter via une liaison Ethernet nous devons configurer des IP en mode statique. Exemple : IP Serveur = IP Client =

24 Connexion via TELNET Sous Linux :
Connexion : telnet adresse_IP_Serveur Upload d’un fichier via TFTP : tftp –g –l nom_du_fichier adresse_IP_machine ... autres commandes Consol Linux (rm,cd .., …) Sous Windows : Upload et download d’un fichier via TFTP : PUT et GET

25 Serveur WEB embarqué Le noyau linux embarqué possède un serveur web « BOA » Il se trouve dans le répertoire /home/httpd/ de la carte de développement Ce répertoire doit obligatoirement contenir un fichier index.html

26 CGI La Common Gateway Interface (littéralement « Interface passerelle commune »), est une technologie des serveurs HTTP. Ce dernier, au lieu de renvoyer le contenu d'un fichier (image ou HTML), exécute un programme puis retourne le contenu généré, comme s'il s'agissait d'un contenu de fichier. CGI permet de passer des paramètres au programme, de telle manière qu'il en tienne compte pour générer les données.

27 CGI Indépendant du langage
Certains répertoires sont définis pour être servis par un programme CGI (CGI-BIN dans notre cas). Lorsqu'une requête correspondant à ce répertoire est effectuée, le serveur appelle le programme CGI correspondant, en envoyant au programme toute donnée que le client aurait envoyée (par exemple, un mot-clé pour effectuer une recherche). Le résultat du programme CGI est récolté par le serveur, puis retourné au client.

28 CGI Indépendant du langage.
Certains répertoires sont définis pour être servis par un programme CGI (CGI-BIN dans notre cas). Lorsqu'une requête correspondant à ce répertoire est effectuée, le serveur appelle le programme CGI correspondant, en envoyant au programme toute donnée que le client aurait envoyée (par exemple, un mot-clé pour effectuer une recherche). Le résultat du programme CGI est récolté par le serveur, puis retourné au client.

29 CGI Résumé Principe en C
Les CGI sont des programmes (c ou c++ …) spécifiques situés sur un serveur qui peuvent être exécutés par un client à partir de pages HTML et renvoient un flux HTML au client au travers d’un serveur web (BOA dans ce cas). Principe en C main { printf( «<HTML> [FLUX HTML] </HTML> »); return(EXIT_SUCCESS); }

30 CGI Mécanisme: Paramétrage et activation de la liaison série.
Switch case sur les paramètres d’entrée Envois de la commande adéquate ex: serial_tx(dev,RS232,strlen(RS232)); Réception et interprétation de la String de retrour ex: serial_rx(dev,rx,98); Renvois du flux HTML avec variables printf("<HTML>\n"); printf("TEST DE LA CONNEXION : %s \n",&rx); printf("<A HREF=\"http:// \">Back to the menu</A>"); printf("</HTML>\n");

31 CGI Mise en place d’un CGI: Compilation sur une station Linux :
m68k-elf-gcc –m5307 –Wl,-elf2flt –Os –o cgihello cgihello.c –lc Migration vers la carte : cd /home/httpd/cgi-bin tftp –g –l cgihello <IP Source> chmod 777 cgihello Ligne de compilation du cross compilateur C (GCC)

32 CGI Première Application Affichage de la température de 2 capteurs via la ligne série de l’ATMega8

33 Architecture Le température est envoyée sur le port série par une carte annexe (ATMega8). La plateforme linux coldfire renvoie ces données sur demande en flux http. DNP/5280 Capteurs de température Dallas 1Wire DS1820 et I2C DS1621 Liaisons Ethernet Client HTTP

34 Page HTML Suivant le lien sur lequel on clique, on envois un argument au programme CGI <a href=http:// /cgi-bin/temp?a>Afficher la valeur des 2 capteurs. <br><br></a> <a href=http:// /cgi-bin/temp?b>Afficher la valeur du capteur i2c. <br><br></a> <a href=http:// /cgi-bin/temp?c>Afficher la valeur du capteur 1wire.<br><br></a>

35 Résultat switch(*argv[1]) { case 'a':
printf ("Content-type: text/html\n\n"); printf ("<html>\n"); printf ("<head>\n"); printf ("<title>\nCGI Hello Demo</title>\n"); printf ("</head>\n"); printf("<BODY vLink=#FFFFFF aLink=#FFFFFF link=#FFFFFF bgColor=#800000>"); printf("<center>"); printf("<center><font color=#FFFFFF> Thermometre numerique</font></center>"); printf ("<h1>\n capteur 1wire : %c%c</h1>\n",var1,var2); printf ("<h1>\n capteur i2c : %c%c,%c</h1>\n",var3,var4,var5); printf ("</body>\n"); printf ("</html>\n"); break;

36 Deuxième Application Contrôle à distance d’un oscilloscope numérique à travers une interface CGI

37 Aperçu du résultat à obtenir
Browser Liaison Logique Linux Embedded RS-232

38 Oscilloscope TDS210 Communication : RS232 : No Parity 1 Stop Bit
9600 Bauds Pas de contrôle de flux 8 bits de données Logiciel : Hyper terminal pour tester les commandes.

39 Oscilloscope TDS210 Commandes utilisées pour le dialogue avec l’oscilloscope : RS232? Affiche la configuration en cours de la liason serie de l’oscilloscope. MEASUREMENT:IMMED? Affiche la configuration de la mesure immédiate : CH1 / CH2 TYPE : Moyenne ou Fréquence Coupling : AC/DC

40 Oscilloscope TDS210 Commandes utilisées pour le dialogue avec l’oscilloscope (2): MEASUREMENT:IMMED:VALUE? Renvoi la valeure de la mesure immédiate BUSY? Renvoi : 1 (Occupé) / 0 (Libre) MEASUREMENT:IMMED:TYPE FREQ Défini la mesure pour une fréquence. MEASUREMENT:IMMED:TYPE MEAN Défini la mesure pour une tension (DC-AC efficace ).

41 Oscilloscope TDS210 Commandes utilisées pour le dialogue avec l’oscilloscope (3): CHX:COUPLING YY X : 1 ou 2 pour le canal. YY : AC-DC pour la valeur à mesurer. MEASUREMENT:IMMED:SOURCE CHX Défini le canal X (1 ou 2) comme la source de la mesure. CHX:VOLTS? Retourne l’échelle des V/DIV du canal X (1 ou 2).

42 Serveur WEB embarqué Exemple de page html : <html> <head>
<title>Nouvelle page 1</title> </head> <body> <A HREF="http:// /cgi-bin/test.cgi?a"> Test RS-232 </A> </body> </html> Résultat : Page web avec un lien vers le test.cgi en passant le paramètre ‘a’.

43 Serveur WEB embarqué Exemple de page html : 1 2 [Résultat Browser] 4 3
<TABLE BORDER=5 CELLPADDING=0 CELLSPACING=0 ALIGN="CENTER"> <TR><TD><p></p> <A HREF="http:// /cgi-bin/test.cgi?a"> Test RS-232 </A> </TD></FORM></TR></TABLE> 1 2 [Résultat Browser] 4 3 [Oscilloscope]

44 Merci pour votre attention
Place à la Jeunesse


Télécharger ppt "Microinformatique embarquée à l’ISET - HEL"

Présentations similaires


Annonces Google