top of page

Programación en Arduino, función randomSeed()

8 ago 2021
2 min de lectura

Es mas conveniente utilizar la función randomSeed() que la función random(), ya que si en la función randomSeed() implementamos una semilla diferente realmente nos va a generar números al azar. Como ejercicio haremos un dado electrónico doble y explicaremos el código.

Aquí pueden descargar el código y modificarlo a su gusto:

Suscríbete a mi canal y de esta manera apoyas mi trabajo. http://www.youtube.com/subscription_center?add_user=cmarinv2005





// Juego de Memoria dados electronicos

// Recuerden por favor apoyar mi canal de Youtube

// Modificado por: Robotica, impresion 3D y algo mas...


#define d1_1 2

#define d1_2 3

#define d1_3 4

#define d1_4 5

#define d1_5 6

#define d1_6 7

#define d1_7 8

#define d2_1 A2

#define d2_2 A3

#define d2_3 A4

#define d2_4 A5

#define d2_5 9

#define d2_6 10

#define d2_7 11

#define pulsador 12

int varpulsador=0;

long randomNumber1=0.0;

long randomNumber2=0.0;


void setup(){

Serial.begin(9600);

pinMode(pulsador, INPUT);

pinMode(d1_1, OUTPUT);

pinMode(d1_2, OUTPUT);

pinMode(d1_3, OUTPUT);

pinMode(d1_4, OUTPUT);

pinMode(d1_5, OUTPUT);

pinMode(d1_6, OUTPUT);

pinMode(d1_7, OUTPUT);

pinMode(d2_1, OUTPUT);

pinMode(d2_2, OUTPUT);

pinMode(d2_3, OUTPUT);

pinMode(d2_4, OUTPUT);

pinMode(d2_5, OUTPUT);

pinMode(d2_6, OUTPUT);

pinMode(d2_7, OUTPUT);

Apagar_dado1();

Apagar_dado2();

}


void loop(){

varpulsador=digitalRead(pulsador);

if(varpulsador==HIGH){

for(int i=0;i<=8;i++){

randomSeed(analogRead(A0));

randomNumber1=random(1,6);

randomSeed(analogRead(A1));

randomNumber2=random(1,6);

Apagar_dado1();

Apagar_dado2();

delay(150);

Encender_dado1();

Encender_dado2();

delay(150);

}

randomSeed(analogRead(A0));

randomNumber1=random(1,6);

Serial.println(randomNumber1);

Apagar_dado1();

Encender_dado1();

randomSeed(analogRead(A1));

randomNumber2=random(1,6);

Serial.println(randomNumber2);

Apagar_dado2();

Encender_dado2();

if(randomNumber1==randomNumber2)

{

for(int i=0;i<=4;i++){

Apagar_dado1();

Apagar_dado2();

delay(250);

Encender_dado1();

Encender_dado2();

delay(250);

}

}

delay(250);

}

}


void Apagar_dado1(){

digitalWrite(d1_1,LOW);

digitalWrite(d1_2,LOW);

digitalWrite(d1_3,LOW);

digitalWrite(d1_4,LOW);

digitalWrite(d1_5,LOW);

digitalWrite(d1_6,LOW);

digitalWrite(d1_7,LOW);

}


void Apagar_dado2(){

digitalWrite(d2_1,LOW);

digitalWrite(d2_2,LOW);

digitalWrite(d2_3,LOW);

digitalWrite(d2_4,LOW);

digitalWrite(d2_5,LOW);

digitalWrite(d2_6,LOW);

digitalWrite(d2_7,LOW);

}


void Encender_dado1(){

if (randomNumber1==1){

digitalWrite(d1_4,HIGH);

}

if (randomNumber1==2){

digitalWrite(d1_1,HIGH);

digitalWrite(d1_7,HIGH);

}

if (randomNumber1==3){

digitalWrite(d1_1,HIGH);

digitalWrite(d1_4,HIGH);

digitalWrite(d1_7,HIGH);

}

if (randomNumber1==4){

digitalWrite(d1_1,HIGH);

digitalWrite(d1_3,HIGH);

digitalWrite(d1_5,HIGH);

digitalWrite(d1_7,HIGH);

}

if (randomNumber1==5){

digitalWrite(d1_1,HIGH);

digitalWrite(d1_3,HIGH);

digitalWrite(d1_4,HIGH);

digitalWrite(d1_5,HIGH);

digitalWrite(d1_7,HIGH);

}

if (randomNumber1==6){

digitalWrite(d1_1,HIGH);

digitalWrite(d1_2,HIGH);

digitalWrite(d1_3,HIGH);

digitalWrite(d1_5,HIGH);

digitalWrite(d1_6,HIGH);

digitalWrite(d1_7,HIGH);

}

}


void Encender_dado2(){

if (randomNumber2==1){

digitalWrite(d2_4,HIGH);

}

if (randomNumber2==2){

digitalWrite(d2_1,HIGH);

digitalWrite(d2_7,HIGH);

}

if (randomNumber2==3){

digitalWrite(d2_1,HIGH);

digitalWrite(d2_4,HIGH);

digitalWrite(d2_7,HIGH);

}

if (randomNumber2==4){

digitalWrite(d2_1,HIGH);

digitalWrite(d2_3,HIGH);

digitalWrite(d2_5,HIGH);

digitalWrite(d2_7,HIGH);

}

if (randomNumber2==5){

digitalWrite(d2_1,HIGH);

digitalWrite(d2_3,HIGH);

digitalWrite(d2_4,HIGH);

digitalWrite(d2_5,HIGH);

digitalWrite(d2_7,HIGH);

}

if (randomNumber2==6){

digitalWrite(d2_1,HIGH);

digitalWrite(d2_2,HIGH);

digitalWrite(d2_3,HIGH);

digitalWrite(d2_5,HIGH);

digitalWrite(d2_6,HIGH);

digitalWrite(d2_7,HIGH);

}

}


 
 
 

Comentarios


Publicar: Blog2_Post

Formulario de suscripción

¡Gracias por tu mensaje!

3112111687

©2021 por Robotica, Impresion 3D y algo mas. Creada con Wix.com

bottom of page