Nivel de burbuja electrónico Arduino Micro (4 / 5 paso)

Paso 4: El código para hacer que vaya!

El código para este proyecto bastante simple también.

Puesto que el sensor emite sus señales como X y Y valores. Todo lo que realmente necesitamos hacer es leer los valores y convertirlos en algo "mundo real" que podemos mostrar en nuestra pantalla de 5110.

El código establece la pantalla 5110. Dibuja un pequeño ojo de toros y luego comienza leyendo los datos de y, x de la memsic.

entonces hace un par de asignaciones para convertir la 3000 a 6000(ish) salida en 2 valores.

Primera etapa mapas memsic salida a escala de la pantalla en x y y (0-48) y (0-84) para que podamos mostrar y animar la burbuja alrededor de la pantalla.

También es una salida serial que envía los datos al usb. no tienes que usarlo. pero allí si es necesario.

La segunda etapa de asignación entonces escalas las escalas de pantalla a -90 a 90 para las etiquetas de texto de anuncio Y de X en la pantalla para los ángulos. (esto es un indicador de ángulo aproximado) no estamos preocupando de precisión sin nivel. sólo queremos una idea general.

Aquí está el código...

 #include <SPI.h> //arduino micro led visual level #include <Adafruit_GFX.h> #include <Adafruit_PCD8544.h> Adafruit_PCD8544 display = Adafruit_PCD8544(5, 6, 7, 8, 9); // pin 2 - Serial clock out (SCLK) 5 // pin 3 - Serial data out (DIN) 6 // pin 4 - Data/Command select (D/C) 7 // pin 12 - LCD chip select (CS) 8 // pin 11 - LCD reset (RST) 9 const int X = A4; //X pin on m2125 const int Y = A5; //Y pin on m2125 int i=0; int dist,inv=0; boolean stan=0; void setup() { //set up serial Serial.begin(9600); pinMode(X, INPUT); pinMode(Y, INPUT); display.begin(); display.setContrast(50); display.clearDisplay(); } void loop() { //read in the pulse data int pulseX, pulseY; int angleX, angleY; int accelerationX, accelerationY; pulseX = pulseIn(X,HIGH); pulseY = pulseIn(Y,HIGH); //map the data for the nokia display accelerationX = map(pulseX, 3740, 6286, 48, 0); accelerationY = map(pulseY, 3740, 6370, 84, 0); // map data to crude angles angleX = map(accelerationX,48,0,-90,90); angleY = map(accelerationY,0,84,-90,90); display.drawRect(0,0,84,48,BLACK); display.drawLine( 42, 0, 42, 48, BLACK); display.drawLine( 0, 24, 84, 24, BLACK); display.drawCircle(42,24,10,BLACK); // display bubble display.fillCircle(accelerationY,(accelerationX),4,BLACK); display.setCursor(4,4); display.println("X: "+ String(angleX)); display.setCursor(4,38); display.println("Y: "+ String(angleY)); display.display(); display.clearDisplay(); //Send the data to the serial in case we'd like to see what's being reported and //possible pc use later Serial.print("X"); Serial.print(pulseX); Serial.print("Y"); Serial.print(pulseY); Serial.println(""); // delay the data feed to we dont overrun the serial delay(90); } 

Artículos Relacionados

Remitente de correo electrónico Arduino Ethernet adaptador/escudo

Remitente de correo electrónico Arduino Ethernet adaptador/escudo

Hola de nuevo.No hace mucho llegué a de 50.000 vistas en mi módulo de ESP8266 Wi-fi. Me sorprendió bastante y queria agradecer a todos los que visto, le gustó y comentado en él. El 2 de septiembre., he publicado instructable sobre estación meteorológ
Alertas de correo electrónico Arduino

Alertas de correo electrónico Arduino

¡ Hola! En este instructable, te voy a mostrar cómo activar un LED cuando llegue un correo electrónico. La razón por la que hizo esto es porque cuando llego a casa de la escuela, quiero saber si me debo molesto en revisar mi correo.Es muy sencillo.Es
SEEED Studio / ladrillo electrónico Arduino: módulo de relé de 5V (Digital)--

SEEED Studio / ladrillo electrónico Arduino: módulo de relé de 5V (Digital)--

