Debo admitir que soy bastante ignorante de todas las cosas eléctricas, así que obtuve un Arduino con la intención de llenar este vacío en mi educación, y también aprender más sobre la física detrás de la programación y hacer cosas de bajo nivel, pero no he Encontré una introducción teórica adecuada a exactamente lo que está sucediendo dentro del dispositivo. Solo puedo encontrar tutoriales de plug-things-like-this type.
Entonces, por ejemplo, aquí hay un diagrama de tablero del tutorial de LED parpadeante (pdf)
Me parece que el cable conectado al pin de 5v está conectado a los +
pines de la placa de pruebas ... que están conectados a nada. No hay nada más en la +
columna.
Entonces, ¿no es esto un circuito abierto? ¿Qué está + -- 5v
haciendo exactamente esa conexión?
Esa conexión no se dibuja en el diagrama esquemático.
Tampoco está claro para mí cómo los pines están conectados dentro del arduino.
Sé que esta es una pregunta básica de "google it", pero probablemente debido al hecho de que no tengo el vocabulario para hacerlo, no he podido encontrar una descripción del flujo de corriente en un Arduino.
fuente
Respuestas:
Para saber cómo están conectadas las cosas en el Arduino, debes echar un vistazo al esquema. Este es el Arduino Uno. En la parte inferior derecha puede ver cómo se conectan las E / S de la placa al microcontrolador:
Entonces, siguiendo la línea del pin 13, vas a PB5 del microcontrolador. Eso significa el bit 5 del puerto B. Si configura ese pin en la salida y lo hace alto, está suministrando 5 V al circuito LED. La resistencia en serie limitará la corriente a aproximadamente 5 mA, que es un valor correcto para el microcontrolador.
Entonces, dado que los 5 V provienen del pin de E / S del Arduino, el cable de 5 V en el tablero no es necesario.
fuente
Tienes razón, el cable de 5V no está conectado al circuito.
Probablemente se dejó allí solo porque otros experimentos para esa serie de tutoriales lo requieren, pero no es necesario para que este circuito funcione.
fuente
En general, el esquema que proporcionó utiliza esencialmente un tipo de esquema de "diagrama de bloques", en el sentido de que las cosas se abstraen para facilitar la implementación. En este caso, el Arduino se representa como un bloque, y se supone que todas sus funciones funcionan según lo documentado.
El Arduino es una placa de desarrollo basada en un microprocesador Atmel AVR. En general, un microprocesador no está "conectado" de una manera interna, está diseñado para manejar muchas tareas diferentes. Para implementar tantas cosas diferentes, el "cableado" interno cambia constantemente dentro de la MCU de acuerdo con la tarea que está procesando actualmente (¡gracias, transistores!).
Compare esto con las implementaciones de hardware de lógica (FPGA), donde están "programadas" una vez para implementar una función específica, y luego el "cableado" en el interior permanece constante.
Digo "cableado" entre comillas porque incluso los diagramas de nivel lógico (compuertas AND y OR, etc.) todavía están abstraídos de lo que reside físicamente dentro del procesador. Las puertas lógicas pueden estar hechas de diferentes diseños de circuitos de transistores.
La razón de toda la abstracción es que sería completamente estúpido (y mucho más que imposible, no puedo describirlo en palabras) tratar con el nivel bajo. Entonces, una vez que se diseña y abstrae el nivel más bajo, el siguiente nivel se puede usar con certeza de que hará lo que se dice. Repita el ciclo, y pasamos de transistores y puertas lógicas hasta programación de alto nivel e interfaces gráficas.
Estoy dando vueltas a tu pregunta, principalmente porque no podría decirte cómo fluye la corriente a través del Arduino. Para un razonamiento más sólido de por qué, busque en Circuitos integrados, VLSI (integración a gran escala) y temas relacionados que seguramente aparecerán en su búsqueda.
fuente