proyectos:programacion_bats
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| proyectos:programacion_bats [2018/01/19 11:29] – [No me despiertes bruscamente] Félix Sánchez-Tembleque | proyectos:programacion_bats [2024/06/17 07:13] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 5: | Línea 5: | ||
| {{: | {{: | ||
| - | BATS -Bricolabs Arduino Training Shield- es una idea original de Sergio Alvariño de una placa escudo (shield) para Arduino UNO con muchos de los componentes que se utilizan en los cursos para el aprendizaje inicial de esta plataforma. La idea es doble | + | BATS -Bricolabs Arduino Training Shield- es una idea original de Sergio Alvariño |
| * En cuanto al hardware: aprender técnicas de soldadura básica. | * En cuanto al hardware: aprender técnicas de soldadura básica. | ||
| * En cuanto al software: aprender ideas básicas de programación. | * En cuanto al software: aprender ideas básicas de programación. | ||
| + | * En cuanto al diseño: aprender a usar KiCAD diseñando la PCB de BATS. | ||
| - | No creemos que exista una edad mínima exacta para empezar con esto. Tentativamente 10 años puede estar bien con supervisión. | ||
| - | Para los más avanzados, en Github | + | Para los más avanzados, en esta otra [[https:// |
| - | Esta entrada de la Wiki se refiere a la programación de proyectos sencillos una vez montada la placa. | + | Esta entrada de la Wiki se refiere a la programación de proyectos sencillos una vez montada la placa. |
| Los proyectos tendrán forma de programas de Arduino . En cada uno se mostrará el código de varios ejemplos de más sencillo a más complejo, y se propondrá una tarea sin pistas. Un programa no es nada más que una lista ordenada de tareas en un lenguaje que entienda el ordenador que las va a hacer. | Los proyectos tendrán forma de programas de Arduino . En cada uno se mostrará el código de varios ejemplos de más sencillo a más complejo, y se propondrá una tarea sin pistas. Un programa no es nada más que una lista ordenada de tareas en un lenguaje que entienda el ordenador que las va a hacer. | ||
| Línea 24: | Línea 24: | ||
| ==== Un mundo binario ==== | ==== Un mundo binario ==== | ||
| - | Una salida digital es una forma de comunicación binaria desde Arduino | + | Una salida digital es una forma de comunicación binaria desde Arduino hacia el exterior. La llamamos binaria por que tiene sólo dos posibles estados: si/no, encendido/ |
| El programa de Arduino para encender un led tiene dos partes: en la primera le decimos que queremos usar un pin como salida digital (los pines pueden tener muchas funciones). En la segunda le decimos que lo encienda. Más adelante veremos además qué significa eso de //void loop() o setup()//. Puedes teclear el código o cortar y pegar. | El programa de Arduino para encender un led tiene dos partes: en la primera le decimos que queremos usar un pin como salida digital (los pines pueden tener muchas funciones). En la segunda le decimos que lo encienda. Más adelante veremos además qué significa eso de //void loop() o setup()//. Puedes teclear el código o cortar y pegar. | ||
| Línea 74: | Línea 74: | ||
| ==== Guardar números: Variables ==== | ==== Guardar números: Variables ==== | ||
| - | Supongamos que ahora queremos cambiar qué LED encendemos en el programa. El amarillo, por ejemplo, está conectado al pin 6. Podemos cambiar el 8 por 6 en todos los sitios del programa donde aparece. Pero si el programa es largo esto es un follón. Para esto (y muchas más cosas) usamos variables. Tendrán un nombre y un valor. Cada vez que cambiemos el valor se cambiará en todos los sitios donde aparezca la variable. | + | Supongamos que ahora queremos cambiar qué LED encendemos en el programa. El amarillo, por ejemplo, está conectado al pin 6. Podemos cambiar el 8 por 6 en todos los sitios del programa donde aparece. Pero si el programa es largo esto es un follón. Para esto (y muchas más cosas) usamos variables, que son nombres que guardan números y otros contenidos. Tendrán un nombre y un valor. Cada vez que cambiemos el valor se cambiará en todos los sitios donde aparezca la variable. |
| < | < | ||
| Línea 165: | Línea 165: | ||
| La tarea a repetir vendrá luego entre corchetes {}. | La tarea a repetir vendrá luego entre corchetes {}. | ||
| - | **NOTA**: es bastante habitual usar la variable i por //índice// pero podemos llamarla como queramos | + | **NOTA**: es bastante habitual usar la variable i por //índice// pero podemos llamarla como queramos. O casi. No podemos usar nombres que ya tienen otro uso, como la propia palabra //for//. |
| ==== Ver cosas en la pantalla: el monitor serie ==== | ==== Ver cosas en la pantalla: el monitor serie ==== | ||
| Línea 284: | Línea 284: | ||
| </ | </ | ||
| - | A diferencia del bucle que usábamos antes en la que la variable i se usaba sólo como contador para repetir muchas veces, ahora esa variable sirve para algo dentro del bucle, para definir la luminosidad. Con este programa, cada 500 milisegundos iremos subiendo la intensidad de luz en 10 puntos | + | A diferencia del bucle que usábamos antes en la que la variable i se usaba sólo como contador para repetir muchas veces, ahora esa variable sirve para algo dentro del bucle, para definir la luminosidad. Con este programa, cada 500 milisegundos iremos subiendo la intensidad de luz hasta 50 y volverá a empezar de cero. |
| La variable del bucle en este caso ya no sube de uno en uno, sino de 10 en 10 tomando valores i=0, 10, 20, 30, 40, 50. | La variable del bucle en este caso ya no sube de uno en uno, sino de 10 en 10 tomando valores i=0, 10, 20, 30, 40, 50. | ||
| Línea 296: | Línea 296: | ||
| Tratar de hacer primero los colores básicos (o primarios) rojo, azul y verde y luego mezclas para obtener color amarillo, azul claro (cián) y violeta (magenta). | Tratar de hacer primero los colores básicos (o primarios) rojo, azul y verde y luego mezclas para obtener color amarillo, azul claro (cián) y violeta (magenta). | ||
| + | |||
| + | Esta tarea está pensada para reforzar el concepto de salida analógica y divertirse un poco mezclando luces de colores. | ||
| + | |||
| + | ===== Proyecto 4. Compartir programas ===== | ||
| + | |||
| + | ==== Hardware y software abiertos ==== | ||
| + | |||
| + | Si estás leyendo esto es en parte porque en Bricolabs estamos comprometidos con compartir el conocimiento. Hay muchas formas de hacer esto como documentar cómo has diseñado una placa, escribir una wiki o hacer talleres. Nosotros estamos convencidos y comprometidos con el hardware libre como Arduino o la propia BATS y con el software libre como Arduino -de nuevo-, GNU/Linux y los programas que ves aquí. | ||
| + | |||
| + | ==== Github ==== | ||
| + | |||
| + | Hay muchas maneras de compartir programas, pero ahora son mucho más cómodas que los tiempos de copiar cintas casete. La plataforma que usamos para casi todo es Github, una web donde puedes abrirte una cuenta para almacenar tus programas en la nube. Si compartes tus programas en una cuenta pública, además es gratuita. Todo el proyecto BATS está en [[https:// | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ==== Tarea 4: Probar programas de Github ==== | ||
| + | |||
| + | Entra en la carpeta de [[https:// | ||
| + | |||
| + | El objetivo de esta tarea es empezar a conocer Github y usar programas ajenos. | ||
| + | |||
| + | Bola extra: crea una cuenta para tí en Github, crea un repositorio y dentro de él un archivo con algún programa tuyo. No olvides que la carpeta sea pública. | ||
| ===== Equipo ===== | ===== Equipo ===== | ||
proyectos/programacion_bats.1516361399.txt.gz · Última modificación: 2024/06/17 07:12 (editor externo)
