Cómo hacer un rodillo de dados electrónicos (6 / 10 paso)

Paso 6: Programación de Arduino

Ahora que ya tienes todo conectado a un protoboard, listo armar su programa.

Lo que necesitaba: interfaz con una pantalla, lee la entrada de dos botones y ajustar valores basados en un codificador rotatorio.

Por suerte, comunicarse con la pantalla se hizo rápido y sencillo debido a las bibliotecas de Adafruit. (SSD1306 para conectarse con el chip de controlador de la pantalla y su biblioteca GFX para rápidamente y fácilmente añadir texto o formas a la pantalla.)

El codificador utiliza interrupciones externas, que son una característica muy útil que el ATMega328 tiene y cuenta con soporte para el IDE de Arduino. Permite que código se corrió sólo cuando cambia de un pin y de lo contrario no retrasará el programa principal loop() por votación con la función digitalRead(). Usted puede leer más acerca de esta característica útil aquí: http://playground.arduino.cc/Code/Interrupts

Empecé a sacar la pantalla OLED para trabajar. Por suerte adafruit dispone de una biblioteca (link) para fácil interfaz con el visualizador estaba usando (SSD1305) y adafruit tiene mucha información sobre él aquí: https://learn.adafruit.com/monochrome-oled-breakou...

Después de mi texto y números de roll y resultados donde quería, lo hice para que el usuario podría ser en los modos de selección diferente para cambiar el número de dados a rodar y el número de lados. Usé una semilla aleatoria del número de milisegundos desde el dispositivo fue en y genera un número aleatorio cada vez que pulsan el botón de rodillo. También tenía la pantalla actualizar sólo cuando un número fue cambiado, para reducir la sobrecarga de CPU innecesariamente.

No dude en buscar y utilizar mi codigo en mi repositorio github: https://github.com/tedmyers/Dice_Roller

Para este proyecto, no quería pasar mucho tiempo configurando una placa y enchufar un programador en el sistema. Tan sólo apareció el microcontrolador Atmega328p en mi Arduino Uno y lo colocó en mi circuito final. Si haces esto, no olvide incluir un oscilador de cristal de 16MHz con los condensadores de 22pF necesario en cada pin.

Artículos Relacionados

Cómo hacer un dado electrónico usando ARDUINO

Cómo hacer un dado electrónico usando ARDUINO

Hey chicos estamos con otra fresco proyecto Arduino para usted. En este Instructable le mostrará cómo hacer un dado electrónico utilizando Arduino. Sé que le va a gustar. Ver el video.Paso 1: componentes1. LED (7)2. IC 4017 (contador de década)3. pue
Dado electrónico con Attiny84

Dado electrónico con Attiny84

Este proyecto es un dado electrónico usando un chip de Attiny84. El Attiny84 funciona como un Arduino excepto es un chip de 14 pines y tiene menos memoria y ningún programador incorporado. Mostrará como subir un programa con un Arduino usando el IDE
¿Dado electrónico simple

¿Dado electrónico simple

Ever quería hacer un dado electrónico? He diseñado un circuito simple y pequeño, que cabe en cualquier bolsillo.Usted podría a preguntarse por qué esto es mejor que un dado normal. Aumenta significativamente su nivel de geek.La mayor parte es la bate
Arduino: Dado electrónico (usando números al azar)

Arduino: Dado electrónico (usando números al azar)

este instructable le mostrará cómo hacer un dado electrónico con experiencia mínima con 7 LEDs, resistencias, cables de puente y por supuesto el arduino (o clon de arduino). Escribí este instructable para que cualquiera pueda fácilmente seguir y apre
Dado electrónico

Dado electrónico

hice este par de electrónicos dados hace muchos años (probablemente unos 15!). Fue un regalo para mi novia entonces - ahora mi esposa (ella no fue puesta por extrema geek - afortunadamente)Utilizan una pantalla LCD de matriz de puntos de carácter ind
Un dado electrónico, batería

Un dado electrónico, batería

actualización: un Instructable completa esto es aquí: Faraday por diversión: una electrónica dados alUna Microcontrolador AVR Tiny13 con sede en electrónicos dados, que no utilice ninguna batería o alguna fuente de energía normal. En lugar de ello de
Hacer bloqueo de código electrónico con microcontrolador 8051

Hacer bloqueo de código electrónico con microcontrolador 8051

una Cerradura de código electrónico es un dispositivo que tiene una Asamblea de control electrónico que se le atribuye. Cuentan con un sistema de control de acceso. Este sistema permite al usuario desbloquear el dispositivo con una contraseña. Se int
Doble dado electrónico

Doble dado electrónico

Energía con 4.5... 5.0V. puede utilizar las baterías de 3x1.5V, 4 x 1.2V NiMH baterías o vender cargador de teléfono con salida de 5V. Funciona también con 3.7V batería de ión de litio pero el brillo es bajo.D1A... D7A y D1B... D7B son LED rojo o ama
BRICOLAJE electrónicos dados

BRICOLAJE electrónicos dados

Vivimos en un mundo digital, así que por qué no hacer un dado electrónico digital para el juego. Aquí te presentamos un dado electrónico compacto con diseño de PCB. Puede romper la placa en dos si desea reducir el tamaño de los dados.Dados tienen con
Construir un troquel poliédrica electrónico

Construir un troquel poliédrica electrónico

dados son divertidos. Dados poliédricos en D & D son aún más divertido, sobre todo en grandes manojos de diferentes tamaños. Pero un puñado no siempre es práctico.Desde que vi la varita de dado electrónico de hueso dragon anunciada en las páginas de
Con incrustaciones de lógica: Un gigante circuito embutido de rastros electrónicos por chorro de agua

Con incrustaciones de lógica: Un gigante circuito embutido de rastros electrónicos por chorro de agua

Este Instructable muestra cómo hacer una tarjeta de circuitos electrónicos con incrustaciones gigante de rastros de acero inoxidable, corte por chorro de agua OMAX y fresado en una Shopbot CNC de acrílico.Estos pasos se extienden para construir cualq
Luz-notificador de correo electrónico no leídos con frambuesa Pi

Luz-notificador de correo electrónico no leídos con frambuesa Pi

En este Instructable, te mostraré, cómo construir tu propio 'correo electrónico no leído'-Notifier, que comienza a la luz, cuando llega un nuevo correo electrónico. No necesita equipo especial para esto. Cuando haces proyectos de DIY a ti mismo, tien
Correo electrónico Spam Bot usando VBScript (VBS)

Correo electrónico Spam Bot usando VBScript (VBS)

Hola, hace poco volvieron a programación VBS y quería hacer un bot de correo electrónico. así lo hice.Aquí essolo copiar pegar en el Bloc de notas guardar como anything.vbs, donde cualquier cosa es cualquier nombre le quiere.Si utilizas hotmail sólo
Portafolio electrónico

Portafolio electrónico

¿Qué haces?Hice un portafolio electrónico para un proyecto de futuro empresarial líderes de América (FBLA). Esto muestra mi cartera, currículum e información sobre mi carrera en un lugar en internet. Usé mi creatividad y mis habilidades en el uso de