Diseño de bus CAN simple, problemas de comunicación

3

Estoy intentando obtener una comunicación simple entre dos placas que he diseñado con un microcontrolador ATmega328P y MCP2515 / MCP2551 .

El diseño es el siguiente:

Heterminadoambosextremosconlaresistenciade120Ωyelpuentesoldado.Mimultímetrolee60ΩentreCANHyCANLenamboslados.Ambasplacascompartenlamismafuentedealimentación(rielcomúnde5V,GNDcomún).

Ladodelsoftware,estoyusandoungestordearranqueOptibootyelentornoArduinoparaunprototipadomásrápido.(ConfigurémisdoscontroladoresenModoNormalconfiltrospredeterminadosa.k.aylosrecibotodosparaprobarlos).HeprobadomuchasbibliotecasparaelMCP2515,yelsoftwarenopareceserelproblema.

Dosdelasmejoresbibliotecasqueheencontrado:

Mi problema es que no puedo hacer que la comunicación funcione.

Los tableros no recibirán mensajes entre sí, mientras que pueden recibir mensajes de un tablero de terceros, pero aún no pueden enviarse a dicho tablero .

Como puede ver, tengo puntos de sondeo RX_CAN y TX_CAN entre el transceptor y el controlador. El alcance de TX_CAN en la placa transmisora y RX_CAN en la recepción Tengo este extraño comportamiento cuando amplío una única parte baja del mensaje (el amarillo es el RX_CAN).

Ya he intentado reemplazar el controlador y el chip del transceptor. ¿Podría ser este un mal condensador de desacoplamiento?

Actualizar:

DespuésdequitarlosLED,queeraelproblemadelruidoextraño,todavíanopuedoobtenerlaseñaldelladoreceptorparaseguirelresto,¿NodeberíanseropuestaslasseñalesCANH/CANL?

LosdosprimerossonCANH/CANL.RosaesTXenelladodeltransmisoryazulesRXenelladodelreceptor.

mcp2551pcblayout

    
pregunta George TG

1 respuesta

1

Si entiendo bien, puede recibir mensajes CAN, pero no enviar ... Eso suena como un problema de transceptor. Me doy cuenta de que ya lo ha reemplazado, pero trataría de reemplazar el MCP2551 con un MCP2561 o similar. Parecen ser un poco más resistentes al daño de ESD / manipulación.

También consideraría agregar un diodo de protección de bus CAN a la placa.

    
respondido por el user1956035

Lea otras preguntas en las etiquetas