Yosef Guevara Salamanca
/
cruzandoCalle
Juego de cruzar las calles, el jugador debe llegar hasta el otro punto para ganar
Diff: calle.cpp
- Revision:
- 1:18fff1390131
- Parent:
- 0:22386e919072
- Child:
- 2:1d19bdc7084e
--- a/calle.cpp Tue Oct 30 19:50:20 2018 +0000 +++ b/calle.cpp Tue Oct 30 21:13:48 2018 +0000 @@ -2,8 +2,15 @@ #include "avenidas.h" // Definicion de parametros de comunicacion +Serial pc(USBTX,USBRX); SPI deviceM(PB_15, PB_14, PB_13); DigitalOut ssel (PB_12); + +// Definiendo Botones + +DigitalIn pulsador_izq(A5); +DigitalIn pulsador_der(A4); + // Definicion de Funciones void sendSPI(); void inicializar_matriz(); @@ -11,6 +18,7 @@ // Definicion de Variables uint16_t* nivel; +uint16_t* jugador; float velocidad = 0.8; @@ -43,22 +51,60 @@ int main() { - + pc.baud(38400); inicializar_matriz(); nivel= AV_1; + jugador=player; while(1){ + +// realiza el corriemiento del vector hacia la izq. + if(pulsador_izq == 1){ + int izq = jugador[0]; + for(int i= 0; i<8;i++){ + jugador[i]=jugador[i+1]; + } + jugador[7] = izq; + } + + +// realiza el corrimeinto del juegador hacie la der. + if(pulsador_der == 1){ - for(int i= 1; i<=8;i++){ - sendSPI(i, nivel[i-1]); + int der = jugador[7]; + for(int i= 7; i>=0;i--){ + jugador[i]=jugador[i-1]; } - wait(velocidad); + jugador[0] = der; + } + +// mueve el jugador de posicion en pruebas + + if(pulsador_abj == 1){ + + int abj = 0; + for(int i= 0; i<8;i++){ + jugador[i]=jugador[i]>>abj; + } + abj++; + } + + +// El siguient ciclo realiza el desplazamiento de los vehiculos + int aux = nivel[0]; for(int i= 0; i<8;i++){ nivel[i]=nivel[i+1]; } nivel[7] = aux; + +// EL siguiente ciclo for realiza la impresion + + for(int i= 1; i<=8;i++){ + sendSPI(i, nivel[i-1]|jugador[i-1]); + } + wait(velocidad); }