Você está na página 1de 98

Solues para Ethernet

e TCP/IP com Microchip


2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 2 2
Por que
Internet Embedded?
- Conectividade entre pessoas, equipamentos e
servios.
- Monitorao de ambientes, processos, etc.
- Possibilita atualizaes ou modificaes.
- Rastrear equipamentos, problemas, causas, etc.
- Forte argumento de venda: Valoriza o produto.
- Passo frente da concorrncia: Tecnologia de
ponta.
- Forte tendncia, tecnologia j conceituada,
globalizada.
- Atualmente custo baixo: Acessvel.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 3 3
O que eu posso fazer ?
Possibilita Aplicaes com Acesso Remoto
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 4 4
Objetivo da Aula
Ao final da aula voc ir...
- Ter informaes bsicas sobre a teoria Modelo
Internet;
- Conhecer o necessrio para Internet Embedded;
- Entender as funes bsicas de um Ethernet
Controller;
- Conhecer as solues da Microchip (Hardware e
Software).
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 5 5
Agenda
- Introduo Terica ao Modelo Internet:
Camadas, protocolos e respectivas funes.
- Camada Aplicao;
- Camada Transporte;
- Camada Rede;
- Camada Fsica.
- Apresentao do Ethernet Controller
- Construindo o hardware com o ENC28J60.
- A pilha TCP/IP da Microchip.
- Projetos prticos com o ENC28J60.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 6 6
Agora:
- Introduo Terica ao Modelo Internet:
Camadas, protocolos e respectivas funes.
- Apresentao do ENC28J60.
- ENC28J60 versus RTL8019AS.
- ENC28J60 versus CS8900CQ.
- Conhecendo o driver do ENC28J60.
- Construindo o hardware com o ENC28J60.
- A pilha TCP/IP da Microchip.
- Projetos prticos com o ENC28J60.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 7 7
IEEE - SA
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 8 8
IEEE - SA
- Institute of Electrical and Electronics Engineers, Inc
- Organizao sem fins lucrativos.
- Responsvel por cerca de 30% das literaturas
publicadas no mundo na reas: eltrica, eletrnica
e computao.
- http://www.ieee.org
- No web-site pode ser feito o download das
especificaes de cada protocolo:
(RFC - Request For Comments)
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 9 9
Arquiteturas
Modelo
Modelo
ISO/OSI
ISO/OSI
Transporte
Enlace
Rede
Sesso
Apresentao
Aplicao
Fsica
Modelo
Modelo
Internet
Internet
Transporte
Rede
Internet
Aplicao
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 10 10
Funes das Camadas
Transporte
Rede
Internet
Aplicao
- Conjunto de protocolos para
implementao dos servios da
internet
- Garante o envio / recepo dos
pacotes
- Faz o endereamento e roteamento
entres os ns da rede
- Implementa a recepo e
transmisso dos datagramas
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 11 11
Sentido dos Pacotes
Transmisso
Transmisso
Transporte
Rede
Internet
Aplicao
Recep
Recep

o
o
Transporte
Rede
Internet
Aplicao
Meio F Meio F sico sico
Dados
Dados
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 12 12
Internet
Transporte
Transporte
Aplicao
Aplicao
Aplicao
Dados
Dados
Dados
Dados
Rede Internet Transporte Aplicao Dados
Cabealhos
Camada de Rede
Camada Internet
Camada Transporte
Camada Aplicao
Transmisso Transmisso
Recep Recep o o
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 13 13
Protocolos nas Camadas
Exemplos de Protocolos:
Exemplos de Protocolos:
Camada de Rede
Camada Internet
Camada Transporte
Camada Aplicao
Modem USART Ethernet
PPP SLIP ARP
IP
ICMP
UDP TCP
DHCP SMTP SNMP HTTP FTP
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 14 14
Reviso: Introduo
- Protocolo:
- Documentao / Regras de trfego de dados.
- Cabealho:
- Informaes referentes ao respectivo protocolo.
- Camada:
- Conjunto de protocolos relacionados de acordo
com a sua funo.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 15 15
A Necessidade
Armazenar uma pgina web em um
sistema embbeded.
Ter acesso a pgina de qualquer lugar
do planeta.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 16 16
- Linguagem de programao mais comum o HTML -
HyperText Markup Language
- Pode ser feito utilizando software especficos como:
FrontPage, CorelDraw, Dreamweaver, .
- Ou diretamente em editores de texto.
- Para maiores informaes sobre HTML verso 2.0
verifique a RFC 1866
A Pgina WEB
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 17 17
Web Page
Exemplo completo
<html>
<head>
<title>Pgina Exemplo</title>
</head>
<body>
<h1>Minha Primeira Web Page</h1>
<p>Comparado com assembly, HTML
<b>muito</b> fcil!</p>
</body>
</html>
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 18 18
Web Page
Exemplo completo
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 19 19
A Camada Aplicao
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 20 20
A Camada Aplicao
- HTTP - HyperText Transfer Protocol
- O mais popular protocolo de aplicao internet.
- Navegadores o utilizam para buscar nos servidores as
pginas web.
- Abordaremos a verso 1.0 (mais simples).
- Relacionamento do tipo Cliente / Servidor.
- Dados devem ser valores em ASCII.
- Cliente envia um comando, ou mtodo.
- Servidor responde uma ou mais mensagens (pgina
web).
- RFC 1945.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 21 21
- - Os trs M Os trs M todos (comandos) principais so: todos (comandos) principais so:
- - GET: GET: O cliente deseja receber informa O cliente deseja receber informa es contidas es contidas
em um endere em um endere o o- -padro da internet. padro da internet.
- - HEAD: HEAD: Idntico ao GET, por Idntico ao GET, por m, recebe apenas as m, recebe apenas as
informa informa es do cabe es do cabe alho do recurso dispon alho do recurso dispon vel no vel no
endere endere o o- -padro. padro.
- - POST: POST: Usado para transferir informa Usado para transferir informa es do Cliente es do Cliente
para o Servidor. Por exemplo, pressionamento de para o Servidor. Por exemplo, pressionamento de
um boto. um boto.
Exemplo: Exemplo:
GET GET< <sp sp> >http://198.175.253.32/ http://198.175.253.32/< <sp sp> >HTTP/1.0 HTTP/1.0\ \r r\ \n n
A Camada Aplicao
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 22 22
A Camada Aplica
A Camada Aplica

o
o
- - Cabe Cabe alho m alho m nimo HTTP: nimo HTTP:
HTTP/1.0 200 OK HTTP/1.0 200 OK
Server: PIC18F4620 verso 1.0 (Embarcado) Server: PIC18F4620 verso 1.0 (Embarcado)
Content Content- -Type Type: : text text/ /html html
< <html html> >
< <head head> >
<meta <meta http http- -equiv equiv=" ="refresh refresh" " content content="30"> ="30">
< <title title>Conectividade TCP/IP para >Conectividade TCP/IP para
Microcontroladores Microcontroladores</ </title title> >
. .
. .
. .
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 23 23
Reviso: Aplica
Reviso: Aplica

o
o
- - P P gina gina WEB WEB: :
-
-
O c
O c

digo deve ser desenvolvido em


digo deve ser desenvolvido em
editores pr
editores pr

prios;
prios;
-
-
Deve ser armazenada em uma mem
Deve ser armazenada em uma mem

ria.
ria.
- - Relacionamento Cliente / Servidor: Relacionamento Cliente / Servidor:
-
-
Navegador (cliente) envia comando;
Navegador (cliente) envia comando;
-
-
Placa (servidor) responde a p
Placa (servidor) responde a p

gina;
gina;
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 24 24
A Camada Transporte
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 25 25
A Camada Transporte
- TCP - Transmition Control Protocol
- Robustez ao sistema, garante entrega das mensagens:
- Recupera dados perdidos, danificados, duplicados ou fora de ordem.
- Transferncia bsica de dados:
- Decide quando e como enviar. Pode-se fragmentar os dados.
- Controle de Fluxo:
- Prev campos de indicao dos dados aceitos e dos dados que falta receber.
- Multiplexao:
- Mltiplas conexes simultneas podem ocorrer em um nico n (Socket).
- Conexo Lgica:
- Formada pelo Socket, o nmero de seqncia e o tamanha da "janela.
- Segurana:
- Pode-se indicar a segurana dos pacotes. Incluindo pacotes urgentes.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 26 26
A Camada Transporte
- Socket:
- Conexo necessria sempre que se deseja transmitir
dados
- Conexo TCP entre um cliente e um servidor.
- Formado por um par "IP / Porta Cliente e um par "IP /
Porta Servidor
- Por meio do Socket o protocolo permite que o servidor
atenda diversos IPs (Clientes) ao mesmo tempo.
- Permite tambm que um Cliente possua diversas conexes
com
o servidor.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 27 27
- Incio e Fim de uma Conexo:
- Processo conhecido como Three Way Handshake (3-
WHS).
- Necessrio para que as estaes conheam o valor
inicial do nmero da seqncia adotado. Chamado de
ISN (Initial Sequence Number).
- O nmero inicial da seqncia um valor randmico,
para evitar confuso com o recebimento de pacotes
da conexo anterior.
- RFC 793
A Camada Transporte
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 28 28
A Camada Transporte
Three Way Handshake
Cliente: Cliente:
(TCP) (TCP)
Servidor: Servidor:
(TCP) (TCP)
Cliente Cliente
Servidor Servidor
1: Dados p/ TX 1: Dados p/ TX
2: Informa ISN 2: Informa ISN
3: Informa ISN 3: Informa ISN
4: ACK para ISN 4: ACK para ISN
5: Mostra Dados 5: Mostra Dados
6: Fim TX Dados 6: Fim TX Dados
7: ACK Fim TX 7: ACK Fim TX
8: Fim RX Dados 8: Fim RX Dados
8: ACK Fim RX 8: ACK Fim RX
In In cio cio da da
Conexo Conexo
Final Final da da
Conexo Conexo
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 29 29
0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9
1 1
0 0
1 1
1 1
1 1
2 2
1 1
3 3
1 1
4 4
1 1
5 5
1 1
6 6
1 1
7 7
1 1
8 8
1 1
9 9
2 2
0 0
2 2
1 1
2 2
2 2
2 2
3 3
2 2
4 4
2 2
5 5
2 2
5 5
2 2
7 7
2 2
8 8
2 2
9 9
3 3
0 0
3 3
1 1
Porta de Origem Porta de Origem Porta de Destino Porta de Destino
N N mero de Confirma mero de Confirma o (ACK) o (ACK)
Op Op es es Padding Padding
Dados ... Dados ...
Numero de Seq Numero de Seq ncia ncia
Data Offset Data Offset Reservado Reservado
U U
R R
G G
A A
C C
K K
P P
S S
H H
R R
S S
T T
S S
Y Y
N N
F F
I I
N N
Window Window
Checksum Checksum Ponteiro de Urgncia Ponteiro de Urgncia
A Camada Transporte
Cabealho TCP
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 30 30
Reviso: Transporte
Reviso: Transporte
- - Administra o envio dos dados: Administra o envio dos dados:
-
-
Fragmenta os dados em partes menores.
Fragmenta os dados em partes menores.
- - Garante a recep Garante a recep o dos pacotes: o dos pacotes:
-
-
Implementa
Implementa
time
time
-
-
out
out
, CRC, ACK, ...
, CRC, ACK, ...
- - Cria uma Conexo L Cria uma Conexo L gica: gica:
-
-
Indicado pelo
Indicado pelo
Socket
Socket
(formado por um par
(formado por um par
IP/Porta).
IP/Porta).
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 31 31
A Camada Internet
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 32 32
A Camada Internet
- IP - Internet Protocol
- Utilizado para guiar os datagramas ao seu destino;
- No necessrio que a Camada Rede/Fsica
conhea o contedo do datagrama;
- No possumos garantia 100% de que o datagrama
foi recebido pelo "destino;
- Alm de guiar os datagrama, o IP pode fragment-
los.
- Deve-se identificar a rede utilizando IP para evitar a
interveno de outros ns.
- RFC 791
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 33 33
- Endereo Lgico (IP)
- Formado por 4 bytes.
- Utilizado pela Camada Internet
- Apenas um nico IP por rede
- Deve ser cadastrado no servidor da rede
- Trabalha em conjunto com a Mscara de Rede e
Gateway
- Pode ser programado pelo usurio
- Exemplo: 200 . 207 . 173 . 14 (em decimal)
A Camada Internet
Endereamento
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 34 34
A Camada Internet
Diviso da Rede:
- - Comunica Comunica o do tipo o do tipo " "Longa Distncia Longa Distncia
- - Utilizar IP Utilizar IP Gateway Gateway (Agncia dos Correios): Computador ligado (Agncia dos Correios): Computador ligado
internet internet
- - Comunica Comunica o do tipo o do tipo " "Curta Distncia Curta Distncia
- - Utilizar o IP Desejado. Entrega Direta: No h Utilizar o IP Desejado. Entrega Direta: No h interferncia de interferncia de
outros outros PCs PCs. .
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 35 35
A Camada Internet
Identificao da Rede pelo IP:
-
-
Depende da configura
Depende da configura

