elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


  Mostrar Mensajes
Páginas: [1]
1  Seguridad Informática / Desafíos - Wargames / Re: 10 Adivinanzas o Acertijos... en: 7 Enero 2011, 13:02 pm
Son 2^6 posibilidades más 1. Todas las posibilidades con 6 digitos más una con el septimo. Por lo tanto: (2^6)+1 = 64+1 = 65

Me sale lo mismo pero yo lo he pensado en binario! jaja como si fueran bits jiji
2  Informática / Electrónica / Re: [problema] programacion para Arduino en: 29 Julio 2010, 13:24 pm
Tengo una duda:

En tu código se encuentra esto:

  void AddButtonPin (int pin){LedPin = pin;}
  void AddLedPin (int pin){ButtonPin = pin;}

¿Es correcto? Es que, sinceramente, no entiendo muy bien tu código.

Ups ese era el fallo, estaba del reves  :-[ lo e puesto bien y funciona gracias!! La próxima rebusco mucho mejor antes de postear, pero es que no lo veía, gracias!!


No entiendo nada el codigo.
-Podrias utilizar constantes int para asignar los pines asi no tenes que repetir en el código.
-No sabia que Arduino usaba clases.
-TODAS las otras funciones extras DEBEN estar debajo de loop en lo posible.
-Podrias explicar un poco mas que hace el code, si los leds se encienden como pulsadores o de otra manera.

La verdad es que no me explique para nada. Me explico ahora:
-El problema lo tenia en las contantes, que las asignaba con enteros pero no funcionaba, el problema era el que me a solucionado Tokes que ha visto la "incompatibilidad".
-Según tengo entendido el lenguaje de programación del arduino esta basado en C/C++ por lo tanto como en C++ se programa con clases (es lo que me han enseñado), pos lo he echo con clases y funciona ejje  :)
-Ok no lo sabia, no tengo mucha experiencia programando, estoy aprendiendo jeje
-Mas abajo te pongo el código un poco más arreglado, ya que con el problema que tenia era un poco lioso. El código en si no esta terminado, le falta mucho pero voy haciendo pruebas. Los botones aun no los utilizo, y los led se encienden durante 2 segundos cuando se llama a la función LedOn (). La función Reproduction () está aun incompleta le faltan bastante mas cosas. La finalidad del codigo mas arduino es hacer un simon dice , pero en plan casero jeje aunque tengo otro problemilla que aun no e empezado a "investigar", que es hacerlo aleatorio ejeje. Bueno aquí dejo el código:
Código:
class Button
{
  private:
  int ButtonPin;
  int LedPin;
  public:
  Button (int ledpin, int buttonpin);
  ~Button (void){}
  void AddButtonPin (int pin){ButtonPin = pin;}
  void AddLedPin (int pin){LedPin = pin;}
  void Reproduction (void);
  void LedOn(void);
};
Button::Button (int ledpin, int buttonpin)
{
  AddButtonPin (buttonpin);
  AddLedPin (ledpin);
  pinMode (ButtonPin,INPUT);
  pinMode (LedPin,OUTPUT);
  LedOn();
}
void Button::Reproduction(void)
{
  LedOn();
}
void Button::LedOn(void)
{
  digitalWrite (LedPin, HIGH);
  delay(2000);
  digitalWrite (LedPin,LOW);
}


void setup()
{

}

void loop ()
{
  Button rojo (2,4);
  Button verde(6,12) ;
  Button amarillo (5,10);

  rojo.LedOn();
  verde.LedOn();
  amarillo.LedOn();
  delay (8000);
}

3  Informática / Electrónica / Re: Un problema un poquillo raro ^^ en: 28 Julio 2010, 21:42 pm
Pues la verdad no tengo ni idea como puede ser jeje, las radios están muy lejos???
4  Informática / Electrónica / [problema] programacion para Arduino en: 28 Julio 2010, 21:25 pm
Hola! antes de nada gracias por intentar ayudar. Espero no equivocarme de lugar, ya que como se trata de un problema en el código de arduino no estoy muy seguro de que sea aquí, aunque el arduino es electrónica jeje

Bueno, aquí va mi problema. En mi arduino tengo tres leds y tres interruptores. Mi problema comienza cuando llamo a la función LedOn (funcion miembro del objeto Button), ya que no se porque no lee lo guardado en LedPin (dato miembro del objeto Button).

Aquí les dejo el código, si se necesita alguna aclaración de alguna función (para que la quiero) pídanla. Espero que me puedan ayudar! gracias!

Código:
class Button
{
  private:
  int ButtonPin;
  int LedPin;
  public:
  Button (void){}
  ~Button (void){}
  void ButtonAsing (int ledpin, int buttonpin);
  void AddButtonPin (int pin){LedPin = pin;}
  void AddLedPin (int pin){ButtonPin = pin;}
  void Reproduction (void);
  void LedOn(void);
};
void Button::ButtonAsing (int ledpin, int buttonpin)
{
  AddButtonPin (buttonpin);
  AddLedPin (ledpin);
}
void Button::Reproduction(void)
{
  LedOn();
}
void Button::LedOn(void)
{
  digitalWrite (LedPin, HIGH);
  delay(2000);
  digitalWrite (LedPin,LOW);
}


