Introduction

Codigo en Arduino
copia mientras aprendes

Aqui encontraras codigos muy utiles que podras juntas a tu aplicacion, solo copia y pegalo en tu codigo. en este apartado copia los diferentes codigos , pero no solo copia, sino tambien analiza lo que copias.

Marcha Imperial
int speakerPin = 3;

 

#define c 261
#define d 294
#define e 329
#define f 349
#define g 391
#define gS 415
#define a 440
#define aS 455
#define b 466
#define cH 523
#define cSH 554
#define dH 587
#define dSH 622
#define eH 659
#define fH 698
#define fSH 740
#define gH 784
#define gSH 830
#define aH 880

 

void setup()
{
//Speaker//
pinMode(speakerPin, OUTPUT);
march();
}

 

void loop()
{
}

 

void beep (unsigned char speakerPin, int frequencyInHertz, long timeInMilliseconds)
{

 

int x;
long delayAmount = (long)(1000000/frequencyInHertz);
long loopTime = (long)((timeInMilliseconds*1000)/(delayAmount*2));
for (x=0;x<loopTime;x++)
{
digitalWrite(speakerPin,HIGH);
delayMicroseconds(delayAmount);
digitalWrite(speakerPin,LOW);
delayMicroseconds(delayAmount);
}
delay(20);
}

 

void march()
{

 

beep(speakerPin, a, 500);
beep(speakerPin, a, 500);
beep(speakerPin, a, 500);
beep(speakerPin, f, 350);
beep(speakerPin, cH, 150);

 

beep(speakerPin, a, 500);
beep(speakerPin, f, 350);
beep(speakerPin, cH, 150);
beep(speakerPin, a, 1000);

 

beep(speakerPin, eH, 500);
beep(speakerPin, eH, 500);
beep(speakerPin, eH, 500);
beep(speakerPin, fH, 350);
beep(speakerPin, cH, 150);

 

beep(speakerPin, gS, 500);
beep(speakerPin, f, 350);
beep(speakerPin, cH, 150);
beep(speakerPin, a, 1000);

 

beep(speakerPin, aH, 500);
beep(speakerPin, a, 350);
beep(speakerPin, a, 150);
beep(speakerPin, aH, 500);
beep(speakerPin, gSH, 250);
beep(speakerPin, gH, 250);

 

beep(speakerPin, fSH, 125);
beep(speakerPin, fH, 125);
beep(speakerPin, fSH, 250);
delay(250);
beep(speakerPin, aS, 250);
beep(speakerPin, dSH, 500);
beep(speakerPin, dH, 250);
beep(speakerPin, cSH, 250);
//start of the interesting bit

 

beep(speakerPin, cH, 125);
beep(speakerPin, b, 125);
beep(speakerPin, cH, 250);
delay(250);
beep(speakerPin, f, 125);
beep(speakerPin, gS, 500);
beep(speakerPin, f, 375);
beep(speakerPin, a, 125);

 

beep(speakerPin, cH, 500);
beep(speakerPin, a, 375);
beep(speakerPin, cH, 125);
beep(speakerPin, eH, 1000);

 

beep(speakerPin, aH, 500);
beep(speakerPin, a, 350);
beep(speakerPin, a, 150);
beep(speakerPin, aH, 500);
beep(speakerPin, gSH, 250);
beep(speakerPin, gH, 250);

 

beep(speakerPin, fSH, 125);
beep(speakerPin, fH, 125);
beep(speakerPin, fSH, 250);
delay(250);
beep(speakerPin, aS, 250);
beep(speakerPin, dSH, 500);
beep(speakerPin, dH, 250);
beep(speakerPin, cSH, 250);

 

beep(speakerPin, cH, 125);
beep(speakerPin, b, 125);
beep(speakerPin, cH, 250);
delay(250);
beep(speakerPin, f, 250);
beep(speakerPin, gS, 500);
beep(speakerPin, f, 375);
beep(speakerPin, cH, 125);

 

beep(speakerPin, a, 500);
beep(speakerPin, f, 375);
beep(speakerPin, c, 125);
beep(speakerPin, a, 1000);

 

}
Tetris
#define speakerPin 3

 

// Notas (Hz)
#define DO 262
#define DOS 277
#define RE 294
#define RES 311
#define MI 330
#define FA 349
#define FAS 370
#define SOL 392
#define SOLS 415
#define LA 440
#define LAS 466
#define SI 494

 

#define DO2 523
#define DOS2 554
#define RE2 587
#define MI2 659
#define FA2 698
#define SOL2 784
#define LA2 880

 

int negra = 400;
int corchea = 200;
int blanca = 800;

 

void tocar(int nota, int duracion){
tone(speakerPin, nota, duracion);
delay(duracion);
noTone(speakerPin);
delay(30);
}

 

void tetris(){

 

// Parte A
tocar(MI2, negra);
tocar(SI, corchea);
tocar(DO2, corchea);
tocar(RE2, negra);
tocar(DO2, corchea);
tocar(SI, corchea);
tocar(LA, negra);
tocar(LA, corchea);
tocar(DO2, corchea);
tocar(MI2, negra);
tocar(RE2, corchea);
tocar(DO2, corchea);

 

tocar(SI, negra);
tocar(SI, corchea);
tocar(DO2, corchea);
tocar(RE2, negra);
tocar(MI2, negra);
tocar(DO2, negra);
tocar(LA, negra);
tocar(LA, blanca);

 

delay(200);

 

// Parte B
tocar(RE2, negra);
tocar(FA2, corchea);
tocar(LA2, negra);
tocar(SOL2, corchea);
tocar(FA2, corchea);
tocar(MI2, negra);
tocar(DO2, corchea);
tocar(MI2, negra);
tocar(RE2, corchea);
tocar(DO2, corchea);

 

tocar(SI, negra);
tocar(SI, corchea);
tocar(DO2, corchea);
tocar(RE2, negra);
tocar(MI2, negra);
tocar(DO2, negra);
tocar(LA, negra);
tocar(LA, blanca);
}

 

