diff options
Diffstat (limited to 'project/Core/Src/Project/player_actions.c')
| -rw-r--r-- | project/Core/Src/Project/player_actions.c | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/project/Core/Src/Project/player_actions.c b/project/Core/Src/Project/player_actions.c new file mode 100644 index 0000000..4ee2dfb --- /dev/null +++ b/project/Core/Src/Project/player_actions.c @@ -0,0 +1,58 @@ +/* + * player_actions.c + * + * Created on: Oct 17, 2025 + * Author: sowgro + */ + +#include <stdio.h> +#include "player_actions.h" +#include "song_info.h" +#include "song.h" +#include "LED.h" +#include "systick.h" + +void help() { + printf("\r***REMOTE LED CONTROL MENU***\r\n"); + printf("Available User Commands:\r\n"); + printf("NEXT - Show next song info\r\n"); + printf("PLAY - Play the song (LED on)\r\n"); + printf("PAUSE - Pause the song (LED flash)\r\n"); + printf("STOP - Stop the song (LED off)\r\n"); +} + +void next() { + static int current_song = -1; + current_song++; + if (current_song > 4) + current_song = 0; + + void *song = get_song(current_song).p_song; + song_info_t song_info = get_song_info(song); + + printf("Song #%i\r\n", current_song + 1); + if (song_info.title) + printf("Title: %s\r\n", song_info.title); + if (song_info.copyright) + printf("Copyright: %s\r\n", song_info.copyright); + if (song_info.tempo) + printf("Tempo: %i\r\n", song_info.tempo); +} + +void play() { + LED_On(); +} + +void pause() { + init_systick(); +} + +void pause_loop() { + if (check_systick()) { + LED_Toggle(); + } +} + +void stop() { + LED_Off(); +} |
