Za liniju

Dependents:   Lilnija_29012017

Committer:
mario_meh
Date:
Wed Nov 22 08:51:20 2017 +0000
Revision:
2:bdd4ee83ec25
Parent:
0:bd9f3303564e
reserved

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mario_meh 2:bdd4ee83ec25 1 /** Projektiranje ugradbenih računalnih sustava
mario_meh 2:bdd4ee83ec25 2 * Default metoda za joystick X i Y os
mario_meh 2:bdd4ee83ec25 3 * @author: mario_meh
mario_meh 2:bdd4ee83ec25 4 * @code
mario_meh 2:bdd4ee83ec25 5 * #include "mbed.h"
mario_meh 2:bdd4ee83ec25 6 * #include "joystick.h"
mario_meh 2:bdd4ee83ec25 7 *
mario_meh 2:bdd4ee83ec25 8 * JoysKompas *data = new JoysKompas;
mario_meh 2:bdd4ee83ec25 9 * Joystick *joys = new Joystick(data);
mario_meh 2:bdd4ee83ec25 10 * joys->YEnable();
mario_meh 2:bdd4ee83ec25 11 *
mario_meh 2:bdd4ee83ec25 12 * while(1) {
mario_meh 2:bdd4ee83ec25 13 * switch(data->vertikala) {
mario_meh 2:bdd4ee83ec25 14 * case 0:
mario_meh 2:bdd4ee83ec25 15 * serial.printf("Gore: %i\r\n", data->vertikala);
mario_meh 2:bdd4ee83ec25 16 * t_y0 = 0;
mario_meh 2:bdd4ee83ec25 17 * break;
mario_meh 2:bdd4ee83ec25 18 * case 1:
mario_meh 2:bdd4ee83ec25 19 * serial.printf("Dolje: %i\r\n", data->vertikala);
mario_meh 2:bdd4ee83ec25 20 * t_y1 = 0;
mario_meh 2:bdd4ee83ec25 21 * break;
mario_meh 2:bdd4ee83ec25 22 * }
mario_meh 2:bdd4ee83ec25 23 *
mario_meh 2:bdd4ee83ec25 24 *}
mario_meh 2:bdd4ee83ec25 25 *
mario_meh 2:bdd4ee83ec25 26 * @endcode
mario_meh 2:bdd4ee83ec25 27 */
mario_meh 0:bd9f3303564e 28 #include "mbed.h"
mario_meh 2:bdd4ee83ec25 29 #include "joystick.h"
mario_meh 0:bd9f3303564e 30
mario_meh 2:bdd4ee83ec25 31 bool yRadi = false;
mario_meh 2:bdd4ee83ec25 32 volatile int y_i = 0;
mario_meh 0:bd9f3303564e 33
mario_meh 2:bdd4ee83ec25 34 int y_flag = false;
mario_meh 2:bdd4ee83ec25 35 int x_flag = false;
mario_meh 2:bdd4ee83ec25 36
mario_meh 2:bdd4ee83ec25 37 Joystick::Joystick(JoysKompas *Data) : _x(PTB0), _y(PTB1), y_enable(Data)
mario_meh 2:bdd4ee83ec25 38 // PTB0 | PTB1
mario_meh 2:bdd4ee83ec25 39 {
mario_meh 0:bd9f3303564e 40 }
mario_meh 0:bd9f3303564e 41
mario_meh 2:bdd4ee83ec25 42 void Joystick::YEnable() {
mario_meh 2:bdd4ee83ec25 43 y_ticker.attach(this, &Joystick::YStatus, 1);
mario_meh 2:bdd4ee83ec25 44 }
mario_meh 2:bdd4ee83ec25 45
mario_meh 2:bdd4ee83ec25 46 void Joystick::YDisable() {
mario_meh 2:bdd4ee83ec25 47 y_ticker.detach();
mario_meh 0:bd9f3303564e 48 }
mario_meh 0:bd9f3303564e 49
mario_meh 2:bdd4ee83ec25 50 void Joystick::YStatus() {
mario_meh 0:bd9f3303564e 51 if(_x.read() < 0.022222222) {
mario_meh 2:bdd4ee83ec25 52 y_enable->horizontala = Lijevo;
mario_meh 0:bd9f3303564e 53 } else if(_x.read() > 0.9888888) {
mario_meh 2:bdd4ee83ec25 54 y_enable->horizontala = Desno;
mario_meh 2:bdd4ee83ec25 55 } else if(_y.read() < 0.022222222) {
mario_meh 2:bdd4ee83ec25 56 y_enable->vertikala = Dolje;
mario_meh 2:bdd4ee83ec25 57 } else if(_y.read() > 0.9888888) {
mario_meh 2:bdd4ee83ec25 58 y_enable->vertikala = Gore;
mario_meh 0:bd9f3303564e 59 }
mario_meh 0:bd9f3303564e 60 }