ECE 4180 Final Project MP3 player code

Dependencies:   mbed mbed-rtos wave_player_appbd 4DGL-uLCD-SE SDFileSystem PinDetect

Committer:
lfink6
Date:
Wed Dec 08 17:08:52 2021 +0000
Revision:
0:57a32b7102e8
Child:
1:481169ca05e0
first revision; ;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lfink6 0:57a32b7102e8 1 #include "mbed.h"
lfink6 0:57a32b7102e8 2 #include "rtos.h"
lfink6 0:57a32b7102e8 3 #include "SDFileSystem.h"
lfink6 0:57a32b7102e8 4 #include "uLCD_4DGL.h"
lfink6 0:57a32b7102e8 5 #include "wave_player.h"
lfink6 0:57a32b7102e8 6 #include "LSM9DS1.h"
lfink6 0:57a32b7102e8 7
lfink6 0:57a32b7102e8 8 DigitalOut myled(LED1);
lfink6 0:57a32b7102e8 9 Serial blue(p28,p27);
lfink6 0:57a32b7102e8 10 uLCD_4DGL uLCD(p13,p14,p11);
lfink6 0:57a32b7102e8 11 SDFileSystem sd(p5, p6, p7, p8, "sd");
lfink6 0:57a32b7102e8 12 LSM9DS1 imu(p9, p10, 0xD6, 0x3C);
lfink6 0:57a32b7102e8 13
lfink6 0:57a32b7102e8 14 class microphone
lfink6 0:57a32b7102e8 15 {
lfink6 0:57a32b7102e8 16 public :
lfink6 0:57a32b7102e8 17 microphone(PinName pin);
lfink6 0:57a32b7102e8 18 float read();
lfink6 0:57a32b7102e8 19 operator float ();
lfink6 0:57a32b7102e8 20 private :
lfink6 0:57a32b7102e8 21 AnalogIn _pin;
lfink6 0:57a32b7102e8 22 };
lfink6 0:57a32b7102e8 23 microphone::microphone (PinName pin):
lfink6 0:57a32b7102e8 24 _pin(pin)
lfink6 0:57a32b7102e8 25 {
lfink6 0:57a32b7102e8 26 }
lfink6 0:57a32b7102e8 27 float microphone::read()
lfink6 0:57a32b7102e8 28 {
lfink6 0:57a32b7102e8 29 return _pin.read();
lfink6 0:57a32b7102e8 30 }
lfink6 0:57a32b7102e8 31 inline microphone::operator float ()
lfink6 0:57a32b7102e8 32 {
lfink6 0:57a32b7102e8 33 return _pin.read();
lfink6 0:57a32b7102e8 34 }
lfink6 0:57a32b7102e8 35
lfink6 0:57a32b7102e8 36 microphone mymicrophone(p16);
lfink6 0:57a32b7102e8 37
lfink6 0:57a32b7102e8 38
lfink6 0:57a32b7102e8 39 int main() {
lfink6 0:57a32b7102e8 40 imu.begin();
lfink6 0:57a32b7102e8 41 if (!imu.begin()) {
lfink6 0:57a32b7102e8 42 //set fail flag for imu here
lfink6 0:57a32b7102e8 43 }
lfink6 0:57a32b7102e8 44 imu.calibrate();
lfink6 0:57a32b7102e8 45
lfink6 0:57a32b7102e8 46 while(1) {
lfink6 0:57a32b7102e8 47
lfink6 0:57a32b7102e8 48 myled = 1;
lfink6 0:57a32b7102e8 49 wait(0.2);
lfink6 0:57a32b7102e8 50 myled = 0;
lfink6 0:57a32b7102e8 51 wait(0.2);
lfink6 0:57a32b7102e8 52 }
lfink6 0:57a32b7102e8 53 }