Diferencia entre revisiones de «Taller de Arduino»

De fabwiki
Ir a la navegación Ir a la búsqueda
Sin resumen de edición
Sin resumen de edición
Línea 54: Línea 54:
   }
   }
   delay(50);
   delay(50);
}
</pre>
===Código 4===
<pre>
#define USE_TIMER_1    true
#include "TimerInterrupt.h"
unsigned int outputPin1 = LED_BUILTIN;
#define TIMER1_INTERVAL_MS    300
void TimerHandler1(unsigned int outputPin = LED_BUILTIN) {
  static bool toggle1 = false;
  static bool started = false;
  if (!started) {
    started = true;
    pinMode(outputPin, OUTPUT);
  }
 
  digitalWrite(outputPin, toggle1);
  toggle1 = !toggle1;
}
void setup() {
  ITimer1.init();
  ITimer1.attachInterruptInterval(TIMER1_INTERVAL_MS, TimerHandler1, outputPin1);
}
void loop() {
}
}
</pre>
</pre>

Revisión del 23:08 17 jul 2026

Temas a tratar en el taller de Arduino:

  • ¿Qué es Arduino?
  • ¿De dónde viene el concepto del Arduino?
  • ¿Cuál es el propósito del Arduino?
  • ¿Cuál es la relación de Arduino con el PC, Raspberry Pi, y otros dispositivos similares?
  • ¿Cuáles son las versiones de Arduino?
  • ¿El Arduino es código abierto?
  • ¿Qué podemos hacer con un Arduino? ¿Que no es posible?
  • ¿Qué ventajas tiene construir sistemas con Arduino en lugar de circuitos analógicos u otros chips digitales?
  • Vamos a jugar con algunos ejemplos.
  • ¿Como podemos analizar un sistema que contiene un Arduino para corregir errores? ¿Cuáles son las herramientas y técnicas para ayudar?
  • Vamos a construir un sistema nuevo usando un Arduino.

Ejemplos

Mini horno

Código 2

#include <SoftwareSerial.h>

SoftwareSerial mySerial(2, 3); // RX, TX

void setup() {
  mySerial.begin(300);
}

void loop() {
    mySerial.print("h");
    delay(1000);
}

Código 3


#include <SoftwareSerial.h>

SoftwareSerial mySerial(2, 3); // RX, TX

void setup() {
  mySerial.begin(300);
  pinMode(13, OUTPUT);
}

void loop() {
  if (mySerial.available()) {
    char c = mySerial.read();
    if (c == 'h') {
      digitalWrite(13, HIGH);
      delay(100);
      digitalWrite(13, LOW);
      delay(100);
    }
  }
  delay(50);
}

Código 4

#define USE_TIMER_1     true

#include "TimerInterrupt.h"

unsigned int outputPin1 = LED_BUILTIN;

#define TIMER1_INTERVAL_MS    300

void TimerHandler1(unsigned int outputPin = LED_BUILTIN) {
  static bool toggle1 = false;
  static bool started = false;

  if (!started) {
    started = true;
    pinMode(outputPin, OUTPUT);
  }
  
  digitalWrite(outputPin, toggle1);
  toggle1 = !toggle1;
}

void setup() {
  ITimer1.init();
  ITimer1.attachInterruptInterval(TIMER1_INTERVAL_MS, TimerHandler1, outputPin1);
}

void loop() {
}