Gamepad2

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
eencae
Date:
Fri Jan 24 15:16:38 2020 +0000
Parent:
3:818317dbe8a5
Commit message:
Gamepad2

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
--- a/main.cpp	Wed Dec 20 13:06:03 2017 +0000
+++ b/main.cpp	Fri Jan 24 15:16:38 2020 +0000
@@ -1,5 +1,4 @@
 /*
-
 2645_FSM_Puffin
 
 Sample code from ELEC2645
@@ -7,26 +6,22 @@
 Demonstrates how to implement a puffin crossing using a FSM
 
 (c) Craig A. Evans, University of Leeds, Jan 2016
-
+Updated Janaury 2020 for Gamepad2
 */
 
 #include "mbed.h"
-
 // K64F on-board LEDs
-DigitalOut r_led(LED_RED);
-DigitalOut g_led(LED_GREEN);
-DigitalOut b_led(LED_BLUE);
+BusOut k64f_leds(LED_RED, LED_GREEN, LED_BLUE);
 
 // LEDs to display traffic light output
-// May need to change pins depending on which order you soldered the LEDs
 // LSB                       MSB
 // car - green,amber, red  pedestrian - green, red
-BusOut output(PTC2,PTA2,PTA1,PTD3,PTC3); // LED order suggested in notes
+BusOut output(PTC3,PTC2,PTA2,PTC11,PTA1); 
 
 // BusIn to read inputs simutaneously
 // camera (button A) , pedestrian button (button B)
 // LSB, MSB
-BusIn input(PTB9,PTD0);
+BusIn input(PTC7,PTC9);
 
 // struct for state
 struct State {
@@ -36,21 +31,18 @@
 };
 
 State fsm[4] = {
-    {0x13,5.0,{...,...,...,...}},  // 0 - cars stop, pedestrian walk               5 seconds
-    {...,2.0,{2,2,2,2}},  // 1 - cars get ready to go, pedestrian stop    2 seconds
-    {...,10.0,{...,...,...,...}}, // 2 - cars go, pedestrian stop                10 seconds
-    {...,2.0,{0,0,0,0}}   // 3 - cars get ready to stop, pedestrian stop  2 seconds
+    {0x..,5.0,{..,..,..,..}},  // 0 - cars stop, pedestrian walk               5 seconds
+    {0x..,2.0,{..,..,..,..}},  // 1 - cars get ready to go, pedestrian stop    2 seconds
+    {0x..,10.0,{..,..,..,..}}, // 2 - cars go, pedestrian stop                10 seconds
+    {0x..,2.0,{..,..,..,..}}   // 3 - cars get ready to stop, pedestrian stop  2 seconds
 };
 
 int main()
 {
-    // on-board LEDs are active-low, so set pin high to turn them off.
-    r_led = 1;
-    g_led = 1;
-    b_led = 1;
+    k64f_leds = 0b111;  // turn off K64F LEDs
     
-    // turn on internal pull-downs for buttons A and B
-    input.mode(PullDown);
+    // turn on internal pull-up for buttons A and B
+    input.mode(PullUp);
     
     int state = 2;  // start with cars green
 
--- a/mbed.bld	Wed Dec 20 13:06:03 2017 +0000
+++ b/mbed.bld	Fri Jan 24 15:16:38 2020 +0000
@@ -1,1 +1,1 @@
-http://mbed.org/users/mbed_official/code/mbed/builds/e7ca05fa8600
\ No newline at end of file
+https://os.mbed.com/users/mbed_official/code/mbed/builds/3a7713b1edbc
\ No newline at end of file