La primera respuesta que cita que dice que es posible es, de hecho, no hablar de lo que se está refiriendo; está discutiendo el uso de los pines TX de RX & directamente cuando no se están usando para la conexión USB.
La segunda respuesta que cita es técnicamente incorrecta pero "lo suficientemente correcta" en el contexto.
La respuesta a su pregunta es "Se puede hacer pero requiere un cargador de arranque diferente, es más lento, es técnicamente inferior, es menos estándar, requiere un grado de comprensión (por parte de alguien) para que funcione y se puede hacer
ES posible acceda a USB directamente desde los pines de E / S digitales. Como TX & RX también son pines de E / S digitales estándar, podrían usarse para este propósito PERO necesita un código de cargador de arranque dedicado para hacer esto y tiene un rendimiento inferior si se utiliza un convertidor de USB a serie disponible. Por ejemplo, ADAFruit Arduino Trinket utiliza este sistema.
Así es como el (o un) ADAFRUIT Trinket Bootloader funciona. (El Trinket no se menciona aquí, pero me dijeron que esto es lo que usa. Si no, funciona funcionalmente de la misma manera).
Esto a su vez se basa en el USBaspLoader
Una placa de desarrollo (muy) simple "más o menos compatible con Arduino" que puede utilizar este sistema es Metaboard. Su diagrama de circuito se muestra a continuación. Como puede verse, usa un ATMega168 y la conexión USB se realiza a dos pines de E / S digitales estándar.
"Metaboard" usando ATMega168
- note la conexión USB a los pines PD2 & PD4 - NO a través de RXD en PD0 y TXD en PD1 a través de un convertidor de serie a USB, como es más habitual.
Y otra versión: AVRUSBBOOT
Y de nuevo×
BootloadHID Dicen -
-
BootloadHID es un cargador de arranque USB para microcontroladores AVR. La herramienta de carga no requiere un controlador de nivel de kernel en Windows y, por lo tanto, se puede ejecutar sin instalar ninguna DLL.
BootloadHID es un cargador de arranque USB para microcontroladores AVR. Se puede utilizar en todos los AVR con al menos 2 kB de sección de cargador de arranque, p. Ej. el popular ATMega8. El firmware se actualiza en los 2 kB superiores de la memoria flash y toma el control inmediatamente después del reinicio. Si se cumple una determinada condición de hardware (esta condición se puede configurar, por ejemplo, un puente), el cargador de arranque espera los datos en la interfaz USB y los carga en la parte restante de la memoria flash. Si no se cumple la condición, el control se pasa al firmware cargado.
Este cargador de arranque es similar al avrusbboot de Thomas Fischl, excepto que está construido sobre la clase de dispositivo HID. Esta implementación es más fácil de usar en Windows, ya que no es necesario instalar controladores de nivel de kernel.