Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: SDFileSystem mbed-rtos mbed wave_player
main.cpp@0:47321458789d, 2022-10-14 (annotated)
- Committer:
- emanuel22e
- Date:
- Fri Oct 14 19:33:05 2022 +0000
- Revision:
- 0:47321458789d
- Child:
- 1:4fd1a4e54648
init
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| emanuel22e | 0:47321458789d | 1 | #include "mbed.h" |
| emanuel22e | 0:47321458789d | 2 | #include "rtos.h" |
| emanuel22e | 0:47321458789d | 3 | #include "wave_player.h" |
| emanuel22e | 0:47321458789d | 4 | #include "SDFileSystem.h" |
| emanuel22e | 0:47321458789d | 5 | SDFileSystem sd(p5, p6, p7, p8, "sd"); |
| emanuel22e | 0:47321458789d | 6 | PwmOut red(p21); |
| emanuel22e | 0:47321458789d | 7 | PwmOut green(p22); |
| emanuel22e | 0:47321458789d | 8 | PwmOut blue(p23); |
| emanuel22e | 0:47321458789d | 9 | AnalogOut speaker(p18); |
| emanuel22e | 0:47321458789d | 10 | wave_player waver(&speaker); |
| emanuel22e | 0:47321458789d | 11 | Thread thread1; |
| emanuel22e | 0:47321458789d | 12 | Thread thread2; |
| emanuel22e | 0:47321458789d | 13 | void t1() { |
| emanuel22e | 0:47321458789d | 14 | red = 0; |
| emanuel22e | 0:47321458789d | 15 | green = 0; |
| emanuel22e | 0:47321458789d | 16 | blue = 0; |
| emanuel22e | 0:47321458789d | 17 | while (1) { |
| emanuel22e | 0:47321458789d | 18 | red = 1; |
| emanuel22e | 0:47321458789d | 19 | green = 0; |
| emanuel22e | 0:47321458789d | 20 | blue = 0; |
| emanuel22e | 0:47321458789d | 21 | Thread::wait(300); |
| emanuel22e | 0:47321458789d | 22 | red = 0; |
| emanuel22e | 0:47321458789d | 23 | green = 1; |
| emanuel22e | 0:47321458789d | 24 | blue = 0; |
| emanuel22e | 0:47321458789d | 25 | Thread::wait(300); |
| emanuel22e | 0:47321458789d | 26 | red = 0; |
| emanuel22e | 0:47321458789d | 27 | green = 0; |
| emanuel22e | 0:47321458789d | 28 | blue = 1; |
| emanuel22e | 0:47321458789d | 29 | Thread::wait(300); |
| emanuel22e | 0:47321458789d | 30 | |
| emanuel22e | 0:47321458789d | 31 | } |
| emanuel22e | 0:47321458789d | 32 | void t2() { |
| emanuel22e | 0:47321458789d | 33 | FILE *wave_file; |
| emanuel22e | 0:47321458789d | 34 | //open wav file and play it |
| emanuel22e | 0:47321458789d | 35 | wave_file=fopen("/sd/thread_sound.wav","r"); |
| emanuel22e | 0:47321458789d | 36 | waver.play(wave_file); |
| emanuel22e | 0:47321458789d | 37 | fclose(wave_file); |
| emanuel22e | 0:47321458789d | 38 | //end of program |
| emanuel22e | 0:47321458789d | 39 | Thread::wait(500); |
| emanuel22e | 0:47321458789d | 40 | } |
| emanuel22e | 0:47321458789d | 41 | |
| emanuel22e | 0:47321458789d | 42 | int main() { |
| emanuel22e | 0:47321458789d | 43 | thread1.start(t1); |
| emanuel22e | 0:47321458789d | 44 | thread2.start(t2); |
| emanuel22e | 0:47321458789d | 45 | while(1) { |
| emanuel22e | 0:47321458789d | 46 | |
| emanuel22e | 0:47321458789d | 47 | } |
| emanuel22e | 0:47321458789d | 48 | } |