Comunicación ETHERNET en el microcontrolador PIC, ¿por dónde empezar?

0

Necesito implementar una comunicación Ethernet entre una placa con un microcontrolador pic y otras 16-24 placas con microcontroladores.

No sé cómo empezar, aunque ingresé al sitio de microchip y leí algunos archivos PDF.

Estoy familiarizado con RS232. ¿Es similar? Por favor, ayúdeme en cómo comenzar a implementar esto, realmente lo básico

    
pregunta Dan

4 respuestas

7

Lo que pides es factible. Pero, ya que estás hablando de "hacer Ethernet", preguntar si es similar a RS-232, y tu investigación consiste en leer "algunos archivos PDF", esto está actualmente muy por encima de tu cabeza. Necesitará a alguien que sepa lo que está haciendo para este proyecto. Si es inteligente y está atento, puede aprender de este proyecto y quizás hacerlo la próxima vez. No intente hacer esto por su cuenta con su nivel actual de conocimiento e inexperiencia con Ethernet y redes en general.

Solo para darle una idea, Ethernet es solo la capa física de bajo nivel para obtener paquetes de red de un lugar a otro. Lo más probable es que su requisito de "Ethernet" realmente signifique redes utilizando al menos TCP / IP y / o UDP / IP. Hay una complejidad considerable en esto, y requiere una "pila" de red que se ejecute en el micro. Incluso entonces, debe saber qué está haciendo en el nivel de la aplicación para usar dicha pila de red.

En cuanto al hardware, todo lo que necesita es un PIC 18F67J60, los transformadores de pulso de Ethernet y un conector RJ-45. Ese PIC tiene un Ethernet MAC / PHY incorporado, y hay varias pilas de red disponibles para él, incluida la mía. Sin embargo, hay mucho más para "hacer Ethernet" que simplemente conectar el hardware.

    
respondido por el Olin Lathrop
1

El uso de Ethernet generalmente se realiza llamando a media docena de funciones C, una vez que tenga instalada la pila Ethernet (gran parte monolítica del software).

Descarga algunos de los códigos de demostración de microchip y ponlo en marcha.

Tal vez compre uno de sus tableros de desarrollo ya que es más fácil poner en marcha las demostraciones.

Cuando llegue el momento de escribir su propio código para enviar datos a través de Ethernet, necesita un poco de conocimiento sobre redes.

Lea cómo funcionan los programas del servidor cliente. Lea cómo usar la biblioteca de sockets.

Ian

    
respondido por el user118055
1

Mi recomendación sería no reinventar la rueda. Compra un modulo prefabricado. Son caros, pero le ahorran un montón de tiempo de desarrollo, por lo que si no está hablando de grandes cantidades, vale la pena. Yo uso estos chicos:

enlace

Están especializados para varios protocolos industriales, por lo que pueden ser más caros de lo que realmente necesita. Estoy seguro de que hay otras personas que hacen trabajos similares.

    
respondido por el Stephen Collings
0

¿Qué protocolo Ethernet? ¿Estás rodando el tuyo? ¿Por qué usar Ethernet para 16-24 tableros? ¿Es un requisito para el proyecto? Si es así, ¿qué más dice el requisito? ¿Alámbrico / inalámbrico? gigabit? 10/100? Incluso antes de IoT había varias soluciones (una usa incluso un PIC) ahora con IoT tienes el ESP8266 así como muchos otros y hacen un montón de trabajo por ti.

RS232 es un estándar de pin y eléctrico, no un estándar de protocolo, supongo que quiso decir que estaba familiarizado con los protocolos seriales de uart en lugar de decir RS-232. Algunas de estas partes admiten interfaces uart, por lo que realmente puede ser una pequeña cuestión de programación.

Si no está utilizando un wiznet o un esp8266 u otro, es posible que necesite implementar la pila. Se puede hacer en un PIC pero me gustaría comprar otro mcu para darle espacio y velocidad de recursos.

Dependiendo de lo que realmente necesite, puede usar una solución uart de larga distancia (RS-422) y una cadena tipo margarita (o i2c o spi o mdio o lata u otra) puede usar bluetooth, puede usar infrarrojos o IRDA , xbee / zigbee, etc.

¿Todos necesitan hablar con todos o hay un amo y muchos esclavos? ¿Cuál es la naturaleza de los datos, ráfaga, continuo, velocidad de datos, tamaño de ráfaga, etc.

No estás preparado para comenzar a hablar de Ethernet, pero tienes mucho más que leer. Pero antes de eso, tiene que definir su problema, dúplex completo, semidúplex, la naturaleza de los datos, continua, ráfaga, unidireccional / bidireccional: todo el mundo lo ve todo o solo el maestro / esclavo, etc. Esto puede hacer que la respuesta sea más obvia o más Al menos reducir algunos que no funcionan. Si alguien te diera un requisito de "ethernet", tendría que haber varios parámetros distintos a la palabra "ethernet" o "internet".

    
respondido por el old_timer

Lea otras preguntas en las etiquetas