Show Posts
Pages: [1]
1  International / Software / Re: ayuda con envio y recepcion de datos con arduino on: November 22, 2012, 02:06:02 am
Quote
que parte no entendiste me gustaria que me dieran un ejemplo...

Como ya dije no pretendía ser borde ni maleducado, pero si utilizaras la búsqueda en lugar de ir a lo fácil, que es preguntar, habrías encontrado el ejemplo donde siempre ha estado, en la referencia:

http://arduino.cc/es/Serial/Read

@lunemesis a parte del Serial.read no te olvides repasar el concepto de "while loop" que es muy importante cuando se trabaja con Serial.

no es que lo haga a la manera fácil pero ya llevo casi un mes buscando pero no me había percado de que estaba en read() de las referencias de arduino de la convercion binaria y hexadecimal lo entiendo y comprendo pero lo que no se es como acomodarlo no llevo mucho tiempo manejando arduino y todavía algunos comandos me fallan ya que estoy aprendiendo el lenguaje C
2  International / Software / Re: ayuda con envio y recepcion de datos con arduino on: November 20, 2012, 11:20:09 pm
Lo primero que tienes que hacer es ir a la referencia y mirarte como funciona el método Serial y sus comandos, por que no puedes hacer un op=Serial.read en cada loop.

Lo segundo es que si no te enseñan como se hace y te dicen que código tienes que poner no aprenderas nunca. Es mejor que alguien preparado te explique como funcionan los números hexadecimales y binarios y como Arduino trabaja con ellos, luego seguro que la solución a tu problema se te ocurre a ti solo.

No pretendo ser borde, pero es como el proverbio chino ese de "si me das un pez comeré hoy, si me enseñas a pescar comeré todos los días".

Un saludo y suerte

que parte no entendiste me gustaria que me dieran un ejemplo y lo del op es para simplificar codigo perdón por no hacerlo igual que tu smiley
NOTA no quiero una explicación de como funciona el código hexadecimal y binario lo único que me gustaría es que me ayuden con el código en arduino
3  International / Software / ayuda con envio y recepcion de datos con arduino on: November 20, 2012, 01:33:07 am
hola amigos smiley-lol
bueno voy al grano lo que quiero hacer es que cuando presione las teclas I,D,S los led infrarrojos receptor y emisor, el emisor me mande una serie de pulsaciones para que el otro lo lea y me active un motor de 5 hilos pero no se como hacer el envió de y recepción de datos de esta forma e investigado pero ninguna de las formas me ayuda me gustaría que me dieran una ayuda o aunque sea un explicación con un ejemplo les dejo mi código(donde están los   "//_______" es donde debe ir el codigo)por lo que me dijeron tengo primero que convertir el código a binario en el  arduino después igualar pero no se como  hacerlo NOTA no quiero una explicación funciona el código hexadecimal y binario lo único que me gustaría es que me ayuden con el código en arduino

GRACIAS POR SU AYUDA

int motorPin1 = 8;
int motorPin2 = 9;
int motorPin3 = 10;
int motorPin4 = 11;
int ledEmisor = 1;
int ledReceptor = A1;
int delayTime = 1000;   
int contador = 25;
int Time = 1000;
int op, izq, der, RE1, RE2, RE3, res, st;
 
void setup(){
Serial.begin(9600);

Serial.println("Arduino Motor Control");
Serial.println("Girar Izquierda");
Serial.println("Girar Derecha");
Serial.println(res,HEX);} 
 
void loop(){

op = Serial.read();

pinMode(motorPin1, OUTPUT);
pinMode(motorPin2, OUTPUT);
pinMode(motorPin3, OUTPUT);
pinMode(motorPin4, OUTPUT);
pinMode(ledEmisor, OUTPUT);
pinMode(ledReceptor, INPUT);
     

digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, LOW);
delay(Time);
       
if(op == 105){
              digitalWrite(ledEmisor, HIGH);
              delay(Time);
              digitalWrite(ledEmisor, HIGH);
              delay(Time);
              digitalWrite(ledEmisor, LOW);
              delay(Time);
              digitalWrite(ledEmisor, HIGH);
              delay(Time);
                   
           //______________________________________________
             
             
              if(RE1 == izq){
             
                            digitalWrite(motorPin1, HIGH);                 
                            digitalWrite(motorPin2, LOW);
                            digitalWrite(motorPin3, LOW);
                            digitalWrite(motorPin4, LOW);
                            delay(delayTime);
                           
                            digitalWrite(motorPin1, LOW);
                            digitalWrite(motorPin2, HIGH);
                            digitalWrite(motorPin3, LOW);
                            digitalWrite(motorPin4, LOW);
                            delay(delayTime);
                           
                            digitalWrite(motorPin1, LOW);
                            digitalWrite(motorPin2, LOW);
                            digitalWrite(motorPin3, HIGH);
                            digitalWrite(motorPin4, LOW);
                            delay(delayTime);
                           
                            digitalWrite(motorPin1, LOW);
                            digitalWrite(motorPin2, LOW);
                            digitalWrite(motorPin3, LOW);
                            digitalWrite(motorPin4, HIGH);
                            delay(delayTime);
                                                    }
                        }

 