void setup() {
tetris();
}

 

void loop() {
}
Pitido para parlante en el pin 3
#define speakerPin 3
void setup() {
  pinMode(speakerPin, OUTPUT);
  pitidoAlerta();
  pitidoAlerta();
  pitidoAlerta();
}
void loop() {
}
void pitidoAlerta() {
  tone(speakerPin, 1000, 200); // 1000 Hz por 200 ms
  delay(250);
  noTone(speakerPin);
  delay(250);
}
Robot controlado por bluetooth

#include <SoftwareSerial.h>
SoftwareSerial bluetooth(5,4);//18,19
char letra;
#define pwm_A 11
#define m1A 10
#define m2A 9
#define pwm_B 6
#define m1B 7
#define m2B 8
int velo = 255;
#define spk 3

void setup () {
bluetooth.begin(9600);//115200
pinMode(m1A,OUTPUT);
pinMode(m2A,OUTPUT);
pinMode(m1B,OUTPUT);
pinMode(m2B,OUTPUT);
pinMode(spk,OUTPUT);
avanzar();
delay(700);
detener();
}

void loop () {
if (bluetooth.available()){letra = bluetooth.read();}
if(letra=='W'){avanzar();}
if(letra=='S'){reversa();}
if(letra=='A'){derecha();}
if(letra=='D'){izquierda();}
if(letra=='T'){detener();}
if(letra=='1'){velo=0;}
if(letra=='2'){velo=140;}
if(letra=='3'){velo=160;}
if(letra=='4'){velo=200;}
if(letra=='5'){velo=255;}
if(letra=='X'){pitidoAlerta();}
}

void avanzar(){
analogWrite(pwm_A,velo);
digitalWrite(m1A,HIGH);
digitalWrite(m2A,LOW);
analogWrite(pwm_B,velo);
digitalWrite(m1B,HIGH);
digitalWrite(m2B,LOW);
}

void detener(){
analogWrite(pwm_A,0);
digitalWrite(m1A,LOW);
digitalWrite(m2A,LOW);
analogWrite(pwm_B,0);
digitalWrite(m1B,LOW);
digitalWrite(m2B,LOW);
}

void izquierda(){
analogWrite(pwm_A,velo);
digitalWrite(m1A,LOW);
digitalWrite(m2A,HIGH);
analogWrite(pwm_B,velo);
digitalWrite(m1B,HIGH);
digitalWrite(m2B,LOW);
}

void derecha(){
analogWrite(pwm_A,velo);
digitalWrite(m1A,HIGH);
digitalWrite(m2A,LOW);
analogWrite(pwm_B,velo);
digitalWrite(m1B,LOW);
digitalWrite(m2B,HIGH);
}

void reversa(){
analogWrite(pwm_A,velo);
digitalWrite(m1A,LOW);
digitalWrite(m2A,HIGH);
analogWrite(pwm_B,velo);
digitalWrite(m1B,LOW);
digitalWrite(m2B,HIGH);
}

void pitidoAlerta() {
tone(spk, 1000, 200); // 1000 Hz por 200 ms
delay(250);
noTone(spk);
delay(250);
}

Medir distancia con Ultrasonido

// ---------- PINES ----------
const int trigPin = 9; // Trig del sensor ultrasónico
const int echoPin = 10; // Echo del sensor ultrasónico
const int buzzerPin = 8; // Buzzer
const int ledPin = 7; // LED

// ---------- VARIABLES ----------
long duracion;
int distancia;
unsigned long tiempoAnterior = 0;

const int DISTANCIA_MAX = 30; // Distancia (cm) a la que empieza a sonar

void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(buzzerPin, OUTPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}

void loop() {
distancia = medirDistancia();

// Ver la distancia en el Monitor Serie
Serial.print("Distancia: ");
Serial.print(distancia);
Serial.println(" cm");

if (distancia > 0 && distancia <= DISTANCIA_MAX) {
// Convierte la distancia en velocidad de pitido:
// a 30 cm -> pitido cada 500 ms | a 2 cm -> pitido cada 60 ms
int intervalo = map(distancia, 2, DISTANCIA_MAX, 60, 500);
intervalo = constrain(intervalo, 60, 500);

if (millis() - tiempoAnterior >= (unsigned long)intervalo) {
tiempoAnterior = millis();

// Pitido corto + destello del LED
digitalWrite(buzzerPin, HIGH);
digitalWrite(ledPin, HIGH);
delay(60); // duración del pitido
digitalWrite(buzzerPin, LOW);
digitalWrite(ledPin, LOW);
}
} else {
// Fuera de rango: todo apagado
digitalWrite(buzzerPin, LOW);
digitalWrite(ledPin, LOW);
}

delay(30); // pequeña pausa entre lecturas
}

// ---------- MEDIR DISTANCIA ----------
int medirDistancia() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

duracion = pulseIn(echoPin, HIGH, 30000); // timeout de 30 ms
return duracion * 0.034 / 2; // conversión a centímetros
}

base

void setup() {

}

void loop() {

}