o do IP e da M
o do IP e da M

scara
scara
de Rede (
de Rede (
Netmasc
Netmasc
);
);
-
-
Ambos so formados por 4 bytes;
Ambos so formados por 4 bytes;
-
-
IP
IP

AND
AND

M
M

scara
scara
= IP da rede.
= IP da rede.
- - Caso o IP da rede for o mesmo, significa que esto na mesma Caso o IP da rede for o mesmo, significa que esto na mesma
rede. rede.
- - Se estiverem na mesma rede a comunica Se estiverem na mesma rede a comunica o o direta. direta.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 36 36
Exemplo 1 Exemplo 1: O N : O N " "A A deseja enviar dados para o N deseja enviar dados para o N " "B B
- -N N " "A A : :
- - IP: IP: 191 . 166 . 221 . 9 191 . 166 . 221 . 9
- -M M scara: scara: 255 . 255 . 255 . 0 255 . 255 . 255 . 0
- -IP Rede: IP Rede: 191 . 166 . 221 . 0 191 . 166 . 221 . 0
- -N N " "B B : :
- - IP: IP: 191 . 166 . 221 . 237 191 . 166 . 221 . 237
- -M M scara: scara: 255 . 255 . 255 . 0 255 . 255 . 255 . 0
- -IP Rede: IP Rede: 191 . 166 . 221 . 0 191 . 166 . 221 . 0
Esto na mesma Rede !!! Envia diretamente para o Esto na mesma Rede !!! Envia diretamente para o
IP desejado !!! IP desejado !!!
A Camada Internet
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 37 37
A Camada Internet
Exemplo 2 Exemplo 2: O N : O N " "A A deseja enviar dados para o N deseja enviar dados para o N " "C C
- -N N " "A A : :
- - IP: IP: 191 . 166 . 221 . 9 191 . 166 . 221 . 9
- -M M scara: scara: 255 . 255 . 255 . 0 255 . 255 . 255 . 0
- -IP Rede: IP Rede: 191 . 166 . 221 . 0 191 . 166 . 221 . 0
- -N N " "C C : :
- - IP: IP: 231 . 166 . 221 . 21 231 . 166 . 221 . 21
- -M M scara: scara: 255 . 255 . 255 . 0 255 . 255 . 255 . 0
- -IP Rede: IP Rede: 231 . 166 . 221 . 0 231 . 166 . 221 . 0
No Esto na mesma Rede !!! Deve enviar para o No Esto na mesma Rede !!! Deve enviar para o
Gateway !!! Gateway !!!
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 38 38
0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9
1 1
0 0
1 1
1 1
1 1
2 2
1 1
3 3
1 1
4 4
1 1
5 5
1 1
6 6
1 1
7 7
1 1
8 8
1 1
9 9
2 2
0 0
2 2
1 1
2 2
2 2
2 2
3 3
2 2
4 4
2 2
5 5
2 2
5 5
2 2
7 7
2 2
8 8
2 2
9 9
3 3
0 0
3 3
1 1
Verso Verso IHL IHL Tipo Servi Tipo Servi o oTamanho Total Tamanho Total Datagrama Datagrama
Identifica Identifica o o Flags Flags Fragment Fragment Offset Offset
Time to Time to Live Live
Protocolo Protocolo
Checksum Checksum Cabe Cabe alho alho
Endere Endere o L o L gico de Origem gico de Origem
Endere Endere o L o L gico de Destino gico de Destino
Op Op es es
Padding Padding
Dados ... Dados ...
A Camada Internet
Cabealho IP
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 39 39
Cdigo Protocolo Descrio
1) ICMP: Internet Control Message Protocol
2) IGMP: Internet Group Management Protocol
3) GGP: Gateway to Gateway Protocol
6) TCP: Transmition Control Protocol
8) EGP: Exterior Gateway Protocol
17) UDP: User Datagram Protocol
20) HMP: Host Monitoring Protocol
22) XNS-IDP: Xerox NS IDP
27) RDP: Reliable Data Protocol
28) IRTP: Internet Reliable Transaction Protocol
29) ISO-TP4: ISO Transport Protocol Class 4
30) NETBLT: Bulk Data Transfer Protocol
80) ISO-IP: ISO Internet Protocol
86) DGP: Dissimilar Gateway Protocol
87) TCF: Transparent Computing Family
88) OSPF: Open Shortest Path First
A Camada Internet
Cdigos dos Protocolos
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 40 40
Reviso: Internet
Reviso: Internet
- - Direciona os dados: Direciona os dados:
-
-
Identifica se o destino est
Identifica se o destino est