if(op == 100){
              digitalWrite(ledEmisor, HIGH);
              delay(Time);
              digitalWrite(ledEmisor, LOW);
              delay(Time);
              digitalWrite(ledEmisor, HIGH);
              delay(Time);
              digitalWrite(ledEmisor, HIGH);
              delay(Time);
               //______________________________________________

              if(RE2 == der){
                             digitalWrite(motorPin1, LOW);
                             digitalWrite(motorPin2, LOW);
                             digitalWrite(motorPin3, LOW);
                             digitalWrite(motorPin4, HIGH);
                           
                             delay(delayTime);
                             digitalWrite(motorPin1, LOW);
                             digitalWrite(motorPin2, LOW);
                             digitalWrite(motorPin3, HIGH);
                             digitalWrite(motorPin4, LOW);
                           
                             delay(delayTime);
                             digitalWrite(motorPin1, LOW);
                             digitalWrite(motorPin2, HIGH);
                             digitalWrite(motorPin3, LOW);
                             digitalWrite(motorPin4, LOW);
                             delay(delayTime);
                           
                             digitalWrite(motorPin1, HIGH);                 
                             digitalWrite(motorPin2, LOW);
                             digitalWrite(motorPin3, LOW);
                             digitalWrite(motorPin4, LOW);
                             delay(delayTime);

                         }

}

             
if(op == 115){
              digitalWrite(ledEmisor, HIGH);
              delay(Time);
              digitalWrite(ledEmisor, LOW);
              delay(Time);
              digitalWrite(ledEmisor, HIGH);
              delay(Time);
              digitalWrite(ledEmisor, HIGH);
              delay(Time);}
             
 //______________________________________________
 
              if(RE3 == st){
               
              digitalWrite(motorPin1, LOW);
              digitalWrite(motorPin2, LOW);
              digitalWrite(motorPin3, LOW);
              digitalWrite(motorPin4, LOW);
              delay(Time);}
             

              }
 






4  International / Software / ayuda porfavor arduino motor paso a paso ULN2803A on: November 12, 2012, 06:04:38 pm
tengo que hacer mover un motor paso a paso izquierda, derecha y stop presionando las teclas I.D y S, junto con Arduino uno y un puente Darlington ULN2803A pero no funciona, las salidas 8,9,10 y 11 están conectadas en las entradas 1,2,3 y 4.
y las salen en 18(1),17(2),16(3),15(4) tomando en cuenta esta imagen http://tinyurl.com/a7l33hg
hacia el motor de 5 hilos el cual 1 es la tierra
así se ve como esta conectado
http://tinyurl.com/awpwzdb
http://tinyurl.com/b224n5u
http://tinyurl.com/abq7f53
http://tinyurl.com/agtxxj3
http://tinyurl.com/bau4q6m

 int motorPin1 = 8;
 int motorPin2 = 9;
 int motorPin3 = 10;
 int motorPin4 = 11;
 int delayTime = 20;    
 int contador = 25;

 
void setup() {

  pinMode(motorPin1, OUTPUT);
  pinMode(motorPin2, OUTPUT);
  pinMode(motorPin3, OUTPUT);
  pinMode(motorPin4, OUTPUT);

  Serial.begin(9600);
  Serial.println("Arduino Motor Control");
  Serial.println("Girar Izquierda");
  Serial.println("Girar Derecha");
  Serial.println();
 
}
void izq(){
 
  if(Serial.read() == 105)
  
  {
  digitalWrite(motorPin1, HIGH);                
  digitalWrite(motorPin2, LOW);
  digitalWrite(motorPin3, LOW);
  digitalWrite(motorPin4, LOW);
  delay(delayTime);
  digitalWrite(motorPin1, LOW);
  digitalWrite(motorPin2, HIGH);
  digitalWrite(motorPin3, LOW);
  digitalWrite(motorPin4, LOW);
  delay(delayTime);
  digitalWrite(motorPin1, LOW);
  digitalWrite(motorPin2, LOW);
  digitalWrite(motorPin3, HIGH);
  digitalWrite(motorPin4, LOW);
  delay(delayTime);
  digitalWrite(motorPin1, LOW);
  digitalWrite(motorPin2, LOW);
  digitalWrite(motorPin3, LOW);
  digitalWrite(motorPin4, HIGH);
  delay(delayTime);
 }
}
void derecha() {
  
  if(Serial.read() == 100)
  {

  digitalWrite(motorPin1, LOW);                
  digitalWrite(motorPin2, LOW);
  digitalWrite(motorPin3, LOW);
  digitalWrite(motorPin4, HIGH);
  delay(delayTime);
  digitalWrite(motorPin1, LOW);
  digitalWrite(motorPin2, LOW);
  digitalWrite(motorPin3, HIGH);
  digitalWrite(motorPin4, LOW);
  delay(delayTime);
  digitalWrite(motorPin1, LOW);
  digitalWrite(motorPin2, HIGH);
  digitalWrite(motorPin3, LOW);
  digitalWrite(motorPin4, LOW);
  delay(delayTime);
  digitalWrite(motorPin1, HIGH);
  digitalWrite(motorPin2, LOW);
  digitalWrite(motorPin3, LOW);
  digitalWrite(motorPin4, LOW);
  delay(delayTime);
  }
}
void loop()
{
  derecha();
   delay(1000);
   izq();
   delay(1000);
  
}
Pages: [1]