Part One of my Project Course. Implementation of simple I/O and a custom defined protocol over UDP/IP.

Dependencies:   C12832 LM75B mbed EthernetInterface mbed-rtos

Committer:
bertgereels
Date:
Fri Mar 23 13:42:13 2018 +0000
Revision:
3:538e17979246
Parent:
2:6bfe732ba6bc
Cleared response array before constructing ack.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bertgereels 1:b5c534165dfe 1 #include "selection.h"
bertgereels 1:b5c534165dfe 2 #include "mbed.h"
bertgereels 1:b5c534165dfe 3
bertgereels 1:b5c534165dfe 4 #pragma once
bertgereels 1:b5c534165dfe 5
bertgereels 1:b5c534165dfe 6
bertgereels 1:b5c534165dfe 7 namespace ProjectOne{
bertgereels 1:b5c534165dfe 8
bertgereels 1:b5c534165dfe 9 Selection::Selection(PinName firstPin, PinName secondPin, PinName thirdPin, PinName fourthPin, PinName fifthPin) : joy(firstPin,secondPin,thirdPin,fourthPin,fifthPin)
bertgereels 1:b5c534165dfe 10 {
bertgereels 1:b5c534165dfe 11
bertgereels 1:b5c534165dfe 12 }
bertgereels 1:b5c534165dfe 13
bertgereels 1:b5c534165dfe 14 string Selection::determineMode(void){
bertgereels 1:b5c534165dfe 15 printf("Select desired operating mode\r\n");
bertgereels 2:6bfe732ba6bc 16 printf("Confirm by pressing down joystick\r\n");
bertgereels 1:b5c534165dfe 17 printf("Up = master, Down = slave\r\n");
bertgereels 1:b5c534165dfe 18 string selected_mode = "";
bertgereels 1:b5c534165dfe 19 while(joy.read() != 1){
bertgereels 1:b5c534165dfe 20 if(joy.read() == 2){
bertgereels 1:b5c534165dfe 21 selected_mode = "master";
bertgereels 1:b5c534165dfe 22 printf("Current mode is: '%s'\r\n", selected_mode.c_str());
bertgereels 1:b5c534165dfe 23 }
bertgereels 1:b5c534165dfe 24 if(joy.read() == 4){
bertgereels 1:b5c534165dfe 25 selected_mode = "slave";
bertgereels 1:b5c534165dfe 26 printf("Current mode is: '%s'\r\n", selected_mode.c_str());
bertgereels 1:b5c534165dfe 27 }
bertgereels 1:b5c534165dfe 28 wait(0.5);
bertgereels 1:b5c534165dfe 29 }
bertgereels 1:b5c534165dfe 30 if(joy.read() == 1){
bertgereels 1:b5c534165dfe 31 return selected_mode;
bertgereels 1:b5c534165dfe 32 }
bertgereels 1:b5c534165dfe 33 }
bertgereels 1:b5c534165dfe 34
bertgereels 1:b5c534165dfe 35 int Selection::determineId(void){
bertgereels 1:b5c534165dfe 36 wait(1);
bertgereels 1:b5c534165dfe 37 int selected_id = 100;
bertgereels 2:6bfe732ba6bc 38 printf("Select desired id, range: 100-110, standard = 100\r\n");
bertgereels 2:6bfe732ba6bc 39 printf("Left = decrease, Right = increase\r\n");
bertgereels 1:b5c534165dfe 40 while(joy.read() != 1){
bertgereels 1:b5c534165dfe 41 if(joy.read() == 8){
bertgereels 1:b5c534165dfe 42 if(selected_id <= 110 && selected_id > 100){
bertgereels 1:b5c534165dfe 43 selected_id--;
bertgereels 1:b5c534165dfe 44 printf("Current id is: '%d'\r\n", selected_id);
bertgereels 1:b5c534165dfe 45 }
bertgereels 1:b5c534165dfe 46 }
bertgereels 1:b5c534165dfe 47 if(joy.read() == 16){
bertgereels 1:b5c534165dfe 48 if(selected_id >= 100 && selected_id < 110){
bertgereels 1:b5c534165dfe 49 selected_id++;
bertgereels 1:b5c534165dfe 50 printf("Current id is: '%d'\r\n", selected_id);
bertgereels 1:b5c534165dfe 51 }
bertgereels 1:b5c534165dfe 52 }
bertgereels 1:b5c534165dfe 53 wait(0.5);
bertgereels 1:b5c534165dfe 54 }
bertgereels 1:b5c534165dfe 55 if(joy.read() == 1){
bertgereels 1:b5c534165dfe 56 return selected_id;
bertgereels 1:b5c534165dfe 57 }
bertgereels 1:b5c534165dfe 58 }
bertgereels 1:b5c534165dfe 59
bertgereels 1:b5c534165dfe 60 }