![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
ECE 4180 Final Project MP3 player code
Dependencies: mbed mbed-rtos wave_player_appbd 4DGL-uLCD-SE SDFileSystem PinDetect
main.cpp@0:57a32b7102e8, 2021-12-08 (annotated)
- 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?
User | Revision | Line number | New 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 | } |