Diseñé una placa PCB con algunos sensores ( giroscopios , acelerómetros , etc.) usando el protocolo I2C para comunicarse. Sin embargo, cuando uso un Arduino UNO como maestro, no puedo ver la forma de onda tanto del bus SDA como del bus SCL. Permanecen estáticos a ~400 mV cuando se miden con un osciloscopio. Cuando uso una placa diferente (como esta ) con el mismo equipo de prueba, puedo ver claramente la forma de onda que producen SDA y SCL.
Por lo general, significa que algo está en cortocircuito, pero no vi ningún problema cuando usé un multímetro para verificar la continuidad de todas las vías para SCL, SDA, VDD y GND. La resistencia entre SCL/SDA y GND es ~1M Ohm.
También podría ser que falten las resistencias pull-up en el bus I2C, pero usé una resistencia pull-up de 4.7kOhm para cada bus I2C. También traté de bajar la resistencia conectando un potenciómetro en paralelo. El voltaje de SCL/SDA aumenta a medida que disminuye la resistencia, pero no hay ninguna forma de onda.
En realidad, hay 3 líneas I2C en la placa para evitar conflictos de direcciones I2C, y ninguna de ellas funciona. La línea más simple solo contiene un giroscopio y una brújula electrónica. Los esquemas están a continuación:
Puede encontrar los esquemas completos de EAGLE y los archivos de la placa aquí .
Hay varios problemas con su diseño.
Esquemático:
El primero de estos es probablemente suficiente para causar el problema.
TARJETA DE CIRCUITO IMPRESO:
Espacios libres muy ajustados de 5 mil en todas partes y rastros que se acercan mucho a las vías. Si bien podría funcionar si lo hace un buen fabricante, esto está buscando problemas y un cortocircuito accidental en alguna parte. Ni siquiera necesita espacios libres tan estrechos para esta placa, así que hágalo fácil para los fabulosos :)
Los rastros también son muy delgados; esto está bien para la señal, pero asegúrese de que sus rastros de energía, incluidos los de las tapas de desacoplamiento, sean un poco más gruesos. Los rastros de energía cortos pueden ser de 10 mil, trate de usar más para los largos.
Sugeriría primero ordenar su esquema. Utilice los símbolos de la fuente de alimentación (p. ej., +3V3, +5V, etc.) en lugar de las etiquetas de red para mayor claridad. Use el tipo de etiquetas de red encuadradas y puntiagudas en todo el texto (casilla de verificación "Xref" en el cuadro de diálogo de propiedades) y asegúrese de que sea obvio a qué cable están conectadas (no tenga la etiqueta desplazada del cable).
Una vez hecho esto, verifique todo en busca de posibles errores. Revise cada hoja de datos, abra la sección "configuración y función de los pines" y verifique el esquema pin por pin, verificando también los voltajes permitidos. Luego rehaga su PCB con espacios un poco más generosos y asegúrese de que no haya violaciones de DRC.
Rata de acero inoxidable
kevin blanco
arrendajo
usuario295069
Sólo yo
Rata de acero inoxidable
tormenta
usuario295069
lars petersson
Ilia
damiend
damiend
damiend
damiend