Communication série, 2011/2012, TD1 : Différence entre versions
Ligne 19 : | Ligne 19 : | ||
On veut créer une site web où on entre des caractères, qui sont envoyé en parallèle vers une liaison série puis ils nous reviennent en parallèle. | On veut créer une site web où on entre des caractères, qui sont envoyé en parallèle vers une liaison série puis ils nous reviennent en parallèle. | ||
− | /*<!DOCTYPE html> | + | '''/*<!DOCTYPE html> |
<html> | <html> | ||
<head> | <head> | ||
Ligne 89 : | Ligne 89 : | ||
</body> | </body> | ||
</html> | </html> | ||
− | */ | + | */''' |
Version du 28 mars 2012 à 10:26
Partie électronique:
Mercredi 21 Mars 2012:
On a en entrée un signal sur 8 bits en parallèle.
On a une liaison série qui est toujours à 1, tant qu'on ne transmet pas de données.
A l'appui sur un bouton, on met le signal en série et on l'envoit sur la liaison.
Le signal est réceptionné et remit en parallèle.
Mercredi 28 Mars 2012:
Sur la nanoboard, la LED est allumée tout le temps. Sauf quand on appui sur le bouton et on le relache, au bout de 8 temps d'horlogela LED clignote suivant les entrées qu'on lui à mise (mais au moins une fois pour le bit de start). Et après 9 temps la LED reste allumée.
Partie informatique:
On veut créer une site web où on entre des caractères, qui sont envoyé en parallèle vers une liaison série puis ils nous reviennent en parallèle. /*<!DOCTYPE html> <html>
<head> <meta charset="utf-8" /> <title>Communication série</title> </head>
<body>
<script type="text/javascript" src="prototype.js"></script>
Entrée des caractères
<FORM METHOD="POST" ACTION="pageWebProjet.html" enctype="multipart/form-data">
entrer les caractères | <INPUT type=text name="char"> | <INPUT type="submit" value="Envoyer"> |
</FORM> <?php /* Prepare the read array */ $read = array($stream1, $stream2); $write = NULL; $except = NULL; if (false === ($num_changed_streams = stream_select($read, $write, $except, 0))) { /* Error handling */ } elseif ($num_changed_streams > 0) { /* At least on one of the streams something interesting happened */ } ?>
<?php // Quelques constantes
define('SOCKET_ECRITURE','/tmp/serial.send'); define('SOCKET_LECTURE','/tmp/serial.recv');
// Test de lecture de 8 octets
$fe=fsockopen('unix://'.SOCKET_ECRITURE); if(!$fe) die("fsockopen,write\n"); $fl=fsockopen('unix://'.SOCKET_LECTURE); if(!$fl) die("fsockopen,read\n"); if(fwrite($fe,"\0")!=1) die("fwrite\n"); for($i=0;$i<8;$i++){
$byte=fread($fl,1); if(strlen($byte)!=1) die("fread\n"); printf("%02x\n",ord($byte[0])); }
fclose($fe); fclose($fl); ?>
Champ de reception <h2>
<form method=get action="pageWebProjet.html">
<textarea name="sortie" rows="2" cols="15">
</textarea>
</form>
</p>
</body>
</html>
- /
<textarea name="sortie" rows="2" cols="15"> </textarea>