![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
IOT Cooler that has an integrated MP3 Player attached
Dependencies: 4DGL-uLCD-SE PinDetect SDFileSystem mbed wave_player
WavDis.cpp@0:16db2db8886d, 2015-05-01 (annotated)
- Committer:
- anevil14
- Date:
- Fri May 01 16:52:11 2015 +0000
- Revision:
- 0:16db2db8886d
IOT Cooler Code
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
anevil14 | 0:16db2db8886d | 1 | #include "WavDis.h" |
anevil14 | 0:16db2db8886d | 2 | |
anevil14 | 0:16db2db8886d | 3 | void WavDis::Update() |
anevil14 | 0:16db2db8886d | 4 | { |
anevil14 | 0:16db2db8886d | 5 | UpdateLEDs(); |
anevil14 | 0:16db2db8886d | 6 | |
anevil14 | 0:16db2db8886d | 7 | string s = ""; |
anevil14 | 0:16db2db8886d | 8 | |
anevil14 | 0:16db2db8886d | 9 | switch (currentState) |
anevil14 | 0:16db2db8886d | 10 | { |
anevil14 | 0:16db2db8886d | 11 | case stop: |
anevil14 | 0:16db2db8886d | 12 | s = currentSong.substr(0,(currentSong.size() - 4)); |
anevil14 | 0:16db2db8886d | 13 | //FirstLine |
anevil14 | 0:16db2db8886d | 14 | if (screen_lock == false) { |
anevil14 | 0:16db2db8886d | 15 | screen_lock = true; |
anevil14 | 0:16db2db8886d | 16 | lcd.text_width(1.5); //4X size text |
anevil14 | 0:16db2db8886d | 17 | lcd.text_height(1.5); |
anevil14 | 0:16db2db8886d | 18 | lcd.color(GREEN); |
anevil14 | 0:16db2db8886d | 19 | lcd.locate(0,1); |
anevil14 | 0:16db2db8886d | 20 | lcd.printf("%s ", s.c_str()); |
anevil14 | 0:16db2db8886d | 21 | //SecondLine |
anevil14 | 0:16db2db8886d | 22 | lcd.locate(0,2); |
anevil14 | 0:16db2db8886d | 23 | lcd.printf("Stopped "); |
anevil14 | 0:16db2db8886d | 24 | screen_lock = false; |
anevil14 | 0:16db2db8886d | 25 | } |
anevil14 | 0:16db2db8886d | 26 | break; |
anevil14 | 0:16db2db8886d | 27 | case play_state: |
anevil14 | 0:16db2db8886d | 28 | s = currentSong.substr(0,(currentSong.size() - 4)); |
anevil14 | 0:16db2db8886d | 29 | //FirstLine |
anevil14 | 0:16db2db8886d | 30 | if (screen_lock == false) { |
anevil14 | 0:16db2db8886d | 31 | screen_lock = true; |
anevil14 | 0:16db2db8886d | 32 | lcd.text_width(1.5); //4X size text |
anevil14 | 0:16db2db8886d | 33 | lcd.text_height(1.5); |
anevil14 | 0:16db2db8886d | 34 | lcd.color(GREEN); |
anevil14 | 0:16db2db8886d | 35 | lcd.locate(0,1); |
anevil14 | 0:16db2db8886d | 36 | lcd.printf("%s ", s.c_str()); |
anevil14 | 0:16db2db8886d | 37 | //SecondLine |
anevil14 | 0:16db2db8886d | 38 | lcd.locate(0,2); |
anevil14 | 0:16db2db8886d | 39 | lcd.printf("Now Playing"); |
anevil14 | 0:16db2db8886d | 40 | screen_lock = false; |
anevil14 | 0:16db2db8886d | 41 | } |
anevil14 | 0:16db2db8886d | 42 | break; |
anevil14 | 0:16db2db8886d | 43 | case Need_SD: |
anevil14 | 0:16db2db8886d | 44 | lcd.locate(0,0); |
anevil14 | 0:16db2db8886d | 45 | lcd.printf("Insert SD Card"); |
anevil14 | 0:16db2db8886d | 46 | break; |
anevil14 | 0:16db2db8886d | 47 | } |
anevil14 | 0:16db2db8886d | 48 | } |
anevil14 | 0:16db2db8886d | 49 | |
anevil14 | 0:16db2db8886d | 50 | void WavDis::UpdateTemp(float temp) { |
anevil14 | 0:16db2db8886d | 51 | if (screen_lock == false) { |
anevil14 | 0:16db2db8886d | 52 | screen_lock = true; |
anevil14 | 0:16db2db8886d | 53 | lcd.text_width(1.5); //4X size text |
anevil14 | 0:16db2db8886d | 54 | lcd.text_height(1.5); |
anevil14 | 0:16db2db8886d | 55 | lcd.color(WHITE); |
anevil14 | 0:16db2db8886d | 56 | lcd.locate(0,7); |
anevil14 | 0:16db2db8886d | 57 | if (temp < 60.00) { |
anevil14 | 0:16db2db8886d | 58 | lcd.filled_circle(60, 100, 20, BLUE); |
anevil14 | 0:16db2db8886d | 59 | //lcd.locate(0,8); |
anevil14 | 0:16db2db8886d | 60 | lcd.printf("Temperature: \n%.2f", temp); |
anevil14 | 0:16db2db8886d | 61 | } else if (temp >= 60.00) { |
anevil14 | 0:16db2db8886d | 62 | lcd.filled_circle(60, 100, 20, RED); |
anevil14 | 0:16db2db8886d | 63 | //lcd.locate(0,8); |
anevil14 | 0:16db2db8886d | 64 | lcd.printf("Temperature: \n%.2f", temp); |
anevil14 | 0:16db2db8886d | 65 | } |
anevil14 | 0:16db2db8886d | 66 | screen_lock = false; |
anevil14 | 0:16db2db8886d | 67 | } |
anevil14 | 0:16db2db8886d | 68 | return; |
anevil14 | 0:16db2db8886d | 69 | } |
anevil14 | 0:16db2db8886d | 70 | |
anevil14 | 0:16db2db8886d | 71 | void WavDis::UpdateSong(string songName) |
anevil14 | 0:16db2db8886d | 72 | { |
anevil14 | 0:16db2db8886d | 73 | currentSong = songName; |
anevil14 | 0:16db2db8886d | 74 | Update(); |
anevil14 | 0:16db2db8886d | 75 | } |
anevil14 | 0:16db2db8886d | 76 | |
anevil14 | 0:16db2db8886d | 77 | void WavDis::UpdateState(SystemState state) |
anevil14 | 0:16db2db8886d | 78 | { |
anevil14 | 0:16db2db8886d | 79 | currentState = state; |
anevil14 | 0:16db2db8886d | 80 | Update(); |
anevil14 | 0:16db2db8886d | 81 | } |
anevil14 | 0:16db2db8886d | 82 | |
anevil14 | 0:16db2db8886d | 83 | void WavDis::UpdateVolume(int volume) |
anevil14 | 0:16db2db8886d | 84 | { |
anevil14 | 0:16db2db8886d | 85 | if (screen_lock == false) { |
anevil14 | 0:16db2db8886d | 86 | screen_lock = true; |
anevil14 | 0:16db2db8886d | 87 | lcd.text_width(1); //4X size text |
anevil14 | 0:16db2db8886d | 88 | lcd.text_height(1); |
anevil14 | 0:16db2db8886d | 89 | lcd.color(GREEN); |
anevil14 | 0:16db2db8886d | 90 | lcd.locate(0,3); |
anevil14 | 0:16db2db8886d | 91 | lcd.printf("Volume: \n%d ", volume); |
anevil14 | 0:16db2db8886d | 92 | screen_lock = false; |
anevil14 | 0:16db2db8886d | 93 | } |
anevil14 | 0:16db2db8886d | 94 | } |
anevil14 | 0:16db2db8886d | 95 | |
anevil14 | 0:16db2db8886d | 96 | void WavDis::UpdateLEDs() |
anevil14 | 0:16db2db8886d | 97 | { |
anevil14 | 0:16db2db8886d | 98 | led1 = 1; |
anevil14 | 0:16db2db8886d | 99 | switch (currentState) |
anevil14 | 0:16db2db8886d | 100 | { |
anevil14 | 0:16db2db8886d | 101 | case stop: |
anevil14 | 0:16db2db8886d | 102 | led2 = 0; |
anevil14 | 0:16db2db8886d | 103 | led3 = 0; |
anevil14 | 0:16db2db8886d | 104 | led4 = 0; |
anevil14 | 0:16db2db8886d | 105 | break; |
anevil14 | 0:16db2db8886d | 106 | case play_state: |
anevil14 | 0:16db2db8886d | 107 | led2 = 1; |
anevil14 | 0:16db2db8886d | 108 | led3 = 1; |
anevil14 | 0:16db2db8886d | 109 | led4 = 1; |
anevil14 | 0:16db2db8886d | 110 | break; |
anevil14 | 0:16db2db8886d | 111 | } |
anevil14 | 0:16db2db8886d | 112 | |
anevil14 | 0:16db2db8886d | 113 | } |