Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //se definena la variable constante poscionPinX de tipo entero
- const int posicionPinX = 0;
- //se definena la variable posicionPinY intervalo de tipo entero
- const int posicionPinY = 1;
- //se define la variable valroX de tipo entero
- int valorX;
- //se define la variable valorY de tipo entero
- int valorY;
- //se define la variable x de tipo entero
- int x;
- //se define la variable y de tipo entero
- int y;
- //se definena la variable constante intervalo de tipo entero
- const int intervalo = 10;
- //se definena la variable inte intervaloReposo de tipo entero
- const int intervaloReposo = intervalo/2;
- //se definena la variable constante numeroDeBotones de tipo entero
- const int numeroDeBotones = 4;
- //se definena la variable constante butonPinDerecho de tipo entero
- const int butonPinDerecho = 3;
- //se definena la variable constante butonPinArriba de tipo entero
- const int butonPinArriba = 4;
- //se definena la variable constante butonPinAbajo de tipo entero
- const int butonPinAbajo = 5;
- //se definena la variable constante butonPinIzquierdode tipo entero
- const int butonPinIzquierdo = 6;
- //se definena el variable arreglo botones de tipo entero
- int botones[numeroDeBotones] = {butonPinDerecho, butonPinArriba, butonPinAbajo, butonPinIzquierdo};
- void setup(){
- for(int i = 0; i < numeroDeBotones; i++){
- //pines de salida
- pinMode(botones[i], INPUT);
- //valor alto al pin digital
- digitalWrite(botones[i], HIGH);
- }
- //comunicacion serial a 9600bps
- Serial.begin(9600);
- }
- void loop(){
- //valor de tensión en el pin analógico posicionPinX(A0)
- valorX = analogRead(posicionPinX);
- //se toma el valorX para la direccion x
- x = map(valorX,0,1024,0,intervalo);
- //valor de tensión en el pin analógico posicionPinY(A1)
- valorY = analogRead(posicionPinY);
- //se toma el valorY para la direccion y
- y = map(valorY,0,1024,0,intervalo);
- //si la palanca del Joystick no esta en reposo en la posicion x
- if(x > intervaloReposo || x < intervaloReposo){
- //escribe el identificador de la coordenada x
- Serial.write('x');
- //escribe el valor en x
- Serial.write(x);
- }
- //si la palanca del Joystick no esta en reposo en la posicion y
- if(y > intervaloReposo || y < intervaloReposo){
- //escribe el identificador de la coordenada y
- Serial.write('y');
- //escribe el valor y
- Serial.write(y);
- }
- for(int i = 0; i < numeroDeBotones; i++){
- //si hay evento de un boton del Joystick
- if(digitalRead(botones[i]) == 0){
- //escribe el identificador del boton
- Serial.write('b');
- //escribe el boton seleccionado
- //Boton derecho : 0
- //Boton arriba : 1
- //Boton abajo : 2
- //Boton izquierdo : 3
- Serial.write(i);
- delay(10);
- }
- }
- delay(20);
- }//se definena la variable constante poscionPinX de tipo entero
- const int posicionPinX = 0;
- //se definena la variable posicionPinY intervalo de tipo entero
- const int posicionPinY = 1;
- //se define la variable valroX de tipo entero
- int valorX;
- //se define la variable valorY de tipo entero
- int valorY;
- //se define la variable x de tipo entero
- int x;
- //se define la variable y de tipo entero
- int y;
- //se definena la variable constante intervalo de tipo entero
- const int intervalo = 10;
- //se definena la variable inte intervaloReposo de tipo entero
- const int intervaloReposo = intervalo/2;
- //se definena la variable constante numeroDeBotones de tipo entero
- const int numeroDeBotones = 4;
- //se definena la variable constante butonPinDerecho de tipo entero
- const int butonPinDerecho = 3;
- //se definena la variable constante butonPinArriba de tipo entero
- const int butonPinArriba = 4;
- //se definena la variable constante butonPinAbajo de tipo entero
- const int butonPinAbajo = 5;
- //se definena la variable constante butonPinIzquierdode tipo entero
- const int butonPinIzquierdo = 6;
- //se definena el variable arreglo botones de tipo entero
- int botones[numeroDeBotones] = {butonPinDerecho, butonPinArriba, butonPinAbajo, butonPinIzquierdo};
- void setup(){
- for(int i = 0; i < numeroDeBotones; i++){
- //pines de salida
- pinMode(botones[i], INPUT);
- //valor alto al pin digital
- digitalWrite(botones[i], HIGH);
- }
- //comunicacion serial a 9600bps
- Serial.begin(9600);
- }
- void loop(){
- //valor de tensión en el pin analógico posicionPinX(A0)
- valorX = analogRead(posicionPinX);
- //se toma el valorX para la direccion x
- x = map(valorX,0,1024,0,intervalo);
- //valor de tensión en el pin analógico posicionPinY(A1)
- valorY = analogRead(posicionPinY);
- //se toma el valorY para la direccion y
- y = map(valorY,0,1024,0,intervalo);
- //si la palanca del Joystick no esta en reposo en la posicion x
- if(x > intervaloReposo || x < intervaloReposo){
- //escribe el identificador de la coordenada x
- Serial.write('x');
- //escribe el valor en x
- Serial.write(x);
- }
- //si la palanca del Joystick no esta en reposo en la posicion y
- if(y > intervaloReposo || y < intervaloReposo){
- //escribe el identificador de la coordenada y
- Serial.write('y');
- //escribe el valor y
- Serial.write(y);
- }
- for(int i = 0; i < numeroDeBotones; i++){
- //si hay evento de un boton del Joystick
- if(digitalRead(botones[i]) == 0){
- //escribe el identificador del boton
- Serial.write('b');
- //escribe el boton seleccionado
- //Boton derecho : 0
- //Boton arriba : 1
- //Boton abajo : 2
- //Boton izquierdo : 3
- Serial.write(i);
- delay(10);
- }
- }
- delay(20);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement