Brahian Stiv Sanchez Giraldo / Mbed 2 deprecated tetrispon

Dependencies:   mbed

Committer:
cristianvillarraga
Date:
Sat Nov 17 04:44:57 2018 +0000
Revision:
2:15facba8b8b4
Parent:
1:ebfb091d5b63
Child:
3:8a8ff76e84bc
codigo mejorado

Who changed what in which revision?

UserRevisionLine numberNew contents of line
cristianvillarraga 1:ebfb091d5b63 1 #include "mbed.h"
cristianvillarraga 1:ebfb091d5b63 2 #ifndef funcion_comun
cristianvillarraga 1:ebfb091d5b63 3 #define funcion_comun
cristianvillarraga 1:ebfb091d5b63 4
cristianvillarraga 1:ebfb091d5b63 5 SPI deviceM(PB_15, PB_14, PB_13);//puertos usados para conectar la matriz
cristianvillarraga 1:ebfb091d5b63 6 DigitalOut ssel (PB_12);//puertos usados para conectar la matriz
cristianvillarraga 2:15facba8b8b4 7 AnalogIn vrx(A0);//puertos de entrada para lectura del joystick
cristianvillarraga 2:15facba8b8b4 8 AnalogIn vry(A1);//puertos de entrada para lectura del joystick
cristianvillarraga 2:15facba8b8b4 9
cristianvillarraga 2:15facba8b8b4 10 double mx;//variable donde se guarda los voltajes leidos
cristianvillarraga 2:15facba8b8b4 11 double my;//variable donde se guarda los voltajes leidos
cristianvillarraga 1:ebfb091d5b63 12
cristianvillarraga 1:ebfb091d5b63 13 void sendSPI(uint8_t d1, uint8_t d2)//envia datos a la tarjeta, cierra y abre puertos
cristianvillarraga 1:ebfb091d5b63 14 {
cristianvillarraga 1:ebfb091d5b63 15 deviceM.unlock();
cristianvillarraga 1:ebfb091d5b63 16 ssel=0;
cristianvillarraga 1:ebfb091d5b63 17 deviceM.write(d1);
cristianvillarraga 1:ebfb091d5b63 18 deviceM.write(d2);
cristianvillarraga 1:ebfb091d5b63 19 ssel=1;
cristianvillarraga 1:ebfb091d5b63 20 deviceM.lock();
cristianvillarraga 1:ebfb091d5b63 21 }
cristianvillarraga 1:ebfb091d5b63 22
cristianvillarraga 1:ebfb091d5b63 23 void test() //Test
cristianvillarraga 1:ebfb091d5b63 24 {
cristianvillarraga 1:ebfb091d5b63 25 sendSPI(0x09,0); //No decodificacion
cristianvillarraga 1:ebfb091d5b63 26 sendSPI(0x0B,0x07); //Usa 8 leds
cristianvillarraga 1:ebfb091d5b63 27 sendSPI(0x0C,1); //No se apaga
cristianvillarraga 1:ebfb091d5b63 28 sendSPI(0x0A,0xe);
cristianvillarraga 1:ebfb091d5b63 29 for (int i=0;i<2;i++)
cristianvillarraga 1:ebfb091d5b63 30 {
cristianvillarraga 1:ebfb091d5b63 31 sendSPI(0x0F,1);
cristianvillarraga 1:ebfb091d5b63 32 wait (0.1);
cristianvillarraga 1:ebfb091d5b63 33 sendSPI(0x0f,0);
cristianvillarraga 1:ebfb091d5b63 34 wait (0.1);
cristianvillarraga 1:ebfb091d5b63 35 }
cristianvillarraga 1:ebfb091d5b63 36
cristianvillarraga 1:ebfb091d5b63 37 }
cristianvillarraga 1:ebfb091d5b63 38 void borrar() //borra toda la matriz;
cristianvillarraga 1:ebfb091d5b63 39 {
cristianvillarraga 1:ebfb091d5b63 40 for(int i=0;i<=8;i++)//contador para recorrer posiciones
cristianvillarraga 1:ebfb091d5b63 41 {
cristianvillarraga 1:ebfb091d5b63 42 sendSPI(0x0+i,0x00);//recorre bit por bit colocando solo 0
cristianvillarraga 1:ebfb091d5b63 43 }
cristianvillarraga 2:15facba8b8b4 44 }
cristianvillarraga 2:15facba8b8b4 45 void analogo()//lee los voltajes generados por el joystick, los escala, e imprime dicho valor
cristianvillarraga 2:15facba8b8b4 46 {
cristianvillarraga 2:15facba8b8b4 47 mx=vrx.read();//lectura del volytaje en el eje x
cristianvillarraga 2:15facba8b8b4 48 my=vry.read();//lectura del voltaje en el eje y
cristianvillarraga 2:15facba8b8b4 49 }
cristianvillarraga 1:ebfb091d5b63 50 #endif