na mesma
na mesma
rede;
rede;
-
-
Utiliza o endere
Utiliza o endere

o IP, M
o IP, M

scara de Rede e
scara de Rede e
Gateway;
Gateway;
-
-
No garante a recep
No garante a recep

o dos dados pelo


o dos dados pelo
destino.
destino.
- - Identifica o protocolo utilizado na camada superior Identifica o protocolo utilizado na camada superior
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 41 41
A Camada Rede
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 42 42
A Camada Rede
ISO/OSI
ISO/OSI
Transporte
Enlace
Rede
Sesso
Apresentao
Aplicao
Fsica
Rede
Controle de Acesso
de Mdia (MAC)
Controle Lgico de
Link (LLC)
Especificaes
de Mdia
Subcamada Fsica
Subcamadas
Subcamadas
de Rede
de Rede
Internet
Internet
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 43 43
A Camada Rede
ISO/OSI
ISO/OSI
Transporte
Enlace
Rede
Sesso
Apresentao
Aplicao
Fsica
Rede
Controle de Acesso
de Mdia (MAC)
Controle Lgico de
Link (LLC)
Especificaes
de Mdia
Subcamada Fsica
Subcamadas
Subcamadas
de Rede
de Rede
Internet
Internet
Protocolo Ethernet
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 44 44
A Camada Rede
- Atualmente, a camada rede mais popular
para LAN a Ethernet (IEEE 802.3):
- Utiliza cabo tipo UTP categoria 5e (cabo azul).
- IEEE 802.3 define:
- Banda mxima possvel;
- Interfaces Fsicas;
- Formato do Frame.
- Vem se popularizando tambm as redes sem
fio com freqncia 2,4GHz
(IEEE 802.11b) e USB.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 45 45
FCS
7
1
6
6
2
46 -
1500
4
Incio do pacote, sincronismo PLL
Delimitador de Incio-do-Frame
Endereo Fsico (MAC) de Destino
Endereo Fsico (MAC) de Origem
Tipo do pacote ou Tamanho do
pacote. (IP 0x0800; ARP 0x0806)
Dados (com padding opcional)
Frame Check Sequence - CRC
Utilizado
no clculo
do FCS
Bytes
Dados
Padding
Tipo/Tamanho
MAC Origem
MAC Destino
SFD
Prembulo
A Camada Rede
Cabealho Ethernet
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 46 46
A Camada Rede
ISO/OSI
ISO/OSI
Transporte
Enlace
Rede
Sesso
Apresentao
Aplicao
Fsica
Rede
Controle de Acesso
de Mdia (MAC)
Controle Lgico de
Link (LLC)
Especificaes
de Mdia
Subcamada Fsica
Subcamadas
Subcamadas
de Rede
de Rede
Internet
Internet
Software
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 47 47
- Endereo Fsico (MAC)
- Formado por 6 bytes.
- Controlado pelo IEEE-AS (IEEE Standards Association)
- Os 3 primeiros bytes so chamados de OUI
(Organizationally Unique Identifier)
- O OUI atribudos pelo IEEE-AS.
- Os outros 3 bytes so atribudos pelo prprio fabricante
- Fabricante deve garantir que o MAC seja nico
- Exemplo 08 : 00 : 02 : 04 : e8 : 6c (em hexa)
A Camada Rede
Endereamento
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 48 48
Protocolo ARP - 0x0806
(Address Resolution Protocol)
- Responsvel para traduo do endereo
lgico (IP) para o endereo fsico:
(MAC - Media Access Control)
- necessrio saber o endereo fsico sempre
que uma estao deseja enviar uma
mensagem para a outra.
- A "origem envia um Broadcast (para todos),
perguntando o "dono do IP de destino.
- Broadcast = ff:ff:ff:ff:ff:ff
- RFC 826
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 49 49
IP Destino
MAC Destino
IP Origem
MAC Origem
2
2
1
1
2
4
Protocolo Fsico Ethernet (0x0001)
Protocolo Lgico IP (0x0800)
Tamanho Fsico (6 bytes)
Tamanho Lgico (4 bytes)
Bytes
Opcode
Protocol Size
Hardware Size
Protocol Type
Hardware Type
Tipo: Pergunta ou Resposta
Endereo Fsico (MAC) de Origem
Endereo Lgico (IP) de Origem
Endereo Fsico (MAC) de Destino
Endereo Lgico (IP) de Destino
6
4
6
A Camada Rede
Cabealho ARP
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 50 50
A Camada Rede
ISO/OSI
ISO/OSI
Transporte
Enlace
Rede
Sesso
Apresentao
Aplicao
Fsica
Rede
Controle de Acesso
de Mdia (MAC)
Controle Lgico de
Link (LLC)
Especificaes
de Mdia
Subcamada Fsica
Subcamadas
Subcamadas
de Rede
de Rede
Internet
Internet
PHY
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 51 51
A Camada Rede
- O que PHY ???
- Componente dedicado para executar as sub-
camadas fsicas da Camada de Rede (Physical).
- Tambm conhecido como "Ethernet Controller.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 52 52
Reviso: Rede
- Identifica o MAC de acordo com o IP
- Utilizando o protocolo ARP.
- Comunicao com o PHY
- Realiza o envio dos dados:
- Implementa as especificaes eltricas;
- Implementa as especificaes de comunicao;
- Comunicao com o PHY.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 53 53
Conectividade Microchip
Soluo Ethernet
IEEE 802.3
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 54 54
Prximo:
- Introduo Terica ao Modelo Internet:
Camadas, protocolos e respectivas funes.
- Apresentao do ENC28J60.
- ENC28J60 versus RTL8019AS.
- ENC28J60 versus CS8900CQ.
- Conhecendo o driver do ENC28J60.
- Construindo o hardware com o ENC28J60.
- A pilha TCP/IP da Microchip.
- Projetos prticos com o ENC28J60.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 55 55
Ethernet Controller Serial
INT, WOL
MCU
8Kbytes
Vdd range =>3,1 at 3,6V Temperatura => -40C at 85C
IEEE 802.3
DIP, SOIC, SSOP, QFN
IEEE 802.3
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 56 56
Stand Alone
Ethernet Controller (28-Pinos)
- ENC28J60
- 10 BASE-T
- 8K bytes RAM Buffer
- Operacional
- Sada para leds: 2
- Interrupes: 2
- Tenso: 3,1 3,6V
- Temp.: -40C to +85C
- Clock: 25 MHz
- Serial: SPI
- Packages (28-Pin)
- SOIC, SDIP, SSOP,QFN
- Padro IEEE 802.3
- MAC & PHY Internos
- Deteco e Correo
Automtica de Polaridade
- Retransmisso Automtica
no caso de Colises
- MAC
- Suporta Mltiplos Filtros
- Utiliza padro empilhamento
- Wake-up (WOL)
- PHY
- 10 BASE-T
- Wave shaping filter
- Loopback Mode
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 57 57
ENC28J60
ENC28J60
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 58 58
Encapsulamento
Encapsulamento
ENC28J60
ENC28J60
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 59 59
Por
Por
dentro
dentro
do ENC28J60
do ENC28J60
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 60 60
Avalia automaticamente
pacotes aceitos
ou rejeitados
Minimiza o uso
de processamento
do Host
Compatvel com
padres industriais
Tecnologia conhecida;
Desenvolvimento rpido
Interface com 4-vias
MCU; Padro serial
Industrial
Necessita de um
nmero menor de
pinos do MCU
Armazena pacotes para
recuperao e
modificao; Diminui o
Processamento do MCU
Sistemas mais
seguros e
flexveis
Caractersticas Benefcios Resultados
Filtro
Programvel
Norma
IEEE 802.3
Interface
10 Mbps SPI
Buffer 8KB
Programvel
(SRAM)
ENC28J60
Principais Caractersticas
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 61 61
Ethernet Controllers
Paralelos
- RTL8019AS (Realtek)
- IEEE 802.3 10Mbit
- 16Kbytes RAM, 100-pin QFP
- ISA Bus
- CS8900A (Cirrus Logic)
- IEEE 802.3 10Mibt
- 4Kbytes RAM, 100-pin QFP
- ISA Bus
- LAN91C111 (SMSC)
- IEEE 802.3/802.3u 10/100 Mbit
- 8Kbytes RAM, 128-pin QFP
- ARM, PowerPC, MIPS 32-bit interface
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 62 62
NOVIDADE !!!
- ENC624J600 - Em Desenvolvimento
-Controlador Stand-alone 10/100Mbps
-Integra MAC + PHY + 24kB SRAM
-3.3V, 20MHz SPI ou Paralelo 8/16
-44 pinos TQFP e QFN, 64 pinos TQFP
-Endereo MAC Pr-programado
-Criptografia com acelerao por
Hardware:
- RSA, DHE, AES, MD5, SHA-1
-Programao:
- Verso Beta : Final de 2008
- Lanamento: 1 semestre 2009
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 63 63
ENC624J600:
Diagrama de Blocos
I
n
t
e
r
f
a
c
e
S
P
I

