Toda tu publicación es un poco amplia. Pero tomadas por separado, cada pregunta es respondible en sí misma, así que ...
... ¿esta es en realidad una computadora de propósito general, con un programa personalizado cargado en ella? Entonces, ¿la capacidad de interactuar con la computadora depende únicamente del programa cargado en esta MCU?
En este caso particular, tienes toda la razón en ambos puntos.
¿Otros dispositivos de computadora (mouse, teclado, controlador MIDI, etc.) tienen este tipo de computadora adentro?
Todos tienen un chip controlador. En algunos casos, es un MCU genérico, como en su ejemplo específico aquí. Pero en otros casos (por ejemplo, un ratón barato de alto volumen de ventas), es un chip específico como usted pensó que era (y en este caso, el chip no suele estar documentado).
Y si algún día también quisiera producir una computadora, ¿dónde debería comenzar a obtener la placa de circuito completa al final? El chip parece que no se puede extraer de la placa y la conexión es muy pequeña. Supongo que debe ser ensamblado por la máquina automática de precisión solo de fábrica. (No es el que puedes comprar por separado y montar como ATMEGA en Arduino. Ese es mucho más grande y puedes contar todos los pines con tu ojo)
El chip que viste (STM32F103C8T6) es un LQFP48. Los que tienen clavijas expuestas, por lo que aún son relativamente fáciles de soldar a mano (en comparación con QFN), incluso si el paso está bien. Pero sí, por supuesto, dado el volumen, se ensamblan mediante un proceso automatizado (máquina de selección y colocación, soldadura por reflujo). Pero incluso las placas arduino que utilizan DIL se ensamblan mediante un proceso automatizado.
Por lo tanto, también me pregunto cómo puede el fabricante (¿quién? ¿Fábrica?) en primer lugar.
Lo hacen en el circuito de programación. Hacen trazas en el PCB que van desde los pines de depuración del chip a algún encabezado personalizado. Luego, durante la fabricación, hay un paso en el que un usuario (generalmente chino y no paga mucho, o, para volúmenes muy altos nuevamente, una máquina) coloca un cable en esta cabecera y hay una computadora que luego inicializa el código del programa. El microcontrolador flash. A veces, ni siquiera hay un encabezado, solo se trata de almohadillas en la PCB y utilizan pines pogo.
Encontré varios "tableros de descubrimiento" que tienen este chip y también un puerto USB para que puedas programar en ellos. Entonces, ¿significa que también puedo volver a programar en este chip STM en mi controlador de juegos? Porque después de todo, estoy usando una conexión USB para usar el controlador, y este USB se conecta a la MCU.
Sí, las placas de descubrimiento de ST (¿o son las placas de núcleo? - de todos modos) tienen una parte de "programación" y una parte de "demo". La parte de demostración contiene la MCU para mostrar y algunos periféricos de ejemplo. La parte de programación contiene otro chip que hace que el puente pase del USB al protocolo de depuración para que pueda programar chips ST con él. En estas tarjetas, puede deshabilitar la parte de demostración y conectar otra tarjeta a la parte de programación. Así que puedes usar eso para reprogramar tu controlador de juego. También hay dispositivos independientes y baratos (con la marca "ST-LINK v2") que pueden hacerlo. Sin embargo, debe identificar dónde están disponibles los pines de depuración en su tarjeta de demostración (el "encabezado personalizado" o las "almohadillas expuestas" de las que hablé anteriormente).
Podría haber otra solución para reprogramar el controlador de juegos, que es aprovechar el cargador de arranque que ya está en la ROM. En ese caso, ni siquiera necesita hardware adicional específico. Solo debe configurar los pines BOOT de la MCU al nivel apropiado (consulte la hoja de datos, pero también debe identificar dónde se puede acceder a este pin en la PCB) y debe poder descargar el nuevo código de firmware directamente desde el teclado del juego. Puerto USB en sí.
Pero volver a desarrollar un firmware, incluso para un panel de juegos, no es una tarea sencilla. Y tendrás que hacer mucha ingeniería inversa en el hardware del teclado del juego. No es imposible, pero no empezaría con un desafío así.