Experimentos de Arduino (Supersize Instructable) (4 / 14 paso)

Paso 4: Habilidad nivel: básico. (2)

  • ZUMBADOR piezoeléctrico (reproducción de tonos y melodías)
  • Configuración simple del circuito ver fotos, aquí jugar una melodía de tono y canción/melodía mediante la alteración de la frecuencia y el tono de timbre eléctrico ejemplos tu look de IDE en digital y seleccione tono/melodía y probarlo.
  • CÓDIGO PARA PUEDEN SINTONIZAR POR DEBAJO DE ESTA LÍNEA ___

int noteFreqArr [] = {}

49.4, 52.3, 55.4, 58.7, 62.2, 65.9, 69.9, 74, 78.4, 83.1, 88, 93.2, 98.8, 105, 111, 117, 124, 132, 140, 148, 157, 166, 176, 186, 198, 209, 222, 235, 249, 264, 279, 296, 314, 332, 352, 373, 395, 419, 444, 470, 498, 527, 559, 592, 627, 665, 704, 746, 790, 837, 887, 940, 996, 1050, 1110, 1180, 1250, 1320, 1400, 1490, 1580 1670, 1770, 1870, 1990, 2100};

modo largo = 0;

void setup() {pinMode (4, salida); / / configurar un pin de salida de zumbador}

void playNote (noteInt largo, longitud, modo largo, hondo = 25) {longitud = longitud - respiración; noteInt2 largo = noteInt + 12; //1 octava a largo noteInt3 = noteInt + 24; //2 octavas a largo noteInt4 = noteInt + 36; //3 octavas hasta playLoop largo = longitud / 100; //divide longitud 4, para el uso en secuencia del juego if(mode == 0) {//mode 0 secuencia de (tiempo he = 0; me < playLoop; i ++) {buzz (4 noteFreqArr [noteInt], 20); Delay(5); Buzz (4, noteFreqArr [noteInt2], 20); Delay(5); Buzz (4, noteFreqArr [noteInt3], 20); Delay(5); Buzz (4, noteFreqArr [noteInt4], 20); Delay(5); }} más if(mode == 1) {//mode 1 secuencia de (tiempo he = 0; i < playLoop; i ++) {buzz (4, noteFreqArr [noteInt3], 20), delay(5) buzz (4, noteFreqArr [noteInt4], 20); delay(5); buzz (4, noteFreqArr [noteInt3], 20); delay(5); buzz (4, noteFreqArr [noteInt4], 20); delay(5);}} más if(mode == 2) {//mode 2 secuencia de (tiempo he = 0; me < playLoop; i ++) {buzz (4, noteFreqArr [noteInt3] 20); Delay(5); Buzz (4, noteFreqArr [noteInt3], 20); Delay(5); Buzz (4, noteFreqArr [noteInt3], 20); Delay(5); Buzz (4, noteFreqArr [noteInt2], 20); Delay(5); {}} más if(mode == 3) {//mode 3 secuencia de (largo i = 0; i < playLoop; i ++) {buzz (4, noteFreqArr [noteInt4], 40) delay(5) buzz (4, noteFreqArr [noteInt2], 40); delay(5);}} if(breath > 0) {//take una breve pausa o 'aliento' si se especifica delay(breath);}}

void loop() {//main curso playNote (12, 500, modo); playNote (5, 1000, modo); playNote (7, 250, modo); playNote (10, 250, modo); playNote (9, 250, modo); playNote (7, 250, modo); playNote (12, 500, modo); playNote (12, 500, modo); playNote (12, 250, modo); playNote (14, 250, modo); playNote (9, 250, modo); playNote (10, 250, modo); playNote (7, 500, modo); playNote (7, 500, modo); playNote (7 250, modo); playNote (10, 250, modo); playNote (9, 250, modo); playNote (7, 250, modo); playNote (5, 250, modo); playNote (17, 250, modo); playNote (16, 250, modo); playNote (14, 250, modo); playNote (12, 250, modo); playNote (10, 250, modo); playNote (9, 250, modo); playNote (7, 250, modo); playNote (5, 1000, modo); playNote (7, 250, modo); playNote (10, 250, modo); playNote (9, 250, modo); playNote (7, 250, modo); playNote (12, 500, modo); playNote (12, 500, modo); playNote (12, 250, modo); playNote (14, 250, modo); playNote (9, 250, modo); playNote (10, 250, modo); playNote (7, 500, modo); playNote (7, 500, modo); playNote (7, 250, modo); playNote (10, 250, modo); playNote (9, 250, modo); playNote (7, 250, modo); playNote (5, 250, modo); playNote (12, 250, modo); playNote (7, 250, modo); playNote (9, 250, modo); playNote (5, 250, modo); Delay(250); if(Mode == 0) {modo = 1;} else if(mode == 1) {modo = 2;} otro if(mode == 2) {modo = 3;} más if(mode == 3) {modo = 0;}}

zumbido vacío (int targetPin, frecuencia largo, longitud) {delayValue largo = 1000000/frecuencia/2; / / calcular el valor de retardo entre las transiciones / / 1 segundo de pena de microsegundos, dividido por la frecuencia, luego dividir por la mitad desde / / allí son dos fases cada ciclo largo numCycles = frecuencia * longitud / 1000; / / calcular el número de ciclos por tiempo adecuado / / multiplicar la frecuencia, que es realmente ciclos por segundo por el número de segundos / / / obtener el número total de ciclos para producir para (tiempo he = 0; i < numCycles; i ++) {/ / de la longitud calculada del tiempo... digitalWrite(targetPin,HIGH); / / escribo el pin del zumbador para empujar el diafragma delayMicroseconds(delayValue); / / espere el retraso calculado valor digitalWrite(targetPin,LOW); / / escribo el pin del zumbador baja a tire hacia atrás del diafragma delayMicroseconds(delayValue); / / esperar againf o el valor de demora calculados}}

  • (Sin necesidad de descargar cualquier biblioteca para esto simplemente copiar y pegar en tu IDE en un dibujo vacío y guardarlo como la pueden subir y probarlo, personalmente encontrar muy molesto acorde cuando jugó su obtiene la atención sin embargo)
  • Botón presionar (capacidad para asignar botones para más control y comando de habilidad)... Botón presionar y mapeo, en primer lugar único botón como un botón de encendido al pulsar apagado cuando se libera, seguido por asignación de botón de duelo uno como un botón de apagado y el segundo un un botón de encendido, permitiendo la creación de un panel de control para sistemas de robot, como un 5button pad arriba/abajo/izquierda/derecha y un botón de acción en el centro.
  • Siguen las fotos y los vídeos para cablear el circuito si tienes problemas se refieren a fuentes en línea para la asignación de botón con el arduino, compruebe siempre su cableado antes de conectar para arriba y da vuelta en su tablero y luego comprobar como un corto circuito puede matar tu equipo en segundos especialmente con aplicaciones de alto voltaje más... Codificación por debajo de esta línea para configurar los botones ___ (para solo botón SETUP) ___ / *

    Botón enciende y apaga una luz emitiendo diode(LED) conectado al pin digital 13, al presionar un pulsador conectado al pin 2. El circuito: * LED conectado desde el pin 13 a tierra * pulsador conectado al pin 2 de + 5V * resistencia de 10K conectado al pin 2 de tierra * Nota: en la mayoría Arduinos ya es un LED en el tablero atado pin 13. creado por DojoDave modificado 30 de agosto de 2011 por Tom Igoe este ejemplo de código es de dominio público de 2005. http://www.Arduino.CC/en/Tutorial/Button *

    / no cambiarán constantes. Se utilizan aquí para / / conjunto de números de pin: const int buttonPin = 2; el número de lo pin pulsador const int ledPin = 13; el número de los pines del LED

    cambiarán las variables: int buttonState = 0; variable para lectura del estado del pulsador

    void setup() {/ / inicializar el pin LED como salida: pinMode (ledPin, salida); / / inicializar el perno pulsador como entrada: pinMode (buttonPin, entrada);}

    void loop() {/ / leer el estado del pulsador valor: buttonState = digitalRead(buttonPin);

    comprobar si el pulsador está presionado. Si es así, el buttonState es alta: Si (buttonState == HIGH) {/ / enciende el LED: digitalWrite (ledPin, HIGH);} más {/ / apagar LED: digitalWrite (ledPin, LOW);}}

  • (Para la configuración de botón de duelo) ___ int ledPin = 13; elige el pin para el LED int inputPin1 = 3; botón 1 int inputPin2 = 2; botón 2 void setup() {pinMode (ledPin, salida); / / declara el LED como salida pinMode (inputPin1, entrada); / / hacer el botón 1 una entrada pinMode (inputPin2, entrada); / hacer botón 2 una entrada {void loop() {si (digitalRead(inputPin1) == baja) {digitalWrite (ledPin, LOW); / / apagar LED} else if (digitalRead(inputPin2) == baja) {}

    digitalWrite (ledPin, HIGH); encender LED {{}

  • Sólo tienes que copiar y más allá de lo anterior con los botones conectados a los pines correctos, con desplegable de resistencias para asegurarse de que los botones reaccionan como en apagado, no sólo en constantemente.

  • (Foto RESISTOR SETUP) Algunos además fácil de configurar, conectar su LED en el pin correcto indicado en la codificación que sigue dentro de poco, las necesidades foto resistor que se atarán en un resistor también ver fotos y se mide por un pin analógico 0 a menos que establezca como otro pin, el pin será leer la señal de resistencia y traducir a voltios el LED con eficacia la decoloración con los cambios en la luz , estaba en una habitación bastante brillante así que tuvo que utilizar extrema proximidad también había una grieta en la fotorresistencia que su función más todavía sin embargo trabajado lo suficiente para demostrar y me enseñe cómo funcionaba así como la codificación necesaria para controlar y medir la intensidad de luz entrante...

  • La codificación después de esta línea ___ //PhotoResistor Pin

Apagado de int = 0; el pin analógico el fotoresistor es //connected a //the fotorresistor no está calibrado para todas las unidades //this es simplemente un valor raw sensor (luz relativa) //LED Pin int ledPin = 9; el pin del LED está conectado a //we son control de luminosidad //we utilizar uno del PWM (anchura de pulso / / pins de modulación) void setup() {pinMode (ledPin, salida); //sets el pin led en salida} / * * loop() - esta función comenzará después de la instalación * acabados y luego repetir * / void loop() {int lightLevel = analogRead(lightPin); //Read la / / lightlevel lightLevel = mapa (lightLevel, 900, 0, 0, 255); //adjust el valor 0 a 900 a //span 0 a 255

lightLevel = restringir (lightLevel, 0, 255); //make que la //value esté después //0 y 255 analogWrite (ledPin, lightLevel); escribir el valor}

  • Ordenar la cantidad de código no a complicado y usa funciones familiares como los pines analógicos y hay valores mini y max,, generalmente desaceleración de pernos y de los modos allí, nuevas funciones incluyen constantes nivel luz 0,900,0,255 etc. como se ve arriba.

  • Artículos Relacionados

    Cómo a uso Fritzing para tu Arduino/RaspberryPi Instructable

    Cómo a uso Fritzing para tu Arduino/RaspberryPi Instructable

    Mostrar esquemas, diseños de protoboard y más con esta aplicación!Paso 1: Descargar/instalar Fritzing.org y haga clic en descargar en la parte superior. Luego elegir lo que os está utilizando por ejemplo Mac OS X y comenzara a descargar. A continuaci
    Cómo hacer un obstáculo evitando Arduino Robot

    Cómo hacer un obstáculo evitando Arduino Robot

    Hola a todos! En este Instructable voy se que muestra cómo hacer un robot similar a la "móvil Arduino plataforma Experimental" (MAEP) que hice. Está equipado con dos motores que pueden dirigir el robot y la habilidad de ver los obstáculos delant
    Sensor de luz muy sensible Arduino

    Sensor de luz muy sensible Arduino

    en el Proyecto de la comunidad de bioluminiscencia en BioCurious, hemos estado trabajando con un número de algas y bacterias bioluminiscentes. Nos encantaría poder medir con precisión cuánto luz estos organismos producen. Por desgracia, la cantidad d
    Un viaje de Palma Arduino Kit

    Un viaje de Palma Arduino Kit

    debía este instructable para mi fan Palm Arduino Kit!Hice mencionado en mi anterior instructable "Palma Arduino Kit" que construí el kit que me acompaña mientras hago el viaje.Y un camino real de mi Palm Arduino Kit sucedió! Nos hizo un viaje a
    Cómo usar WTV020SD - 16P con Arduino

    Cómo usar WTV020SD - 16P con Arduino

    WTV020SD-16 es un excelente módulo para añadir música en proyectos de electrónica. El módulo puede utilizarse con o sin Arduino.Hay varias cosas a considerar al trabajar con este módulo. Por ejemplo, funciona con sólo 2GB de tarjeta microSD y soporta
    Cómo se mide la masa de la tierra utilizando arduino.

    Cómo se mide la masa de la tierra utilizando arduino.

    Un buen día, yo estaba pesando a mi auto sobre una balanza. De pronto un pensamiento vino a mi mente, '¿cuánto sería la masa de la tierra?'. Deja eso aparte, ' ¿cómo podemos incluso medirlo?'. No es ningún tal balanza en la cual, se puede colocar la
    Juego archivo usando arduino

    Juego archivo usando arduino

    este es un circuito simple para reproducir archivos wav usando arduino Nano V3.0, consta de 4 botones, cada uno reproducir archivo wav específico cargado a la tarjeta SD.Paso 1: partes 1-Arduino Nano V3.0 (yo usé la versión de chino llamada Funduino
    ¿TimeKeeping en ESP8266 & arduino uno sin un RTC (reloj en tiempo Real)?

    ¿TimeKeeping en ESP8266 & arduino uno sin un RTC (reloj en tiempo Real)?

    Como dice el titulo, he probado hacer el seguimiento de tiempo en mi arduino uno y la ESP8266 / tablas Wemos D1 (programadas con arduino) sin el uso de bibliotecas, internet o una unidad RTC. Un montón de instructables grandes aquí en el sitio Dile q
    Arduino, sensores y MIDI

    Arduino, sensores y MIDI

    Ahora que estás al día sobre el uso de entradas y salidas de Arduino, este Instructable le dará todo que lo necesario para empezar a usar sensores para activar notas MIDI de Arduino. Este post es la última entrega de una serie de talleres que dirigió
    Voz para Arduino: LEDs de Control usando reconocedor de voz MIT

    Voz para Arduino: LEDs de Control usando reconocedor de voz MIT

    Hola, todo el mundo!!!!!! Ha sido un tiempo no había actualizado mi post aquí. Hoy me gustaría compartir con los chicos un experimento que hice. Voy a controlar LEDs con el reconocedor de voz MIT app inventor. Oh antes de que olvide, también empecé u
    Shield Arduino sous-vide

    Shield Arduino sous-vide

    * Nota * este proyecto es realizado por un grupo de estudiantes de la Politécnica de SingapurLas herramientas y componentes fueron proporcionados por nuestro supervisor FYP Teo Shin Jen.Sous-vide (/ suË Ë viË d /; En francés "al vacío") [1] es u
    Regulador de función de múltiple de Arduino Mini con pantalla LCD

    Regulador de función de múltiple de Arduino Mini con pantalla LCD

    este instructivo se basa en el monitor de entorno Arduino mini y monitor de EEG de Arduino mini Instructables.Le permite controlar hasta 4 relés usando el tiempo, temperatura y/o luz, tu mente, o sensor de lo que le gustaría utilizar.Los ejemplos son
    OFFscope - osciloscopio offline (Arduino + SD tarjeta registro rápido)

    OFFscope - osciloscopio offline (Arduino + SD tarjeta registro rápido)

    Esto no es un osciloscopio de tiempo real!En primer lugar adquirir señal entrando ahorro/lo a la tarjeta SD. Luego revise la señal adquirida en tu PC.Este osciloscopio fuera de línea está diseñado para diagnóstico automotriz sensor. 99% de los sensor
    Biblioteca de controlador de LCD Arduino I2C y PackMan

    Biblioteca de controlador de LCD Arduino I2C y PackMan

    Este proyecto es una completa Arduino un Instructable anterior que se puede encontrar aquí;Snappily que tituló...'Biblioteca PIC de microchip para el Control de un 20 por 4 LCD sobre I2C'Es mi primera ir a escribir una librería de Arduino C++ así que