picdem.net. carte picdem.net rs232 ethernet alim lcd2 x 16 rtl8019 pic

41
PICDEM.net

Upload: danielle-richard

Post on 03-Apr-2015

126 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

PICDEM.net

Page 2: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC
Page 3: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Carte PICDEM.net

RS232 EthernetAlim

LCD 2 X 16

RTL8019

PIC

Page 4: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Schéma PICDEM.net

Reset

RB5

NIC

Page 5: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

LCD, EEPROM, ICD2

Page 6: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

RS232

Page 7: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Interface réseau (NIC) RTL8019

(NIC)Network Interface Controller

Transfo. et prise Ethernet

Page 8: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Adressage du RTL8019

0 0000 0000 0110 000x xxxxCablé à l’adresse &h300 (bus ISA)

Page 9: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

RTL8019 en boitiers 100L QFP

Page 10: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Démonstration (mpnicee.mcp)

Version pour RTL8019 ou compatible NE2000

Fichier compressé MCHPStackv211.EXEAutour du 18F452

Page 11: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Page d’accueil

Page 12: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Fichiers source C et web

Fichiers sources principale (main) Webserv.c

Fichiers web principale index.htm

Page 13: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Liaisons PICDEM.net au PC client

Port Ethernet (RJ45)

PC client

Port COM

Liaison Ethernet (RJ45) direct par câble croisé , par câble droit avec un hub ou réseau local

PICDEM.net

Page 14: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Configuration de l’Hyper Terminal

Page 15: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Menu de Paramètrage

Réponse du PICSERVEUR après appuis en simultané de la touche reset et RB5

1 : Adresse mac en decimal pour les deux derniers octets du PICServeur

(00 04 a3 00 XX XX)

2 : Adresse IP du PICServeur

3 : Passerelle Internet

4 : Masque de sous réseau

5/6 : Attribution d’adresse IP par serveur DHCP sur le reseau

7 : Transfert du fichier image des fichiers HTML et autre que le serveur retournera à la demande

Page 16: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Configuration IP du PC

Page 17: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Compilation des fichiers en fichier image (*.BIN)

Cible du raccourci MPFSC:\MCHPStack\source\MPFS.exe C:\MCHPStack\Source\WebPages test.bin

Page 18: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Transfert du fichier image par l’Hyper Terminal

Page 19: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Transfert du fichier image par FTP

Utilisateur : ftpMot de passe : microchip

Cible du raccourci (FTP)C:\MCHPStack\ftp\ftp.exe 192.168.0.2

Page 20: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

INDEX.HTM<HTML><HEAD><TITLE>Microchip TCP/IP Stack Demo</TITLE></HEAD><FRAMESET rows="15%,40%,20%" border=0><FRAME name="top" src="Header.htm" marginheight=0 marginwidth=10><FRAME name="middle" src="Home.htm" marginheight=5 marginwidth=10><FRAMESET cols="50%,50%" border=0><FRAME name="left" src="Status.cgi" marginheight=2 marginwidth=50%><FRAME name="right" src="Commands.cgi" marginheight=2 marginwidth=50%></FRAMESET></FRAMESET></HTML>

Page 21: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

HOME.HTM<html><head><title>PICStack Home</title></head><body bgcolor="#FFFFFF"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td valign="top" width="50%"><font color="#000000"><strong>Welcome!</strong></font></a><p><font color="#000000">This site is used to demonstrate the power and abilities of an 8-bit embedded web server. This site is powerd by Microchip PIC microcontroller running Microchip TCP/IP Stack. Everything you see is served through a Microchip PICDEM.net Internet/Ethernet demonstration board.</font></p></td> <td valign="top" width="50%"><font color="#000000">Bottom half of this page illustrates a real-time control of PICDEM.net board. &quot;Status&quot; section refreshes board information every few seconds and &quot;Commands&quot; section issues command to toggle on-board LEDs. </font><p><font color="#000000">Push on-board switch or rotate one of the potentiometers and see the screen getting updated. You may also click on one of the two LED command buttons toggle on-boad LEDs.</font></p> </td> </tr></table></body></html>

Page 22: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

STATUS.CGI

<html><meta http-equiv="refresh" content="3"><body><table><tr><td><b>Results</b></td></tr><tr><td>Pot1:</td><td>%02</td></tr><tr><td>Pot2:</td><td>%03</td></tr></table><table cellpadding="3"><tr><td>Switch:</td><td>%04</td></tr>

