blue craft
/
serialmp3
f
main.cpp
- Committer:
- 583405000008
- Date:
- 2016-12-05
- Revision:
- 0:68ea82aa1b8b
File content as of revision 0:68ea82aa1b8b:
#include <stdlib.h> char buffer[2][200]; char count[5]; char index = 0; char temp; struct Cluster{ char _like[5]; char _dislike[5]; char _isSkip[5]; char _songName[200]; char _album[50]; //emotion 0: Sad //emotion 1: Stress //emotion 2: Angry //emotion 3: Happy }; typedef struct Cluster cluster; cluster dataCollection[25]; cluster *cp; void init_Cluster(){ cp = &dataCollection[0]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"Gravity.mp3"); sprintf(cp->_album,"Sad"); cp = &dataCollection[1]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"TaTerMaiRuseuk.mp3"); sprintf(cp->_album,"Sad"); cp = &dataCollection[2]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"NumTaTeHai.mp3"); sprintf(cp->_album,"Sad"); cp = &dataCollection[3]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"MaTanWeLaPord.mp3"); sprintf(cp->_album,"Sad"); cp = &dataCollection[4]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"YaSaeJaiKonDrew.mp3"); sprintf(cp->_album,"Sad"); cp = &dataCollection[5]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"PerJer.mp3"); sprintf(cp->_album,"Stress"); cp = &dataCollection[6]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"YenDTMaiRuJak.mp3"); sprintf(cp->_album,"Stress"); cp = &dataCollection[7]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"Y_Rai.mp3"); sprintf(cp->_album,"Stress"); cp = &dataCollection[8]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"LorLey.mp3"); sprintf(cp->_album,"Stress"); cp = &dataCollection[9]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"NuaGenPaiRuePow.mp3"); sprintf(cp->_album,"Stress"); cp = &dataCollection[10]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"9_Nariga.mp3"); sprintf(cp->_album,"Angry"); cp = &dataCollection[11]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"GluptuaGlupJai.mp3"); sprintf(cp->_album,"Angry"); cp = &dataCollection[12]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"MaiTumMaDa.mp3"); sprintf(cp->_album,"Angry"); cp = &dataCollection[13]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"LaugPee4G.mp3"); sprintf(cp->_album,"Angry"); cp = &dataCollection[14]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"CeakWeeSert.mp3"); sprintf(cp->_album,"Angry"); cp = &dataCollection[15]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"PerJer.mp3"); sprintf(cp->_album,"Happy"); cp = &dataCollection[16]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"Jeep.mp3"); sprintf(cp->_album,"Happy"); cp = &dataCollection[17]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"PoodTumMai.mp3"); sprintf(cp->_album,"Happy"); cp = &dataCollection[18]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"RumSeTow.mp3"); sprintf(cp->_album,"Happy"); cp = &dataCollection[19]; cp->_like[0] = 0; cp->_like[1] = 0; cp->_like[2] = 0; cp->_like[3] = 0; cp->_dislike[0] = 0; cp->_dislike[1] = 0; cp->_dislike[2] = 0; cp->_dislike[3] = 0; cp->_isSkip[0] = 0; cp->_isSkip[1] = 0; cp->_isSkip[2] = 0; cp->_isSkip[3] = 0; sprintf(cp->_songName,"AO.mp3"); sprintf(cp->_album,"Happy"); } char currentSong = -1; char currentEmotion = 0; char songList[100]; char ch; char flag = 0; char protocalSlot = 2; int main(){ init_Cluster(); while (1){ //get data from serial communicate with nucleo_master (mp3 shield). //protocol @songIndex|Data|$ if (kbhit()) //change with bluetooth command [maybe: .readable()] { ch = getc(); //change with bluetooth command if (ch == '@'){ index = 0; flag = 1; count[index] = 0; } else if (ch == '|' && flag){ buffer[index][count[index]++] = '\0'; index++; count[index] = 0; } else if (ch == '$' && flag && (index == protocalSlot)){ flag = 0; temp = atoi(buffer[1]); switch(temp){ case 0: //get new song songList[++currentSong] = atoi(buffer[0]); break; case 1: //like cp = &dataCollection[songList[currentSong]]; cp->_like[currentEmotion] = 1; break; case 2: //dislike cp = &dataCollection[songList[currentSong]]; cp->_dislike[currentEmotion] = 1; break; case 3: if(currentSong !=-1){ cp = &dataCollection[songList[currentSong]]; cp->_isSkip[currentEmotion] = 1; } break; case 4: //emotion 0: Sad case 5: //emotion 1: Stress case 6: //emotion 2: Angry case 7: //emotion 3: Happy currentEmotion = temp - 4; break; } } else if(flag){ if((ch<='9')&&(ch >= '0')) buffer[index][count[index]++] = ch; else flag = 0; } } } }