/

P
a
r
a
l
e
l
a
TX/RX Buffer PHY MAC
PIC Host PIC Host
MCU MCU
com com
SPI SPI ou ou
Paralela Paralela
PIC18 PIC18
PIC24 PIC24
PIC32 PIC32
dsPIC dsPIC
ENC624J600
ENC624J600
10/100 Mbps Ethernet 10/100 Mbps Ethernet
Stand Stand- -alone Ethernet Controller with MAC and PHY alone Ethernet Controller with MAC and PHY
Cryptographic
Security
Engine
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 64 64
Comparao
ENC624J600 ENC28J60 PIC18F97J60
Architecture Stand-Alone Stand-Alone PIC18 with
integrated Ethernet
Integrated MAC
PHY
10/100Base-T 10Base-T 10Base-T
Tx/Rx Buffer (KB) 24 8 8
IEEE802.3
Compliance
Yes Yes Yes
Interface SPI/Parallel 8/16 SPI -
Cryptographic
Security Engine
Yes
(AES, MD5,
SHA-1,RSA )
No No
Pin / Package 44 - TQFP, QFN
64 - TQFP
28 - SPDIP, SSOP,
SOIC, QFN
64 - TQFP,
80 - TQFP,
100 - TQFP
Pre-programmed
MAC Address
Yes No No
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 65 65
ENC624J600 Stand-alone
10/100Mbps Ethernet controller
Operational Features Operational Features
Operating voltage 3.0 to 3.6V Operating voltage 3.0 to 3.6V
24 KB Ethernet Buffer 24 KB Ethernet Buffer
Temperature range Temperature range - -40 40 to 85 to 85 C C
Package options Package options
44 44- -pin TQFP and QFN pin TQFP and QFN
64 64- -pin TQFP pin TQFP
25 MHz Input Clock 25 MHz Input Clock
Clock out pin with programmable frequencies Clock out pin with programmable frequencies
from 50KHz to 33MHz from 50KHz to 33MHz
Hardware Cryptographic Security Engines Hardware Cryptographic Security Engines
RSA RSA

