98 lines
2.9 KiB
C
98 lines
2.9 KiB
C
/* Private includes -----------------------------------------------------------*/
|
|
//includes
|
|
#include "user_TasksInit.h"
|
|
#include "user_ScrRenewTask.h"
|
|
#include "main.h"
|
|
#include "lvgl.h"
|
|
#include "ui_HomePage.h"
|
|
#include "ui_MenuPage.h"
|
|
#include "ui_GameSelectPage.h"
|
|
#include "ui_SetPage.h"
|
|
#include "ui_OffTimePage.h"
|
|
#include "ui_DateTimeSetPage.h"
|
|
|
|
/* Private typedef -----------------------------------------------------------*/
|
|
|
|
/* Private define ------------------------------------------------------------*/
|
|
|
|
/* Private variables ---------------------------------------------------------*/
|
|
extern osMessageQueueId_t Key_MessageQueue;
|
|
user_Stack_T ScrRenewStack;
|
|
|
|
/* Private function prototypes -----------------------------------------------*/
|
|
|
|
|
|
/**
|
|
* @brief Screen renew task
|
|
* @param argument: Not used
|
|
* @retval None
|
|
*/
|
|
void ScrRenewTask(void *argument)
|
|
{
|
|
uint8_t keystr=0;
|
|
user_Stack_Push(&ScrRenewStack,(long long int)&ui_HomePage);
|
|
while(1)
|
|
{
|
|
if(osMessageQueueGet(Key_MessageQueue,&keystr,NULL,0)==osOK)
|
|
{
|
|
//key1 pressed
|
|
if(keystr == 1)
|
|
{
|
|
user_Stack_Pop(&ScrRenewStack);
|
|
if(user_Stack_isEmpty(&ScrRenewStack))
|
|
{
|
|
ui_MenuPage_screen_init();
|
|
lv_scr_load_anim(ui_MenuPage,LV_SCR_LOAD_ANIM_MOVE_RIGHT,0,0,true);
|
|
user_Stack_Push(&ScrRenewStack,(long long int)&ui_HomePage);
|
|
user_Stack_Push(&ScrRenewStack,(long long int)&ui_MenuPage);
|
|
}
|
|
else if(ScrRenewStack.Data[ScrRenewStack.Top_Point-1] == (long long int)&ui_HomePage)
|
|
{
|
|
ui_HomePage_screen_init();
|
|
lv_scr_load_anim(ui_HomePage,LV_SCR_LOAD_ANIM_MOVE_RIGHT,0,0,true);
|
|
}
|
|
else if(ScrRenewStack.Data[ScrRenewStack.Top_Point-1] == (long long int)&ui_MenuPage)
|
|
{
|
|
ui_MenuPage_screen_init();
|
|
lv_scr_load_anim(ui_MenuPage,LV_SCR_LOAD_ANIM_MOVE_RIGHT,0,0,true);
|
|
//HR sensor sleep
|
|
EM7028_hrs_DisEnable();
|
|
//sensor sleep
|
|
LSM303DLH_Sleep();
|
|
//SPL_Sleep();
|
|
}
|
|
else if(ScrRenewStack.Data[ScrRenewStack.Top_Point-1] == (long long int)&ui_GameSelectPage)
|
|
{
|
|
ui_GameSelectPage_screen_init();
|
|
lv_scr_load_anim(ui_GameSelectPage,LV_SCR_LOAD_ANIM_MOVE_RIGHT,0,0,true);
|
|
}
|
|
else if(ScrRenewStack.Data[ScrRenewStack.Top_Point-1] == (long long int)&ui_SetPage)
|
|
{
|
|
ui_SetPage_screen_init();
|
|
lv_scr_load_anim(ui_SetPage,LV_SCR_LOAD_ANIM_MOVE_RIGHT,0,0,true);
|
|
}
|
|
else if(ScrRenewStack.Data[ScrRenewStack.Top_Point-1] == (long long int)&ui_DateTimeSetPage)
|
|
{
|
|
ui_DateTimeSetPage_screen_init();
|
|
lv_scr_load_anim(ui_DateTimeSetPage,LV_SCR_LOAD_ANIM_MOVE_RIGHT,0,0,true);
|
|
}
|
|
|
|
}
|
|
//key2 pressed
|
|
else if(keystr == 2)
|
|
{
|
|
user_Stack_Clear(&ScrRenewStack);
|
|
ui_HomePage_screen_init();
|
|
lv_scr_load_anim(ui_HomePage,LV_SCR_LOAD_ANIM_MOVE_RIGHT,0,0,true);
|
|
user_Stack_Push(&ScrRenewStack,(long long int)&ui_HomePage);
|
|
//HR sensor sleep
|
|
EM7028_hrs_DisEnable();
|
|
//sensor sleep
|
|
LSM303DLH_Sleep();
|
|
//SPL_Sleep();
|
|
}
|
|
}
|
|
osDelay(10);
|
|
}
|
|
}
|