AtTiny84 con USB

Tengo algunos problemas con ATTiny84 y USB. Estoy creando un "clon de arduino" pero quiero una forma simple (y especialmente compacta en la placa) de implementar una interfaz serie USB. Esto solo se usará para una versión ligeramente modificada de firmata.

ingrese la descripción de la imagen aquí

Tengo problemas con las líneas de señal en la conexión USB (¿que aparentemente tiene que ser 3v3?). Ya he creado un esquema. (ver imagen) y quería ver si esto es correcto. La parte USB está en un rectángulo. Realmente no he encontrado ninguna buena documentación sobre esto. La documentación que he encontrado se parece a la siguiente:

ingrese la descripción de la imagen aquí

Esto me parece incorrecto si las líneas de datos USB requieren 3v3. ¿O es correcto y puedo conectarlo de esta manera a attiny84 también?

PD. Soy un absoluto n00b en electrónica, así que no te metas demasiado en mis errores...

Respuestas (2)

Los dos diodos en el circuito inferior caen 2 × 0,7 V = 1,4 V Dado que el bus USB entrega 5 V, el riel de suministro de energía del ATtiny estará en 5 V - 1,4 V = 3,6 V. Esto limita efectivamente las salidas del controlador a 3,6 V.

Las líneas de datos USB se especifican en 2V8 ~ 3V6 (ALTO). El riel de alimentación USB tiene especificaciones de hasta 4V75 ~ 5V25. Lo que significa que lo anterior está marginalmente bien en el mejor de los casos y, en la práctica, el voltaje de la fuente de alimentación USB está justo por debajo de 5V. Además, no tuve en cuenta el voltaje del diodo que puede ser ligeramente inferior al 0V7 previsto. Aunque está marginalmente bien, en la práctica funciona bien. Tengo un circuito similar en mi banco y ha estado trabajando durante mucho tiempo.

Los diodos en el teclado USB de mi banco caen 0.7094V y 0.7155V, pero no hice ningún esfuerzo para reducir la corriente o lo que sea. Su experiencia puede ser diferente.

El problema con el circuito superior es que las resistencias cargarán las líneas de datos. Y dependiendo del voltaje de la fuente de alimentación y el nivel de la señal en las líneas de datos, puede funcionar, pero personalmente no estoy muy seguro de eso. No tengo experiencia con esa arquitectura, a diferencia de la otra.

Hay un método alternativo que estaba en una respuesta ahora eliminada, no estoy seguro de por qué el autor lo eliminó. Utiliza diodos zener en las salidas del controlador para recortar el voltaje. Aunque este otro circuito estándar en el sitio web de V-USB usa zeners 3V6, personalmente usaría zeners 3V3 solo para tener un poco más de espacio libre.
¿Algo como lo siguiente? imgur.com/qOt7c1b
@rhbvkleef más o menos, sí. Es una buena práctica tener un riel de alimentación positivo en la parte superior y un suelo en la parte inferior: i.stack.imgur.com/IUCg0.gif (tomé la imagen de la respuesta eliminada).
Sí... Fue solo la forma en que configuré el resto de los esquemas por los que gnd está en la parte superior. ¡Muchas gracias!

la respuesta anterior es correcta, pero quería aportar mis dos centavos con una salida basada en zener, como en el esquema que se encuentra aquí http://m.instructables.com/id/Digispark-DIY-The-smallest-USB-Arduino/? TODOS LOS PASOS .

Los zeners de 3,6 V evitan que el voltaje en las líneas D+ y D- supere los 3,6, por lo que puede tener 5 V en el resto de sus líneas. Los zeners también brindan cierto grado de protección ESD a la línea al conducir cuando se aplica el choque de alto voltaje a las líneas, llevándolo a tierra de manera segura.

También tiene la ventaja de que no cuenta con la acumulación de tolerancia de dos diodos en serie, sino con cada diodo individualmente.

Además, no estoy seguro de si fue intencional, pero R1 y R3 en su esquema deberían tener el mismo valor.