and and Diffie Diffie- -Hellman Key Exchange Hellman Key Exchange
Algorithms Algorithms
AES Encrypt/Decrypt with up to 256 bit key AES Encrypt/Decrypt with up to 256 bit key
Hardware AES ECB, CBC,CFB and OFB Hardware AES ECB, CBC,CFB and OFB
mode capability mode capability
Fast MD5 hash computations Fast MD5 hash computations
Fast SHA Fast SHA- -1 hash computations 1 hash computations
Hardware features help accelerate SSL Hardware features help accelerate SSL
protocol enabled applications protocol enabled applications
Ethernet Controller Features Ethernet Controller Features
IEEE 802.3 complaint IEEE 802.3 complaint
Integrated MAC and single port 10/100 Base Integrated MAC and single port 10/100 Base- -T T
PHY PHY
Hardware Security Engines Hardware Security Engines
SPI interface with speeds up to 20Mbps SPI interface with speeds up to 20Mbps
Supports JTAG Boundary scan Supports JTAG Boundary scan
8 or 16 8 or 16- -bit parallel interface for 44 bit parallel interface for 44- - and 64 and 64- - pin pin
packages packages
MAC MAC
Supports Supports unicast unicast, multicast and broadcast , multicast and broadcast
packets packets
Programmable receive packet filtering Programmable receive packet filtering
PHY PHY
Loopback mode Loopback mode
Energy Detect power down mode Energy Detect power down mode
Availability Availability
Samples Samples CQ4 CQ4 08 08
RTP RTP CQ4 CQ4 08 08
Product Launch Product Launch Jan. Jan. 09 09
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 66 66
Prximo:
- Introduo Terica ao Modelo Internet:
Camadas, protocolos e respectivas funes.
- Apresentao do ENC28J60.
- ENC28J60 versus RTL8019AS.
- ENC28J60 versus CS8900CQ.
- Conhecendo o driver do ENC28J60.
- Construindo o hardware com o ENC28J60.
- A pilha TCP/IP da Microchip.
- Projetos prticos com o ENC28J60.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 67 67
Driver do ENC28J60
- J disponvel no web-site da
Microchip;
- Tabalha em conjunto com a pilha
TCP/IP (v4.02);
- Design Modular (arquivo .c)
- Para C18 ou C30;
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 68 68
Driver do ENC28J60
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 69 69
READ REGISTER 8
READ REGISTER 8
char rd_reg8(char char rd_reg8(char addr addr) )
{ {
enc_spi_on enc_spi_on; ;
SSP1BUF = RCR | SSP1BUF = RCR | addr addr; ;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
SSP1BUF = 0; SSP1BUF = 0;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
enc_spi_off enc_spi_off; ;
return (SSP1BUF); return (SSP1BUF);
} }
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 70 70
READ REGISTER 16
READ REGISTER 16
unsigned unsigned int int rd_reg16(char rd_reg16(char addr addr) )
{ {
enc_spi_on enc_spi_on; ;
SSP1BUF = RCR | SSP1BUF = RCR | addr addr; ;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
SSP1BUF = 0; SSP1BUF = 0;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
SSP1BUF = 0; SSP1BUF = 0;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
enc_spi_off enc_spi_off; ;
return (SSP1BUF); return (SSP1BUF);
} }
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 71 71
WRITE REGISTER
WRITE REGISTER
void void wr_reg(char wr_reg(char addr addr, char data) , char data)
{ {
enc_spi_on enc_spi_on; ;
SSP1BUF = WCR | SSP1BUF = WCR | addr addr; ;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
SSP1BUF = data; SSP1BUF = data;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
enc_spi_off enc_spi_off; ;
} }
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 72 72
CLEAR REGISTER BIT
CLEAR REGISTER BIT
void void bfc_reg(char bfc_reg(char addr addr, char data) , char data)
{ {
enc_spi_on enc_spi_on; ;
SSP1BUF = BFC | SSP1BUF = BFC | addr addr; ;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
SSP1BUF = data; SSP1BUF = data;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
enc_spi_off enc_spi_off; ;
} }
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 73 73
SET REGISTER BIT
SET REGISTER BIT
void void bfs_reg(char bfs_reg(char addr addr, char data) , char data)
{ {
enc_spi_on enc_spi_on; ;
SSP1BUF = BFS | SSP1BUF = BFS | addr addr; ;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
SSP1BUF = data; SSP1BUF = data;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
enc_spi_off enc_spi_off; ;
} }
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 74 74
READ PHY REGISTER
READ PHY REGISTER
unsigned unsigned int int rd_phy(char rd_phy(char reg reg) )
{ {
unsigned unsigned int int rc rc; ;
char char low,high,i low,high,i; ;
banksel(MIREGADR banksel(MIREGADR); ); // Set the right address // Set the right address
wr_reg(MIREGADR wr_reg(MIREGADR, , reg reg); //start the register read operation ); //start the register read operation
wr_reg(MICMD wr_reg(MICMD, MICMD_MIIRD); , MICMD_MIIRD);
banksel(MISTAT banksel(MISTAT); );
do{ do{ // Loop to wait until the PHY // Loop to wait until the PHY
i = rd_reg16(MISTAT); // register has been read through i = rd_reg16(MISTAT); // register has been read through
}while (i & MISTAT_BUSY); // the MII }while (i & MISTAT_BUSY); // the MII
banksel(MIREGADR banksel(MIREGADR); ); // Stop reading // Stop reading
wr_reg(MICMD wr_reg(MICMD, 0x00); , 0x00);
low = rd_reg16(MIRDL); low = rd_reg16(MIRDL);
high = rd_reg16(MIRDH); high = rd_reg16(MIRDH);
rc rc = (high << 8) | low; = (high << 8) | low; // Obtain results and return // Obtain results and return
return return rc rc; ;
} }
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 75 75
WRITE PHY REGISTER
WRITE PHY REGISTER
void void wr_phy(char wr_phy(char reg reg, unsigned , unsigned int int data) data)
{ {
char i; char i; // Write the register address // Write the register address
banksel(MIREGADR banksel(MIREGADR); );
wr_reg(MIREGADR wr_reg(MIREGADR, , reg reg); // Write the data ); // Write the data
// Order is important: write low byte first, high byte last // Order is important: write low byte first, high byte last
wr_reg(MIWRL wr_reg(MIWRL, , LOW_BYTE(data LOW_BYTE(data)); ));
wr_reg(MIWRH wr_reg(MIWRH, , HIGH_BYTE(data HIGH_BYTE(data)); ));
banksel(MISTAT banksel(MISTAT); );
do{ // Wait until the PHY register has been writt do{ // Wait until the PHY register has been written en
i = rd_reg16(MISTAT); i = rd_reg16(MISTAT);
} }while(i while(i & MISTAT_BUSY); & MISTAT_BUSY);
} }
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 76 76
READ SRAM
READ SRAM
char char rd_sram(void rd_sram(void) )
{ {
enc_spi_on enc_spi_on; ;
SSP1BUF = RBM; SSP1BUF = RBM;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
SSP1BUF = 0; SSP1BUF = 0;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
enc_spi_off enc_spi_off; ;
return(SSP1BUF); return(SSP1BUF);
} }
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 77 77
WRITE SRAM
WRITE SRAM
void void wr_sram(char wr_sram(char data) data)
{ {
enc_spi_on enc_spi_on; ;
SSP1BUF = WBM; SSP1BUF = WBM;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
SSP1BUF = data; SSP1BUF = data;
while(SSP1IF == 0); while(SSP1IF == 0);
SSP1IF = 0; SSP1IF = 0;
enc_spi_off enc_spi_off; ;
} }
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 78 78
SOFT RESET
SOFT RESET
void
void
soft_reset(void
soft_reset(void
)
)
{
{
enc_spi_on
enc_spi_on
;
;
SSP1BUF = SC;
SSP1BUF = SC;
while(SSP1IF == 0);
while(SSP1IF == 0);
SSP1IF = 0;
SSP1IF = 0;
enc_spi_off
enc_spi_off
;
;
}
}
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 79 79
BANK SELECT
BANK SELECT
void
void
banksel(unsigned
banksel(unsigned
int
int
reg
reg
)
)
{
{
bfc_reg(ECON1,0b00000011);
bfc_reg(ECON1,0b00000011);
bfs_reg(ECON1,HIGH_BYTE(reg));
bfs_reg(ECON1,HIGH_BYTE(reg));
}
}
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 80 80
Prximo:
- Introduo Terica ao Modelo Internet:
Camadas, protocolos e respectivas funes.
- Apresentao do ENC28J60.
- ENC28J60 versus RTL8019AS.
- ENC28J60 versus CS8900CQ.
- Conhecendo o driver do ENC28J60.
- Construindo o hardware com o ENC28J60.
- A pilha TCP/IP da Microchip.
- Projetos prticos com o ENC28J60.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 81 81
Componentes Externos
para soluo Ethernet:
- Cristal de 25MHz 50ppm
- Transformador isolador Ethernet
- Conector RJ45 (jack)
- ~11 resistores
- ~10 capacitores
- 1 ferrite
- Endereo MAC nico
- Alimentao de 3,3V 200mA
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 82 82
Sugesto de Hardware
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 83 83
Hardware
Hardware
B
B

sico
sico
ENC28J60
ENC28J60
SO
TPOUT-
LEDA
R3 49.9
R7
100K
CLKOUT
R6
180
C6
.1uF
LEDA
+3.3VCC
+
C3
10uF
C7
.1uF
CS
TPIN+
C1 .01uF
INT
R4 49.9
C8
.1uF
TPOUT-
+3.3VCC
C10
18pF
Y1
25MHz
U1
ENC28J60
28
27
26
25
24
23
22
21
20
19
18
17
16
15
7
5
11
13
3
6
1
10
8
12
4
14
2
9
Vdd
LEDA
LEDB
Vdd_OSC
OSC2
OSC1
Vss_OSC
Vss_PLL
Vdd_PLL
Vdd_RX
Vss_TX
TPOUT+
TPOUT-
Vdd_TX
SI
WOL
Vss_RX
TPIN+
CLKOUT
SO
Vcap
RESET
SCK
TPIN-
INT
RBIAS
Vss
CS
L2
60 OHM
R2 49.9
TPIN+
WOL
R8 2.7K
TPIN-
R5 49.9
C9 18pF
LEDB
C2 .1uF
LEDB
R1
180
SCK
TPOUT+
RESET
TPOUT+
C5
.1uF
+3.3VDC
TPIN-
SI
+3.3VCC
C4
.1uF
L1
0810-1X1T-06
1
2
3
4
6
7
8
9
10
5
TPOUT/CT
TPOUT+
TPOUT-
TPIN+
TPIN/CT
LED/YEL/C
LED/YEL/A
LED/GO
LED/GO
TPIN-
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 84 84
Prximo:
- Introduo Terica ao Modelo Internet:
Camadas, protocolos e respectivas funes.
- Apresentao do ENC28J60.
- ENC28J60 versus RTL8019AS.
- ENC28J60 versus CS8900CQ.
- Conhecendo o driver do ENC28J60.
- Construindo o hardware com o ENC28J60.
- A pilha TCP/IP da Microchip.
- Projetos prticos com o ENC28J60.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 85 85
Pilha TCP/IP da Microchip
- Microchip App Note AN833 & AN870
- Cdigo fonte gratuto!
- No tem licena
- Para PICmicro da Microchip
- Download diretamente no web-site
- Suporte tcnico da Michochip
- Conjunto de arquivos:
- Cdigo Linguagem `C
- Utilitrios para PC
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 86 86
Caractersticas da Pilha TCP/IP
- Pode ser utilizada com os compiladores
MPLAB

C18 e C30 da Microchip
- Suporta PIC18, PIC24F, PIC24H, dsPIC30F e dsPIC33F
- RTOS independente - Cooperative
Multitasking Environment
- Design Modular
- Mquina de estado TCP completa
- Socket d suporte para TCP e UDP
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 87 87
Camada Fsica
Camada Rede
Camada Internet
Camada Transporte
Camada Aplicao
* Futuro prximo
USART Ethernet
SLIP ARP
IP
ICMP
UDP TCP
DHCP SMTP* SNMP HTTP FTP
Pilha TCP/IP Microchip
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 88 88
Microchip File System
(MPFS)
- Pequeno e poderoso sistema de arquivos
- Armazenamento flexvel:
-Memria de programa interna;
-Memria EEPROM externa;
- Disponvel software para gerar a imagem
MPFS;
- Apenas pequenos nomes (8.3);
- Nomes de arquivos "Case-insensitive;
- Junto com a pilha TCP/IP da Microchip;
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 89 89
Imagem MPFS
- Dois tipos:
-Arquivo `C para memria de programa
-Arquivo `bin para EEPROM externa
- Utilitrio para PC: "mpfs.exe;
- Toda a pgina em um nico diretrio
- Tamanho imagem < memria
disponvel;
- Retirados "CR LF dos arquivos htm;
- Bloco reservado p/ dados aplicao;
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 90 90
Prximo:
- Introduo Terica ao Modelo Internet:
Camadas, protocolos e respectivas funes.
- Apresentao do ENC28J60.
- ENC28J60 versus RTL8019AS.
- ENC28J60 versus CS8900CQ.
- Conhecendo o driver do ENC28J60.
- Construindo o hardware com o ENC28J60.
- A pilha TCP/IP da Microchip.
- Projetos prticos com o ENC28J60.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 91 91
Ethernet PICtail PIC18
Suporte as Demo Boards
PICDEM FS-USB Board
PICDEM Z Board
PICDEM LCD Board
PICDEMHPC Explorer Board
Diretamente suportado pela pilha TCP/IP da Microchip
Ethernet PICtail
Daughter Board
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 92 92
Demonstrao
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 93 93
MCU + Ethernet Integrados
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 94 94
MCU + Ethernet Integrados
- PIC18F97J60
- 64K, 96K or 128K bytes Flash
- 3.8K bytes RAM
- 8K bytes TX/RX Buffer
- 41.667 MHz max @ 3.3V
- Encapsulamento: TQFP
- 64/80/100 Pinos
- Outros:
- Barramento para memria externa
- 16 canais 10-bit A/D 100ksps
- Comunicao
- Ethernet: MAC+PHY (IEEE 802.3 10BASE-T)
- 2 EUSARTs
- MSSP (SPI /MI
2
C)
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 95 95
Referncias Bibliogrficas
- Jeremy Bentham - TCP/IP Lean: Web Servers
for Embedded Systems (2nd Edition)
- Mokarzel, M.P, K.P. - Internet Embedded -
TCP/IP para Microcontroladores. Editora rica.
- AN833 - The Microchip TCP/IP Stack.
- AN870 - An SNMP Agent for the Microchip
TCP/IP Stack.
- DM163004 PICDEM.net Internet/Ethernet
Demonstration Board.
- DM300004-1/2 dsPICDEM.net 1/2 Connectivity
Demonstration Board.
- ENC28J60 Ethernet PICTail.
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 96 96
Para mais informaes...
- Sobre o ENC28J60:
- www.microchip.com/ethernet
- Sobre a pilha TCP/IP:
- www.microchip.com/tcpip
- Sobre os compiladores:
- www.microchip.com/C18
- www.microchip.com/C30
- Outras informaes:
- www.microchip.com/designcenter
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 97 97
Alguma Pergunta?
Alguma Pergunta?
2008 Microchip Technology Incorporated. All Rights Reserved. 2008 Microchip Technology Incorporated. All Rights Reserved. ( (nome nome da da aula) aula) Slide Slide 98 98
A Equipe Microchip Agradece
a sua Presena.

Você também pode gostar