trabajando con el relé digital para control de alta tensión puede ser difícil de entender.  Hay no hay instrucciones sobre cómo hacer esto se realizar con un ARDUINO.  He creado esto para que personas podrán utilizar el relé con una toma de corriente
"Arduino Micro" cámara torre nivel

"Arduino Micro" cámara torre nivel

tengo una cámara para arriba en un poste que utilizo para la caza del meteoro de video. Uno de los problemas que he tenido es hacer que la torre esté nivelada en la parte superior. Tiene que ser realmente nivel para asegurarse de que todo el horizont
Correo electrónico control de reloj con Arduino Yun y cómo devolver mensajes no leídos como un entero.

Correo electrónico control de reloj con Arduino Yun y cómo devolver mensajes no leídos como un entero.

En este video usamos un Arduino Yun (o leonardo con un escudo de Wi-Fi) para comprobar su cuenta de correo electrónico (o la etiqueta solicitada) y devolver el número de correos electrónicos no leídos como un entero para ser utilizado en otro proyect
Utilizando un Arduino para controlar o probar un dispositivo electrónico SPI

Utilizando un Arduino para controlar o probar un dispositivo electrónico SPI

hay muchos dispositivos electrónicos que utilizan el bus SPI, o autobús de interfaz periférico Serial, comunicaciones (varios sensores, LCD displays, potenciómetros digitales, convertidores D/a y A/d, transmisores inalámbricos y receptores, controles
Interconexión de circuitos electrónicos para Arduinos

Interconexión de circuitos electrónicos para Arduinos

interconexión de circuitos electrónicos para ArduinoEn este instructable utilizo un ejemplo de interfaz un Arduino a un transmisor-receptor de ARINC 429 para demostrar el proceso general de interconexión un Arduino a circuitos electrónicos para poder
BRICOLAJE - cómo utilizar la Arduino Uno para enviar un correo electrónico, SMS y hacer una voz llamar

BRICOLAJE - cómo utilizar la Arduino Uno para enviar un correo electrónico, SMS y hacer una voz llamar

¿Se pregunta cómo enviar correos electrónicos a través de tu Arduino Uno? No te preocupes... Este vídeo tutorial ilumine sobre el proceso paso a paso para enviar correos electrónicos, mensajes SMS, así como hacer voz llamar usando el 3G/GPRS shield l
Cómo uso mBlock Software para Control de la placa de Arduino UNO para tocar el órgano electrónico

Cómo uso mBlock Software para Control de la placa de Arduino UNO para tocar el órgano electrónico

mBlock es un software de programación gráfica que está diseñado partiendo de cero y es compatible con placas Arduino Arduino UNO, Nano, mega 2560, leonardo, PicoBoard, Makeblock Junta y etc.. La gente puede programar su aplicación, proyectos de Ardui
Leer correo electrónico con Arduino y protector de la onda

Leer correo electrónico con Arduino y protector de la onda

como parte de mi proyecto (ese proyecto es en un concurso así que si usted esta entonces vota por que!) que usa un Arduino para interrumpir una fuente de sonido extrernal (es decir, iPod) para hacerle saber acerca de cosas que a tu alrededor, lo tení
El control de un cerrojo electrónico Schlage con un arduino!

El control de un cerrojo electrónico Schlage con un arduino!

Este instructivo le guiará a través del proceso de desmantelamiento y hacking un cerrojo electrónico Schlage para controlar con un arduino.Paso 1: Comprar la cerradura y descomprimirlo yo tengo la mía a la venta por $99 en Lowe.Saque de la caja y ech
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
Enviar correo electrónico con ESP8266 y Arduino UNO

Enviar correo electrónico con ESP8266 y Arduino UNO

Cómo llegar Adafruits "send_email_smtp.ino" a Enviar correo electrónico con ESP8266 y Arduino UNO.Y eliminar el problemasin respuesta del módulo de"muchos tienen.El módulo funciona con 3.3v lógica según la documentación, pero no tenía ningú
Conexión de Arduino con Temboo y lectura de correo electrónico

Conexión de Arduino con Temboo y lectura de correo electrónico

Gramanet,Soy Pranav Sharma este es mi 2 º instructable y hoy voy a mostrar cómo conectar tu placa Arduino Temboo y leer Emails desde tu cuenta de Gmail.COSAS QUE NECESITAMOS1) Arduino Uno (o cualquier otro se junta trabajo fino)2) Ethernet Shield3) G