Académique Documents
Professionnel Documents
Culture Documents
Abril30,2013,07:57:52
INICIO
Buscar
AYUDA
BUSCAR
INGRESAR
REGISTRARSE
anteriorprximo IMPRIMIR
Tema:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo(Ledo24301veces)
0Usuariosy1Visitanteestnviendoestetema.
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
:Marzo09,2010,10:16:03
INDICE Introduccin MdulosinternosypinesdeE/S Eloscilador OsciladorStartupTimer ElpinCLKOUTyelregistroECOCON Conexionadoexterno,bobinasyotrasyerbas NivelestensinenlospinesdeE/S ConfiguracindelosLEDs Registrosymemoria Organizacindelamemoriainterna Losregistrosdecontrol ECON1 ECON2 ElbufferEthernet RegistrosPHY EscaneoderegistrosPHY RegistrosPHSTAT1yPHSTAT2 RegistrosPHID1yPHID2 LainterfazSPI SetdeinstruccionesSPI Comandoparaleerregistrosdecontrol Comandoparaleerlamemoriabuffer Comandoparaescribirregistrosdecontrol Estadodeltrabajo: 42%realizado,ultimaactualizacinel31032010
cmpenc28j60.jpg(13.61KBdescargado559veces.) Pantallazo.png(31.88KBdescargado12565veces.) ltimamodificacin:Abril08,2010,03:59:00porAriel Enlnea
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#1:Marzo09,2010,01:19:48
ENC28J60deMicrochip El ENC28J60de Microchipesuncircuitointegradode28pinescapazdehacerdeinterfaseentre nuestrosproyectosyunaredEthernet. Introduccin ElENC28J60esuncontrolador Ethernetdotadodeunpuerto SPI(SerialPeripheralInterface), especialmentediseadoparaactuarcomounpuenteentreunaredEthernetyunmicrocontrolador equipadoconSPI.ElENC28J60cumpleconlasespecificacionesIEEE802.3,eincorporaunaserie deesquemasdefiltradodepaquetesparalimitarelnumerodepaquetesentrantes.Tambinprovee unmdulo DMAinternoparafacilitarelflujodedatosyhardwareespecificoparaelcalculodelas sumasdecontrol(IPchecksums).Lacomunicacinconelmicrocontroladorquehacelasvecesde hostserealizanmedianteelbusSPIaunavelocidaddehasta10Mb/sydospinesespeciales capacesdeprovocarinterrupcionesenelENC28J60.Otrosdospinespuedenutilizarseparamanejar LEDsqueindiquenlaconexinylaactividaddelared. Lafigurasiguientemuestraeldiagramaenbloquesdelintegrado:
Figura1:DiagramaenbloquesdelEN28J60. Elesquemadelafigura2correspondeaunaaplicacintpicadelENC28J60:
Figura2:Circuitodeaplicacintpico. Ademsdelintegrado,puedeversequeseutilizandostransformadoresdepulsoyvarios componentespasivosindispensablesparaconectarelENC28J60aunaredEthernetde10Mb/s.El EN28J60tienesietebloquesfuncionalesimportantes: 1)LainterfazSPIqueseencargadecomunicarloconelmicrocontroladorhost 2)LosregistrosqueseempleanparamonitorearycontrolaralENC28J60 3)UnbufferRANdualparalospaquetesrecibidosyenviados 4)UnarbitroquecontrolalosaccesosalbufferRAMmedianteDMA 5)UnbusqueinterpretalosdatosycomandosrecibidosvaSPI 6)UnmduloMAC(MaduimAccessControl)quecumpleconIEEE802,3 7)UnamduloPHY(PhysicalLayer)quecodificaydecodificalosdatosanlogospresentesenelpar trenzado. Ademsdeello,eldispositivocuentaconotrosbloquesdesoporte,comoeloscilador,reguladorde voltajeinterno,adaptadoresdenivelparaproveerE/Sde5Vylgicadecontrol. Elchipvieneendosencapsuladosdiferentes:
Figura4:Descripcindelafunciondecadapin
Ariel
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#2:Marzo09,2010,04:47:09
Figura5:Osciladoracristal Seconectaelcristalentrelospines OSC1y OSC2,yseponentambinambosextremosaGND medianteC1yC2.ElvalordeC1yC2noestenlahojadedatos,pero15pfparecenfuncionarbien enlamayoradelosproyectos.ElresistorR1soloesnecesarioconalgunostiposdecristales(AT stripcutcrystals")peronormalmentenoesnecesaria. LaotraformadeutilizarelENC28J60esconunasealdeclockexterna(figura2),conunaamplitud de3,3VyaplicadaalpinOSC1.Enestecaso,puededejarseelpinOSC2alaireoconectarloa GNDatravsdeunresistorparaminimizarelruido.
Figura6:Osciladorexterno
Pantallazo4.png(11.34KBdescargado12091veces.) Pantallazo5.png(6.97KBdescargado11931veces.) Enlnea Sicualquierhabilidadqueaprendeunnioserobsoletaantesdequelause,entonces,quesloquetienequeaprender?La respuestaesobvia: Lanicahabilidadcompetitivaalargoplazoeslahabilidadparaaprender.SeymourPapert
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#3:Marzo09,2010,04:49:39
OsciladorStartupTimer EstechipposeeloqueMicrochipdenomina OscillatorStartupTimer (OST).Setratadeun mecanismodestinadoaasegurarqueelosciladoryelmdulo PHY sehayanestabilizadoantesde queelhostintenteutilizarlos.Paraello,elOSTseencargadeesperaraqueocurran7500ciclosde reloj(300us)luegodeocurridoel PowerOnReset(encendidodelchip)oun WakeUp (despertar)posterioraun PowerDown(dormir).Duranteestetiempo,todoslosregistrosy buffersdememoriapuedenserconsultadosoescritosatravsdelbusSPI.Sinembargo,el softwaredelhostnodeberaintentartransmitirpaquetes,habilitarlarecepcindepaqueteso accederalosregistrosMAC,MIIoPHY. CuandoeltiempodelOSThayafinalizado,elbit CLKRDY delregistro ESTATsepondren1. NuestroprogramadeberaconsultaresebitparatenerlaseguridaddequeelENC28J60estlisto parafuncionar.
ltimamodificacin:Marzo09,2010,05:08:05porAriel Enlnea
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#4:Marzo09,2010,05:42:34
ENC28J60por1,2,3,4u8,seleccionableatravsdelregistro ECOCON. Paracrearunasealdereloj,elpinCLKOUTsemantieneenestadobajohastatranscurridoel peridodoestipuladoporelOST.Luego,comienzaaenviar0y1conunafrecuenciapordefectode 6,25MHz(elclockdelENC28J60/4).Sielusuariomodificaelvalordelpreescaler,estese mantieneancuandoocurraunRESET.Siporalgnmotivoelusuarionecesitadeshabilitar temporalmenteelpinCLKOUT,puedehacerloescribiendo0enelregistroECOCON,yelpinquedar enestadobajo. HayquetenerencuentaquecuandosemodificaelvalordeECOCONparacambiarelvalordel preescaler,algunospulsosderelojpuedenperderseenCLKOUT.Tpicamente,alhacerese cambio,elpinsemantieneenestadobajoentre1y8ciclosdelOSC1.Esopuedeverseenlafigura siguiente:
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#5:Marzo09,2010,06:07:41
Conexionadoexterno,bobinasyotrasyerbas ParafuncionarypoderconectarsealaredEthernet,elENC28J60necesitadealgunoscomponentes externos,talcomopuedeverseenlafigura8.Lospines TPIN+yTPINdebenconectarseaun transformador1:1especialpararedes 10BASET.Lospines TPOUT+y TPOUTnecesitandeun transformadordepulsoconrelacin1:1ypuntomedio.Estetransformadordebesercapazde proveerunaaislacincomomnimode2000V.Adems,todoslospinesmencionadosnecesitande unresistorde50ohmsconun1%detolerancia.
Figura8:Conexionadoexterno. LacircuiteraanalgicainternadelENC28J60tambinrequierequeconectemosunresistorde2K conun1%detoleranciaentreelpin RBIASyGND.Elchipescapazdeoperartambinconuna tensindealimentacindesolo2.5V,encutocasohabrquedisponeruncondensadorde10uF entreelpin VCAP yGND. Todoslospinesdealimentacin(Vdd)debenserconectadosalamismafuentede3.3V,ytodoslos pinesGNDdebenconectarsealmismonodo.CadapardepinesVdd/Vssdebetenersupropio condensadorcermicode0.1uF,tancercadelospinescomoseaposible.Hayquetenerencuenta quecorrientesrelativamentealtasvanacircularentreelintegradoyelpartrenzado,porloquelas pistascorrespondientesdeberanserlomascortasyanchasposiblesparaminimizarsuresistencia elctrica.
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#6:Marzo10,2010,04:13:20
NivelestensinenlospinesdeE/S ElENC28J60esunchipdiseadoparaoperara3.3V.Sinembargo,puedeserintegradoconfacilidad encircuitosquesealimentancon5V.Lospines RESET, SPICS, SCKy SIfuncionandirectamente con5V.Porotrolado,sielhostoperaa5V,puedequenecesitesimplementaruntraductor capaz demanejarlassalidasCMOSde3.3VdelENC28J60. Unsimpleyeconmico 74HCT08(cuatrocompuertasAND),un 74ACT125(cuatrobufferes triestado)ocualquierotrochipCMOSde5VconbufferesdeentradaadaptadosparanivelesTTL puedeserusadocomoadaptador.Elusodebufferestriestadopermiteunafcilintegracinen sistemasquedebencompartirelbusSPIconotrosdispositivos.Lafigura9ilustradosformasen queestopuedeserimplementado.
Figura9
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#7:Marzo10,2010,04:39:14
Figura10:PolaridaddeLEDByefectoenPDPXMB EnelcasodeLEDB,talcomoindicalafigura10,laformadeconectareldiodoLEDfijaelestadodel bit PHCON1enelregistro PDPXMB.SielLEDseconectadeformaquelacorrientefluyahacia LEDB,elbitseponea0encadaRESETyelmduloPHYoperaenmodohalfduplex.Silacorriente fluyedesdeelpin,elbitseponeen1encadaRESETyelmduloPHYoperaenmodofullduplex.Si noseconectaningnLED,elbitPDPXMDpermaneceenestadoindeterminado. Elregistro PHLCONseencargadecontrolarelcomportamientodelosLEDsydeterminarque funcincumplen.Latablasiguiente(Figura11)resumetodoslosestadosyopcionesposibles:
Figura11:PHLCON
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#8:Marzo11,2010,11:20:11
Organizacindelamemoriainterna Todalamemoriadisponibleenel ENC28J60esdeltipo RAMesttica.Sedivideentresbloques principales: 1)Registrosdecontrol 2)BufferEthernet 3)RegistrosdelmduloPHY Elprimerbloquecontienelos CRs(ControlRegisters)queseempleanparaelcontrolaryobtener informacinsobreelestadodelENC28J60.Todosestosregistrospuedenseraccedidos(lecturay escritura)mediantelainterfase SPI. ElsegundobloqueelBufferEthernettieneuntamaoquepuedeserajustadoporelusuarioytiene comofuncinservirdememoriatemporalparalosdatosqueseenvan(oreciben)a(odesde)la red.EstazonadememoriatambinpuedeseraccedidamediantelainterfaseSPIatravsdelos comandosapropiados, queserntratadosmsadelanteenestedocumento. Lazonacorrespondientealosregistrosdelmdulo PHY nopuedeseraccedidavaSPI.Elacceso slopuederealizarsemediantela MediaIndependentInterface(MII)implementadaenla MAC.La figurasiguientemuestraelmapadememoriadelchip:
Figura12:MapadememoriadelENC28J60.
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#9:Marzo11,2010,04:29:02
Losregistrosdecontrol LosregistrosconstituyenlainterfaseprincipalentreelhostylalgicainternadelENC28J60. Escribiendolosvaloresadecuadosenlosregistroscorrectospuedecontrolarselaoperacindelchip, ylalecturadeestazonadelamemoriaproporcionaalhostvaliosainformacinsobreelestadodel ENC28J60.Lamemoriaasignadaalos RegistrosdeControl estdivididaencuatrobancos.Dosbits enelregistro ECON1(BSEL1:BSEL2)permitenseleccionarelbancoconelquesevaatrabajar. Cadabancoposee32bytesdelongitudypuedeserdireccionadomediante5bits. Lasultimascincoposicionesdecadabanco(1Bha1Fh)apuntanaunjuegocomnderegistros: EIE, EIR, ESTAT, ECON1y ECON2.Estossonlosregistrosmsimportantesalahoradecontrolaro monitorizarlaoperacindelENC28J60.Alestarrepetidosentodoslosbancos,noesnecesario efectuaruncambiodebancocadavezqueselosquiereutilizar.Aligualquetodoslosdems registrosdelchip,sernanalizadasunoporunomsadelante. Existendireccionesderegistroqueapesardeservlidas,nocontienenningnregistroutilizable.Si seintentaescribirenellaslaoperacinseignora,ysiselosleedevuelven0.Losregistrosdelas direcciones1Ahencadabancoestnreservadasynodeberiaescribirseoleerseenellos.Los registrosdisponiblespuedenlistarseentresgrupos: ETH, MACy MII.Losregistroscuyosnombres comienzanporEpertenecenalprimergrupo,losqueposeennombresquecomienzanconMA pertenecenalsegundoylosquetienennombresqueempiezanconMIpertenecenaltercero.Este eselmapaderegistrosdelENC28J60
Figura13:MapaderegistrosdelENC28J60 Yacontinuacin,eldetalledelosbitsqueloscomponenylafuncinquetienenasignada:
Figura14:Contenidodecadaregistro(primeraparte)
Figura15:Contenidodecadaregistro(segundaparte)
Pantallazo1.png(90.79KBdescargado11556veces.)
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#10:Marzo11,2010,06:10:53
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#11:Marzo12,2010,06:02:14
ElregistroECON2 EsteregistrotienefuncionessimilaresaECON1
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#12:Marzo12,2010,06:36:26
Figura18:ElbufferEthernet Elbufferderecepcin SetratadeunbuffercircularFIFOcontroladoporhardware.Losparesderegistros ERXSTH:ERXSTLy ERXNDH:ERXNDLhacenlasvecesdepunterosquedefineneltamaoyla localizacindelbufferdentrodelamemoria.Elbyteapuntadopor ERXSTyelbyteapuntadopor ERXNDsonsusextremos,yambasposicionesestnincluidasenelbuffer. AmedidaqueserecibenbytesdesdelainterfaseEthernetsonescritossecuencialmenteenel buffer.Cuandoelbuffersecompletayelhardwarenotaquehaescritoelultimobyterecibidoenla posicinapuntadapor ERXND,automticamenteescribeelsiguientedatoenlaposicinapuntada por ERXST.Estosignificaqueenlapracticaelbuffernuncapuededesbordarse. Elhostsolamentepuededefinirelvalordeestospunteroscuandolalgicadecontrolseencuentra deshabilitada(ECON1.RXEN=0).Nohayproblemasenutilizartodalazonacomprendidaentre 0000hy1FFFhcomobufferderecepcin.Losregistros ERXWRPTH:ERXWRPTLdeterminanla posicindentrodelbufferenqueelhardwareescribirelprximobytequereciba.Estepunteroes desololectura,yseactualizaautomticamentecadavezqueserecibeunpaquete.Estepuntero puedesertilparadeterminarcuantoespaciolibrequedaenelFIFO. Durantelaoperacinnormal,losregistros ERXRDPTcontienenlaposicinenlaqueseestn leyendodatos.SielFIFOsellena,losnuevosdatosnoseescribirnencimadelosviejos.Para podercontinuarconlarecepcin,elhostdebeencargarsedehaceravanzarperidicamenteeste puntero. Elbufferdetransmisin TodoelespaciodelbufferEthernetquenosehayadefinidocomobufferderecepcinsecomportar comobufferdetransmisin.Elhostdebeencargarsedemanejarlospaquetesquesevanaenviar dentrodeesteespaciodememoria.Lospunteros ETXSTy ETXNDsonprogramadosconla direccindentrodelbufferdetransmisinenqueseencuentraelpaqueteaserenviado.El hardwarenocontrolasielvalordeestospunterosdefineunaposicinvlidadentrodelbufferde transmisin,porloquehayquesermuycuidadososparanocorromperlaintegridaddelosdatos contenidosenelbuffercompleto.
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#13:Marzo15,2010,05:47:03
RegistrosPHY Losregistrosdeestegrupoproporcionanelmecanismodesupervisinycontroldelmdulo PHY . Hay9entotal,ytodostienen16bitsdeancho.Adiferenciadelosregistros ETH, MACy MII,o inclusodelosbufferesdememoria,estosregistrosnosonaccesiblesdirectamenteatravesdela interfase SPI.PuedeaccederseaellosmedianteunsubgrupodelosregistrosMAC,que implementanlallamadaMediaIndependentInterfaceforManagement(MIIMoInterfacedecontrol independientedeldispositivo).AestesubgrupoderegistrosselosdenominaregistrosMII,y puedesverlosenlasfiguras19y20,
Figura19
Figura20
Leyendolosregistros CuandoelhostleeunregistroPHY,obtiene16bitsdedatos.Estossonlospasosaseguirparaleer unodeestosregistros: EscribirladireccindelregistroPHYaleerenelregistro MIREGADR Poneren1elbit MICMC.MIIRD.Estocomienzalaoperacindelecturayponeen1elbit MISTAT.BUSY . Esperar10.24us.Confirmarelestadode MISTAT.BUSY paratenerlacertezadelqueelciclode lecturafinaliz(estebithabrvueltoa0).Hastaqueestonoocurra,elhostnopodrefectuar operacionessobre MIISCANoescribirelregistro MIWRH. Ponera0elbit MICMC.MIIRD Leereldatobuscadodesdelosregistros MIRDLy MIRDH.Elordenenqueseleenestosdosbytes noesimportante. Escribiendoenlosregistros. SiemprequeseescribeenunodelosregistrosPHY,seescriben16bits.Siloquesequierees modificarelvalordealgnbitenparticular,primerodebeleerseelregistrocompleto,cambiarese bitsobrealgunavariable,yluegoescribirelregistrocompleto.Estossonlospasosaseguirpara escribirenunodeestosregistros: EscribirladireccindelregistroPHYaescribirenelregistro MIREGADR, Escribirlos8bitsdelapartebajadeldatoaguardarenelregistro MIWRL. Escribirlos8bitsdelapartealtadeldatoaguardarenelregistro MIWRH.Alescribireneste registro,latransaccindeescrituracomienzaautomticamente.El MISTAT.BUSY tambinse poneen1. Elciclodelecturademora10.24us.Cuandofinaliza, MISTAT.BUSY seponeautomticamenteen0. Hastaqueestonoocurra,elhostnopodrefectuaroperacionessobre MIISCANoescribirel registro MIWRH.
Ariel
GlobalModerator dsPIC Desconectado Sexo: Mensajes:10190
Re:ENC28J60,elcontroladorEthernetviaSPIdeMicrochipaldesnudo
Respuesta#14:Marzo17,2010,06:32:40
EscaneoderegistrosPHY El MACpuedeserconfiguradodeformaquerealiceoperacionesdelecturadedelosregistros PHY formaautomtica.Estosimplificabastanteeltrabajodelhost.Pararealizarunaoperacindeeste tipohayqueseguirlospasosenumeradosacontinuacin: EscribirladireccindelregistroPHYaleerenelregistro MIREGADR. Poneren1elbit MICMD.MIISCAN.Estohacequecomiencelatareadelecturaautomticayque elbit MISTAT.BUSY sepongaen1.Laprimeroperacinsecompletatranscurridos10.24us,ycada lecturasiguienteestardisponiblecada10.24usadicionales.Estatareaseejecutahastaquees canceladaporelhost. Luegodeponeren1elbitMICMD.MIISCAN,losregistros MIRDLy MIRDHseactualizan automticamentecada10.24us.Nohayformadesabersilosregistroshansidoonoactualizados, asiquehayquetenerencuentaquecuandoaccedemosalosregistros MIImedianteelbusSPI, puedeoocurrirqueestemosleyendolosdatosdelestadoanterior.Cuandoseestanefectuandolas operacionesdeescaneoderegistros,elhostnodebeintentarescribiren MIWRHocomenzaruna operacin MIIRD.Lasoperaciones MIISCANdebensercanceladasponiendoen0elbit MICMC.MIISCAN.Cuandoelbit MISTAT.BUSY hayavueltoa0,lasoperacionesdelectura normalespuedenrecomenzar.
Enlnea Sicualquierhabilidadqueaprendeunnioserobsoletaantesdequelause,entonces,quesloquetienequeaprender?La respuestaesobvia: Lanicahabilidadcompetitivaalargoplazoeslahabilidadparaaprender.SeymourPapert
Pginas:[1 ]2IrArriba
IMPRIMIR anteriorprximo
Ira:
ir
PoweredbySMF1.1.18|SMF2011,SimpleMachines
SMFAdsforFreeForums
Pginacreadaen0.081segundoscon26consultas.(PrettyURLsadds0.016s,3q)