<tr><td>LEDs:</td><td>D6=%01</td><td>D5=%00</td></tr></table></body></html>

Declaration dans (websrvr.c)/* * CGI Variable codes. - There could be 0-255 variables. */#define VAR_LED_D5 (0)#define VAR_LED_D6 (1)#define VAR_ANAIN_AN0 (2)#define VAR_ANAIN_AN1 (3)#define VAR_DIGIN_RB5 (4)

Page 23: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

“Sniffer” STATUS.CGI

PC PICServeur

PC

PICServeur

Page 24: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

WORD HTTPGetVar(BYTE var, WORD ref, BYTE* val){switch(var) { case VAR_LED_D5: if ( LATA3 ) *val = '0'; else *val = '1'; break;

…………….. case VAR_ANAIN_AN0: if ( ref == HTTP_START_OF_VAR ) { ref = (BYTE)0; } *val = AN0String[(BYTE)ref]; if ( AN0String[(BYTE)ref] == '\0' ) return HTTP_END_OF_VAR;

(BYTE)ref++; return ref;

Webserv.cFonction “HTTPGetVar”

Page 25: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

COMMAND.CGI

<html><body bgcolor="#FFFFFF"><FORM METHOD=GET action=0><table><tr><td><b>Commands</b></td></tr><tr><td><input type=submit name=0 value="Toggle LED1"></td></tr><tr><td><input type=submit name=1 value="Toggle LED2"></td></tr></table></body></html>

Valeur renvoyé au serveur par clic sur "Toggle LED1 ou 2"

Page 26: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

“Sniffer” COMMAND.CGI

<tr><td><input type=submit name=0 value="Toggle LED1"></td></tr>

Page 27: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Webserv.cFonction “HTTPExecCmd”

Fonction > void HTTPExecCmd(BYTE** argv, BYTE argc) dans (websrvr.c) var = argv[1][0] - '0';

switch(var) { case VAR_LED_D5: /* * This is "D5". * Toggle D5. */ LATA3 ^= 1; break;

case VAR_LED_D6: /* * This is "D6". * Toggle it. */ LATA2 ^= 1; break; }

Exécution des commandes :Valeurs retournées par un clic sur “Toggle LED1”“http:192.168.0.2/0?0=Toggle+LED1”

Page 28: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

0?0=Toggle+LED1Overview: This function is a "callback" from HTTPServer task. Whenever a remote node performs interactive task on page that was served, HTTPServer calls this functions with action arguments info. Main application should interpret this argument and act accordingly.

Following is the format of argv: If HTTP action was : thank.htm?name=Joe&age=25 argv[0] => thank.htm argv[1] => name argv[2] => Joe argv[3] => age argv[4] => 25

Page 29: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Carte test ISA RTL8019“NE2000”

ISA

Page 30: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

R

ES

ET

RB5

RS232

POT2

POT1

LED

1LED

2

VLCD

Page 31: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Edition de pages HTML (MOZILLA)

Page 32: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

“Edition avec MozillaCOMMAND.CGI

Page 33: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC
Page 34: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

“Sniffer” COMMAND.CGI

Page 35: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Application

Contrôle d’un

réseau de gaz

Page 36: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Surveillanced’un

réseau de gaz

Page 37: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Inverseur semi automatique

Pressostats

InverseurManuel

Gaz Argon

Page 38: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Pressostat

Contact

Page 39: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Surveillance d’un réseau de gaz

Page 40: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

Webserv.c

Fonction “WORD HTTPGetVar(BYTE var, WORD ref, BYTE* val)”….

case VAR_DIGIN_RB5: if ( PORTB_RB5 ) *val = '1'; else *val = '0'; break;

case VAR_DIGIN_RB6: if ( PORTB_RB6 ) *val = '1'; else *val = '0'; break;

case VAR_DIGIN_RB7: if ( PORTB_RB7 ) *val = '1'; else *val = '0'; break; }…..

Page 41: PICDEM.net. Carte PICDEM.net RS232 Ethernet Alim LCD2 X 16 RTL8019 PIC

En conclusion

ExplorateurHTTP

FTP

NICSTACK IP

CommandCGI

EEPROM

StatusCGI

Sortie

Entrée

HTTPGetVar

HTTPExecCmd