void setup()
{
  pinMode (4,INPUT);
  pinMode (2,OUTPUT);
    pinMode (12,INPUT);
  pinMode (6,OUTPUT);
    pinMode (10,INPUT);
  pinMode (5,OUTPUT);
}

void loop ()
{
  Button rojo ;
  Button verde ;
  Button amarillo ;

  rojo.ButtonAsing (2,4);
  verde.ButtonAsing (6,12);
  amarillo.ButtonAsing (5,10);

  rojo.LedOn();
  verde.LedOn();
  amarillo.LedOn();
  delay (8000);
}
5  Informática / Electrónica / Calculadora Arduino en: 26 Julio 2010, 21:52 pm
Hola! este es mi primer post de algo serio, y quiero compartirlo con vosotros. Me he animado a empezar a aprender electrónica con arduino y esto es lo que he conseguido hasta ahora. es una calculadora muy simple, tan simple que solo suma y resta jeje pero para empezar no esta mal no? Me gustaría que postrarais lo que veáis mejorable en cuanto a código.

En el arduino tengo montados únicamente una pantalla LCD de 16 pines y tres botones. La pantalla esta puesta tal y como aparece en la web official de arduino. y los botones en los pins 9,8,10.

Código:
#include <LiquidCrystal.h>
int buttonPin1 = 8;
int buttonPin2 = 9;
int buttonPin3 = 10;

int num1;
int num2;

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void valor (int * num);
int f_operacion (void);// 1 = "+"   0 = "-"


int f_operacion (void)
{
  int temp;
  temp = 1;
  delay(50);//para que no parpadee
  lcd.clear();
  lcd.setCursor (0,0);
  lcd.print ("escoja operacion:");
  lcd.setCursor(0,1);
  lcd.print("+");
  while (digitalRead(buttonPin3) == LOW)
  {
    if (digitalRead(buttonPin2)==HIGH)
    {
      lcd.clear();
      lcd.setCursor(0,1);
      delay(20);
     
      lcd.print("+");
      delay (200);
      temp = 1;
    }
    if (digitalRead(buttonPin1)==HIGH)
    {
      lcd.clear();
      lcd.setCursor(0,1);
      delay(20);
      lcd.print  ("-");
      delay(200);
      temp = 0;
    }
  }
  return (temp);
}

void setup() {
  lcd.begin(16, 2);
  lcd.print("Calculadora 1.0");
  delay(500);
  pinMode (buttonPin1,INPUT);
  pinMode (buttonPin2,INPUT);
  pinMode (buttonPin3,INPUT);
}


void valor (int *num)
{
  *num = 0;
  while (digitalRead(buttonPin3) == LOW)
  {
    delay(50);//para que no parpadee
    lcd.clear();
    lcd.setCursor (0,0);
    lcd.print ("inserte numero:");
    lcd.setCursor(0,1);
    lcd.print(*num,DEC);
    if (digitalRead(buttonPin2)==HIGH)
    {
      (*num)++;
      delay(200);//para que nos de tiempo de sumar solo uno
    }
        if (digitalRead(buttonPin1)==HIGH)
    {
      (*num)--;
      delay(200);
    }
  }

}

void loop() {
  int opt;
  valor (&num1);
  delay (200);//para que nos de tiempo de quitar el dedo
  opt = f_operacion ();
  delay (200);//para que nos de tiempo de quitar el dedo
  valor (&num2);
  delay(200);
  lcd.clear();
  while (digitalRead(buttonPin3)==LOW)
  {
    if (opt == 1)
    {
      lcd.setCursor(0,1);
      lcd.print(num1+num2);
    }
        if (opt == 0)
    {
      lcd.setCursor(0,1);
      lcd.print(num1-num2);
    }
  }
  delay(200);
}

6  Seguridad Informática / Desafíos - Wargames / Re: 10 Adivinanzas o Acertijos... en: 26 Julio 2010, 21:01 pm

Puede ser la respuesta 110?? ahora no tengo tiempo de explicar como lo he obtenido, esta tarde pongo, jeje

hahaha, es incorrecto... ;D

jajaja okok justo ahora mismo estaba pensando como explicarlo, me has quitado un trabajo peo me dejas la mosca!! a seguir pensando! jeje
7  Seguridad Informática / Desafíos - Wargames / Re: 10 Adivinanzas o Acertijos... en: 26 Julio 2010, 10:35 am
6. NUMEROS
De la lista de todos los numeros del 1 al 1,000,000 solo me quedo con aquellos numeros que se escriben con unos y ceros: 1, 10, 11, ..., etc. ¿Con cuantos numeros me quede?

Puede ser la respuesta 110?? ahora no tengo tiempo de explicar como lo he obtenido, esta tarde pongo, jeje
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines