Convertidor AVR USB a Serie; Pregunta rápida

Tengo una calculadora TI86 que tengo desde hace más de 7 años. Bueno, le dejo prestado a una amiga mía, e iba a cargarlo con algunas aplicaciones para ella. Y la compensación está ocurriendo este fin de semana. Así que pensé, "oye, construyamos un cable muy rápido". Bueno, me fui por la madriguera del conejo y como ya no tengo un puerto serie o paralelo, necesitaría un convertidor.

Así que encontré un esquema de convertidor AVR USB a serie (que estoy seguro de que ya conocen) aquí:Convertidor AVR USB a Serie

Un par de cosas:
1. No tengo un ATMega8\48\88 directo. Solo tengo 48A-MU\PU, 88A-MU\PU y 324P-20PU (que es mi favorito) y 328P-PU (segundo favorito) disponibles de inmediato. Sin sonar demasiado tonto, ¿estoy en lo correcto al suponer que, con la excepción del 324P, los otros AVR que tengo son compatibles? He usado un 328P antes para algunas cosas para el 88 ya que, según la hoja de datos, es más o menos el mismo chip, solo diferentes grados.
2. Solo tengo cristal de 16 Mhz y 20 Mhz. ¿Sería desastroso si los usara en su lugar, o necesito modificar el código para estar seguro?

Y luego la última pregunta en este esquema:Enlace serie TI

  1. Si tuviera Zeners de 3.6V y 5.1V, ¿podría hacerlos funcionar? ¿Hay alguna alternativa si no? Los Zeners no son algo que uso, por lo que a veces también son un misterio para mí.

Así que como dije, preguntas tontas. Pero prefiero preguntar antes de desperdiciar mis chips y piezas, ¿sabes?

Gracias, mis amigos.

El reloj para USB debe ser bastante preciso y la frecuencia del cristal debe coincidir estrechamente con el código. Sin embargo, V-USB tiene una implementación de software en la que el oscilador RC interno está calibrado a 16,5 MHz. Para que V-USB funcione, necesita el PLL de 64 MHz en el AVR, un dispositivo sin PLL no funcionará. Tenga en cuenta que las señales en las líneas de datos USB son de aproximadamente 3,5 V, ciertamente no de 5 V.
Oh, eso tiene mucho más sentido por qué los Zeners son 3.6. Puedes decir cuánto trabajo con USB;) Entonces, ¿no puedo usar un preescalador en el código para establecer la frecuencia en 12 MHz si estoy usando un cristal de 16 MHz? He leído sobre el uso de chanclas como separadores. También descubrí cómo crear un reloj con un segundo AVR. Supongo que podría emitir una señal de 12 mhz en uno de los pines con un simple Do\Loop.
Cuando uso V-USB, optaría por el oscilador RC interno calibrado por software. Los AVR son demasiado lentos para generar una salida de 12 MHz, ya que necesitaría al menos un reloj de sistema de 24 MHz para eso. Los AVR están limitados a un reloj del sistema de 20 MHz.
¿Te refieres a 20 MHz como máximo? Soy consciente de eso. Pero parece que trabajaré con V-USB para este proyecto. ¿Algún otro consejo para ayudar? ¿Esquemas? soy muy visual

Respuestas (1)

  1. Sí, es probable que las diversas piezas de atmega sean compatibles con esta aplicación en particular. V-USB no utiliza muchos recursos internos.

  2. V-USB admite cristales de 16 MHz y 20 MHz. Tendrás que modificar el circuito.

  3. ¿Vas a utilizar este circuito con AVR? Porque su circuito AVR produce datos seriales de nivel TTL (0/5v), mientras que el circuito "The Serial Link" espera datos seriales de nivel RS232 (-12/+12V). El circuito de enlace en serie utiliza todos los zeners y resistencias para convertir el nivel RS232 en un nivel TTL de una manera especial.

Entonces, los dos esquemas que ha publicado no son compatibles, a menos que agregue otro cambiador / convertidor de nivel (MAX232) para que pueda usar TTL-> RS232-> TTL, lo que me parece una tontería.

Entonces, ¿sería mucho mejor simplemente usar un IC convertidor USB-Serial?
En el esquema n.º 1, el AVR se convierte en un convertidor IC USB-serie , por lo que un IC USB-serie diferente no ayudará. Puede usar el convertidor USB-Serial "dongle" (que tiene 2 circuitos integrados en el interior: convertidor IC + palanca de cambios de nivel) con el esquema n.º 2.
Pero si tuviera que hacerlo yo mismo, sin dongle, ¿necesitaría un cambiador de nivel? ¿Como una palanca de cambios lógica?
Necesitará un cambiador de nivel RS232. Aquí hay un ejemplo común: dragons-lair-project.com/tech/images/EuroDL/serialinterface.jpg (avr se conecta a la izquierda, el adaptador se convierte a la derecha). Utiliza MAX232 y no hace líneas RTS/DSR. Sus esquemas necesitarán un chip convertidor biogger como MAX236.
Mi mi... Probablemente sería mejor comprar el cable USB. No pensé que fuera tan complejo para ser honesto.