t

Dependencies:   mbed wave_player mbed-rtos C12832_lcd 4DGL-uLCD-SE LCD_fonts SDFileSystem

Revision:
6:cd24147b5e50
Parent:
5:b2cf15651d4e
--- a/main.cpp	Wed Dec 04 21:06:43 2019 +0000
+++ b/main.cpp	Thu Dec 05 00:17:49 2019 +0000
@@ -2,6 +2,7 @@
 #include "SDFileSystem.h"
 #include "wave_player.h"
 #include "uLCD_4DGL.h"
+
 //setup some color objects in flash using const's
 
 #include "rtos.h"
@@ -11,6 +12,9 @@
 #include "stdio.h"
 #include "C12832_lcd.h"
 
+#include "bubbles.h"
+#include "songs.h"
+
 //class for 3 PWM color values for RGBLED
 class LEDColor
 {
@@ -98,15 +102,17 @@
 DigitalIn pb2(p19);
 AnalogOut DACout(p18);
 wave_player waver(&DACout);
+Thread thread1, thread2, thread3;
 
 // mutex to make the lcd lib thread safe
 Mutex lcd_mutex;
 int songnum = 1;
 AnalogIn joy_pot(p16);
+
 // Thread 1
 // print homescreen to LCD
 //new homescreen that doesn't have the flashing 
-void thread1(void const *args)
+void homescreen_thread()
 {
     while(true) {       // thread loop
         lcd_mutex.lock();
@@ -145,9 +151,10 @@
     }
 }
 
+// Thread 2
 //for song selection during homescreen
 
-void thread2(void const *args)
+void joystick_thread()
 {
    while(1){
             if ((joy_pot <= (1.4/3.3)) && songnum>1) {
@@ -165,7 +172,7 @@
 // Thread 3
 //pb1 is to select song
 //pb2 is to return to homescreen
-void thread3(void const *args)
+void pbcontrol_thread()
 {
     pb1.mode(PullUp);
     pb2.mode(PullUp);
@@ -186,270 +193,14 @@
 int main()
 {
         //timestamp in terms of seconds
-    int the_middle[62][5] = {2, 0, 1, 0, 0,
-                            3, 0, 1, 0, 0,
-                            4, 0, 1, 0, 0,
-                            5, 0, 1, 0, 0,
-                            6, 0, 0, 1, 0,
-                            7, 0, 0, 1, 0,
-                            8, 0, 0, 1, 0,
-                            9, 0, 0, 1, 0,
-                            10, 0, 0, 1, 0,
-                            11, 0, 0, 0, 1,
-                            12, 0, 0, 0, 1,
-                            13, 0, 0, 0, 1,
-                            15, 0, 0, 1, 1,
-                            16, 0, 0, 1, 1,
-                            17, 0, 0, 1, 1, 
-                            18, 0, 1, 1, 0,
-                            19, 0, 1, 1, 0,
-                            20, 0, 1, 1, 0,
-                            21, 0, 1, 1, 0,
-                            22, 0, 1, 1, 0,
-                            23, 0, 1, 1, 0,
-                            24, 0, 1, 1, 0,
-                            25, 0, 1, 1, 0,
-                            27, 0, 1, 0, 0,
-                            28, 0, 1, 0, 0,
-                            29, 0, 1, 0, 0,
-                            30, 0, 1, 0, 0,
-                            31, 0, 0, 1, 0,
-                            32, 0, 0, 1, 0,
-                            33, 0, 0, 1, 0,
-                            34, 0, 0, 1, 0,
-                            35, 0, 0, 1, 0,
-                            36, 0, 0, 1, 0,
-                            37, 0, 0, 0, 1,
-                            38, 0, 0, 0, 1,
-                            39, 0, 0, 0, 1,
-                            40, 0, 0, 0, 1,
-                            42, 0, 1, 1, 0,
-                            43, 0, 0, 1, 1,
-                            44, 0, 1, 1, 0,
-                            45, 0, 0, 1, 1,
-                            46, 0, 1, 1, 0,
-                            47, 0, 0, 1, 1,
-                            48, 0, 1, 1, 0,
-                            49, 0, 0, 1, 1,
-                            51, 0, 1, 1, 1,
-                            52, 0, 1, 1, 1, 
-                            53, 0, 1, 1, 1, 
-                            54, 0, 1, 1, 1,
-                            56, 0, 1, 0, 0,
-                            57, 0, 1, 0, 0,
-                            58, 0, 1, 0, 0,
-                            59, 0, 1, 0, 0,
-                            61, 0, 0, 1, 0,
-                            62, 0, 1, 1, 1,
-                            63, 0, 1, 1, 1,
-                            64, 0, 1, 1, 1,
-                            66, 0, 1, 1, 0,
-                            67, 0, 0, 1, 1,
-                            68, 0, 1, 1, 0,
-                            69, 0, 0, 1, 1,
-                            70, 0, 1, 1, 0};
     
-    int stacys_mom[70][5] = {1, 0, 1, 0, 0, 
-                                2, 0, 1, 0, 0, 
-                                3, 0, 1, 1, 0, 
-                                4, 0, 1, 0, 0,
-                                5, 0, 1, 0, 0,
-                                6, 0, 1, 1, 0, 
-                                8, 0, 0, 1, 0,
-                                9, 0, 0, 0, 1,
-                                10, 0, 1, 0, 0,
-                                11, 0, 0, 1, 0, 
-                                12, 0, 1, 1, 0, 
-                                13, 0, 1, 1, 0, 
-                                15, 0, 0, 1, 1,
-                                16, 0, 0, 1, 1,
-                                17, 0, 0, 1, 1,
-                                18, 0, 0, 1, 1,
-                                20, 0, 1, 0, 0,
-                                21, 0, 0, 1, 0,
-                                22, 0, 0, 0, 1,
-                                24, 0, 0, 1, 1,
-                                25, 0, 0, 1, 1,
-                                26, 0, 0, 1, 0,
-                                27, 0, 0, 1, 0,
-                                28, 0, 0, 0, 1,
-                                29, 0, 1, 0, 0,
-                                31, 0, 1, 1, 1,
-                                32, 0, 1, 0, 1,
-                                33, 0, 1, 0, 1,
-                                34, 0, 1, 0, 1,
-                                35, 0, 1, 0, 1,
-                                36, 0, 1, 0, 1,
-                                37, 0, 1, 0, 1,
-                                39, 0, 0, 1, 0,
-                                40, 0, 0, 1, 0,
-                                41, 0, 0, 1, 0,
-                                42, 0, 0, 1, 0,
-                                43, 0, 0, 0, 1,
-                                44, 0, 0, 0, 1,
-                                45, 0, 0, 1, 0,
-                                46, 0, 0, 1, 0,
-                                47, 0, 0, 1, 1,
-                                48, 0, 0, 1, 1,
-                                49, 0, 0, 1, 1,
-                                51, 0, 1, 0, 0,
-                                52, 0, 0, 1, 0,
-                                53, 0, 0, 0, 1,
-                                54, 0, 0, 1, 1,
-                                55, 0, 0, 1, 1,
-                                56, 0, 0, 1, 0,
-                                57, 0, 0, 1, 0,
-                                58, 0, 0, 1, 0,
-                                59, 0, 0, 1, 0,
-                                60, 0, 0, 1, 0,
-                                61, 0, 0, 1, 0,
-                                62, 0, 0, 1, 0,
-                                64, 0, 1, 0, 0,
-                                65, 0, 1, 0, 0,
-                                66, 0, 1, 0, 0,
-                                67, 0, 1, 0, 0,
-                                68, 0, 1, 0, 0,
-                                69, 0, 1, 0, 0,
-                                70, 0, 1, 0, 0,
-                                73, 0, 0, 1, 1,
-                                74, 0, 0, 1, 1,
-                                75, 0, 1, 0, 0,
-                                76, 0, 0, 1, 0,
-                                77, 0, 0, 0, 1,
-                                78, 0, 1, 0, 0,
-                                79, 0, 0, 1, 0,
-                                80, 0, 0, 0, 1};
-    
-    int sins[60][5] = {2, 0, 1, 0, 0,
-                        3, 0, 0, 1, 0,
-                        4, 0, 1, 0, 0,
-                        5, 0, 0, 1, 0,
-                        6, 0, 0, 0, 1,
-                        7, 0, 1, 0, 0,
-                        8, 0, 0, 0, 1,
-                        9, 0, 1, 0, 0,
-                        10, 0, 0, 0, 1,
-                        11, 0, 1, 1, 1,
-                        13, 0, 1, 0, 0,
-                        14, 0, 0, 1, 0,
-                        15, 0, 1, 0, 0,
-                        16, 0, 0, 1, 0,
-                        17, 0, 0, 1, 0,
-                        18, 0, 0, 1, 0,
-                        19, 0, 0, 1, 0,
-                        20, 0, 0, 1, 0,
-                        22, 0, 0, 0, 1,
-                        23, 0, 0, 1, 1,
-                        24, 0, 0, 0, 1,
-                        25, 0, 0, 1, 1,
-                        26, 0, 0, 0, 1,
-                        27, 0, 0, 1, 1,
-                        28, 0, 1, 0, 0,
-                        29, 0, 1, 1, 0,
-                        30, 0, 1, 0, 0,
-                        31, 0, 1, 1, 0,
-                        33, 0, 1, 0, 0,
-                        34, 0, 1, 0, 0,
-                        35, 0, 1, 0, 0,
-                        36, 0, 0, 1, 1,
-                        37, 0, 0, 1, 1,
-                        38, 0, 0, 1, 1,
-                        39, 0, 0, 1, 1,
-                        40, 0, 0, 1, 1,
-                        42, 0, 1, 1, 0,
-                        43, 0, 1, 1, 0,
-                        44, 0, 0, 1, 0,
-                        45, 0, 0, 1, 1,
-                        46, 0, 0, 1, 1,
-                        47, 0, 0, 1, 1,
-                        48, 0, 0, 1, 1,
-                        49, 0, 0, 1, 1,
-                        50, 0, 0, 1, 0,
-                        51, 0, 1, 1, 0,
-                        52, 0, 1, 1, 0,
-                        53, 0, 1, 1, 0,
-                        54, 0, 1, 1, 0,
-                        55, 0, 1, 1, 0,
-                        56, 0, 1, 0, 0,
-                        57, 0, 0, 1, 0,
-                        58, 0, 1, 0, 0,
-                        59, 0, 0, 1, 0,
-                        60, 0, 1, 0, 0,
-                        62, 0, 1, 1, 0,
-                        63, 0, 1, 1, 0,
-                        64, 0, 1, 1, 0,
-                        65, 0, 1, 1, 0,
-                        66, 0, 1, 1, 0};
-                        
-    int fireflies[58][5] = {
-        1, 0, 1, 0, 0,
-        2, 0, 0, 1, 0,
-        3, 0, 1, 0, 0,
-        4, 0, 0, 1, 0,
-        5, 0, 1, 0, 0,
-        6, 0, 0, 1, 0,
-        7, 0, 1, 0, 0,
-        8, 0, 0, 1, 0,
-        9, 0, 1, 0, 0,
-        10, 0, 0, 1, 0,
-        11, 0, 0, 0, 1,
-        12, 0, 0, 1, 0,
-        13, 0, 1, 0, 0,
-        14, 0, 0, 1, 0,
-        15, 0, 0, 0, 1,
-        16, 0, 1, 1, 0,
-        17, 0, 1, 1, 0,
-        18, 0, 0, 1, 1,
-        19, 0, 0, 1, 1,
-        21, 0, 0, 1, 0,
-        22, 0, 0, 1, 0,
-        23, 0, 0, 1, 0,
-        24, 0, 0, 1, 0,
-        25, 0, 1, 0, 0,
-        26, 0, 1, 0, 0,
-        27, 0, 0, 1, 0,
-        28, 0, 0, 1, 0,
-        29, 0, 0, 0, 1,
-        30, 0, 0, 0, 1,
-        32, 0, 1, 0, 0,
-        33, 0, 1, 0, 0,
-        34, 0, 0, 1, 0,
-        35, 0, 0, 1, 0,
-        36, 0, 0, 0, 1,
-        37, 0, 0, 0, 1,
-        38, 0, 0, 1, 0,
-        39, 0, 0, 1, 0,
-        40, 0, 1, 0, 0,
-        41, 0, 1, 0, 0,
-        43, 0, 1, 1, 1,
-        44, 0, 1, 1, 1,
-        45, 0, 1, 1, 1,
-        46, 0, 1, 1, 1,
-        47, 0, 1, 1, 0,
-        48, 0, 1, 1, 0,
-        49, 0, 0, 1, 1,
-        50, 0, 0, 1, 1,
-        51, 0, 0, 1, 1,
-        53, 0, 1, 1, 0,
-        54, 0, 1, 1, 0,
-        55, 0, 0, 1, 1,
-        56, 0, 1, 1, 0,
-        57, 0, 0, 1, 1,
-        59, 0, 1, 0, 0,
-        60, 0, 0, 1, 0,
-        61, 0, 0, 0, 1,
-        62, 0, 0, 1, 0,
-        63, 0, 1, 0, 0};
     //doesnt work yet, nee,d to ask hamblen
     uLCD.media_init();
     uLCD.set_sector_address(0x001D, 0x4C01);
     uLCD.display_image(0,0);
-//    t1.start(thread1);
-//   t2.start(thread2);
-//    t3.start(thread3);
-    Thread t1(thread1);
-    Thread t2(thread2);
-    Thread t3(thread3);
+    thread1.start(homescreen_thread);
+   thread2.start(joystick_thread);
+    thread3.start(pbcontrol_thread);
     //startup sound
     myRGBled = blue; //tested to make sure led works, we can use whatever color(s) here
     FILE *wave_file;