You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
201 lines
16 KiB
201 lines
16 KiB
#include "../bsp/bsp_WT2605B.h"
|
|
#include "../app/app_config.h"
|
|
#include "../msp/UART3.h"
|
|
#include "../msp/UART0.h"
|
|
#include "../msp/msp_eeprom.h"
|
|
|
|
/****************************************系统提示音****************************************/
|
|
TS_SPEECH_AUDIO audio_powerdown = {0x7E,0x07,0xA3,0x54,0x30,0x30,0x31,0x8F,0xEF}; //T001 谢谢使用,再见
|
|
TS_SPEECH_AUDIO audio_poweron = {0x7E,0x07,0xA3,0x54,0x30,0x30,0x32,0x90,0xEF}; //T002 欢迎使用睿思认知训练系统
|
|
TS_SPEECH_AUDIO audio_wifi_connected = {0x7E,0x07,0xA3,0x54,0x30,0x30,0x33,0x91,0xEF}; //T003 WIFI链接成功
|
|
TS_SPEECH_AUDIO audio_TCP_connected = {0x7E,0x07,0xA3,0x54,0x30,0x30,0x34,0x92,0xEF}; //T004 服务器连接成功
|
|
TS_SPEECH_AUDIO audio_config_mode = {0x7E,0x07,0xA3,0x54,0x30,0x30,0x35,0x93,0xEF}; //T005 进入配网模式
|
|
TS_SPEECH_AUDIO audio_config_complete = {0x7E,0x07,0xA3,0x54,0x30,0x30,0x36,0x94,0xEF}; //T006 配网成功,请重启设备
|
|
TS_SPEECH_AUDIO audio_config_phone = {0x7E,0x07,0xA3,0x54,0x30,0x30,0x37,0x95,0xEF}; //T007 进入配网模式,请打开APP进行配置
|
|
TS_SPEECH_AUDIO audio_volume_up = {0x7E,0x07,0xA3,0x54,0x30,0x30,0x38,0x96,0xEF}; //T008 音量增大
|
|
TS_SPEECH_AUDIO audio_volume_down = {0x7E,0x07,0xA3,0x54,0x30,0x30,0x39,0x97,0xEF}; //T009 音量减小
|
|
TS_SPEECH_AUDIO audio_low_power = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x32,0x92,0xEF}; //T022 电池电量低,请及时充电
|
|
TS_SPEECH_AUDIO audio_game_error = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x33,0x92,0xEF}; //T013 错误
|
|
TS_SPEECH_AUDIO audio_game_correct = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x34,0x93,0xEF}; //T014 “正确提示音”
|
|
TS_SPEECH_AUDIO audio_game_overtime = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x35,0x94,0xEF}; //T015 超时结束,再接再励
|
|
TS_SPEECH_AUDIO audio_game_complete = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x36,0x95,0xEF}; //T016 恭喜你,任务完成
|
|
|
|
/****************************************服务器下发任务************************************/
|
|
TS_SPEECH_AUDIO audio_tcp_maze = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x37,0x96,0xEF}; //T017 请进行走迷宫游戏训练
|
|
TS_SPEECH_AUDIO audio_tcp_different = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x38,0x97,0xEF}; //T018 请进行找不同游戏训练
|
|
TS_SPEECH_AUDIO audio_tcp_shulte = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x39,0x98,0xEF}; //T019 请进行舒尔特方格游戏训练
|
|
TS_SPEECH_AUDIO audio_tcp_complete = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x30,0x90,0xEF}; //T020 恭喜你,今天所有训练任务已完成
|
|
TS_SPEECH_AUDIO audio_tcp_noplan = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x31,0x91,0xEF}; //T021 今天暂无训练任务,可以进行自由训练哦
|
|
|
|
|
|
|
|
/****************************************************点击游戏标识码,播放游戏名称和游戏规则**********************************************************/
|
|
|
|
TS_SPEECH_AUDIO audio_game_maze_1 = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x30,0x8F,0xEF}; //T010 走迷宫,一星。请按照要求画出一条从入口到出口的线,不能跨越实线
|
|
TS_SPEECH_AUDIO audio_game_different_1 = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x31,0x90,0xEF}; //T011 找不同,一星。请找出两张图片中不同的地方
|
|
TS_SPEECH_AUDIO audio_game_shulte_3 = {0x7E,0x07,0xA3,0x54,0x30,0x31,0x32,0x91,0xEF}; //T012 舒尔特方格,三星。请按照从小到大的顺序依次指出1-25
|
|
|
|
/*****************************************************************PAGE1************************************************************************* */
|
|
/******************************************************************15个************************************************************************* */
|
|
TS_SPEECH_AUDIO audio_game_zlxs_4 = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x33,0x93,0xEF}; //T023 众里寻3,四星。请按顺序逐行依次指出3和3的倍数,以及含3的数字方块
|
|
TS_SPEECH_AUDIO audio_game_hyjj_3 = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x34,0x94,0xEF}; //T024 火眼金晶,三星。请快速找出顺时针旋转90度的数字方块
|
|
TS_SPEECH_AUDIO audio_game_hyjj_4 = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x35,0x95,0xEF}; //T025 火眼金晶,四星。请快速找出顺时针旋转180度的数字方块
|
|
TS_SPEECH_AUDIO audio_game_hyjj_5 = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x36,0x96,0xEF}; //T026 火眼金晶,五星。请快速找出顺时针旋转270度的数字方块
|
|
TS_SPEECH_AUDIO audio_game_cxdd_4 = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x37,0x97,0xEF}; //T027 从小到大,四星。请按照从小到大的顺序依次指出刚才出现的数字
|
|
TS_SPEECH_AUDIO audio_game_mcqh_4 = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x38,0x98,0xEF}; //T028 明察秋毫,四星。请按顺序指出数字积木的位置
|
|
TS_SPEECH_AUDIO audio_game_mcqh_5 = {0x7E,0x07,0xA3,0x54,0x30,0x32,0x39,0x99,0xEF}; //T029 明察秋毫,五星。请按顺序指出数字积木的位置
|
|
TS_SPEECH_AUDIO audio_game_jmzx_3 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x30,0x91,0xEF}; //T030 积木再现,三星。请回忆数字积木的位置并指出
|
|
TS_SPEECH_AUDIO audio_game_jmzx_4 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x31,0x92,0xEF}; //T031 积木再现,四星。请回忆数字积木的位置并指出
|
|
TS_SPEECH_AUDIO audio_game_jmzx_5 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x32,0x93,0xEF}; //T032 积木再现,五星。请回忆数字积木的位置并指出
|
|
TS_SPEECH_AUDIO audio_game_hyzb_1 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x33,0x94,0xEF}; //T033 还原钟表,一星。请将数字摆放在钟表合适的位置上
|
|
TS_SPEECH_AUDIO audio_game_hyzb_2 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x34,0x95,0xEF}; //T034 还原钟表,二星。请将数字摆放在钟表合适的位置上
|
|
TS_SPEECH_AUDIO audio_game_sjgh_3 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x35,0x96,0xEF}; //T035 时间规划,三星。请按提示将指针指向相应的时间
|
|
TS_SPEECH_AUDIO audio_game_jssj_4 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x36,0x97,0xEF}; //T036 计算时间,四星。计算并将钟表拨动至相应的位置
|
|
TS_SPEECH_AUDIO audio_game_jssj_5 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x37,0x98,0xEF}; //T037 计算时间,五星。计算并将钟表拨动至相应的位置
|
|
|
|
/*****************************************************************PAGE2************************************************************************* */
|
|
/******************************************************************24个************************************************************************* */
|
|
TS_SPEECH_AUDIO audio_game_yxpl_1 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x38,0x99,0xEF}; //T038 有序排列,1星。请将数字方块按照从小到大、从左到右的顺序依次摆放
|
|
TS_SPEECH_AUDIO audio_game_yxpl_2 = {0x7E,0x07,0xA3,0x54,0x30,0x33,0x39,0x9A,0xEF}; //T039 有序排列,2星。请将数字方块按照从小到大、从左到右的顺序依次摆放
|
|
TS_SPEECH_AUDIO audio_game_ydsd_1 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x30,0x92,0xEF}; //T040 眼到手到,1星。请按数字顺序快速依次指出1到10
|
|
TS_SPEECH_AUDIO audio_game_ydsd_2 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x31,0x93,0xEF}; //T041 眼到手到,2星。请按数字顺序快速依次指出1到15
|
|
TS_SPEECH_AUDIO audio_game_ydsd_szdd_1 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x32,0x94,0xEF}; //T042 眼到手到(数字颠倒),1星。请按数字顺序快速依次指出1到10
|
|
TS_SPEECH_AUDIO audio_game_ydsd_szdd_2 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x33,0x95,0xEF}; //T043 眼到手到(数字颠倒),2星。请按数字顺序快速依次指出1到15
|
|
TS_SPEECH_AUDIO audio_game_bbdx_1 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x34,0x96,0xEF}; //T044 比比大小,1星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_bbdx_2 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x35,0x97,0xEF}; //T045 比比大小,2星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_bbdx_3 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x36,0x98,0xEF}; //T046 比比大小,3星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_bbdx_4 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x37,0x99,0xEF}; //T047 比比大小,4星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_cscd_2 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x38,0x9A,0xEF}; //T048 成双成对,2星。请将双数按照从小到大的顺序排列至左方
|
|
TS_SPEECH_AUDIO audio_game_cscd_3 = {0x7E,0x07,0xA3,0x54,0x30,0x34,0x39,0x9B,0xEF}; //T049 成双成对,3星。请将双数按照从大到小的顺序排列至左方
|
|
TS_SPEECH_AUDIO audio_game_dqpm_2 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x30,0x93,0xEF}; //T050 单枪匹马,2星。请将单数按照从小到大的顺序排列至左方
|
|
TS_SPEECH_AUDIO audio_game_dqpm_3 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x31,0x94,0xEF}; //T051 单枪匹马,3星。请将单数按照从大到小的顺序排列至左方
|
|
TS_SPEECH_AUDIO audio_game_szsb_2 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x32,0x95,0xEF}; //T052 数字顺背,2星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_szsb_3 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x33,0x96,0xEF}; //T053 数字顺背,3星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_szdb_2 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x34,0x97,0xEF}; //T054 数字倒背,2星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_szdb_3 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x35,0x98,0xEF}; //T055 数字倒背,3星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_setfg_3 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x36,0x99,0xEF}; //T056 舒尔特方格,3星。请按照从小到大的顺序依次指出1到25
|
|
TS_SPEECH_AUDIO audio_game_setfg_4 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x37,0x9A,0xEF}; //T057 舒尔特方格,4星。请按照从小到大的顺序依次指出1到25
|
|
TS_SPEECH_AUDIO audio_game_setfg_5 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x38,0x9B,0xEF}; //T058 舒尔特方格,5星。请按照从小到大的顺序依次指出1到25
|
|
TS_SPEECH_AUDIO audio_game_setfg_szxz_3 = {0x7E,0x07,0xA3,0x54,0x30,0x35,0x39,0x9C,0xEF}; //T059 舒尔特方格(数字旋转),3星。请按照从小到大的顺序依次指出1到25
|
|
TS_SPEECH_AUDIO audio_game_setfg_szdd_5 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x30,0x94,0xEF}; //T060 舒尔特方格(数字颠倒),5星。请按照从小到大的顺序依次指出1到25
|
|
TS_SPEECH_AUDIO audio_game_zlxs_3 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x31,0x95,0xEF}; //T061 众里寻三,3星。请按顺序逐行依次指出3和3的倍数
|
|
|
|
/*****************************************************************PAGE3************************************************************************* */
|
|
/******************************************************************19个************************************************************************* */
|
|
TS_SPEECH_AUDIO audio_game_yxlp_1 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x32,0x96,0xEF}; //T062 有序排列,1星。请将数字1-9按照指定方式进行排列或连线
|
|
TS_SPEECH_AUDIO audio_game_fztp_2 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x33,0x97,0xEF}; //T063 复制图形,2星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_fztp_3 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x34,0x98,0xEF}; //T064 复制图形,3星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_fztp_4 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x35,0x99,0xEF}; //T065 复制图形,4星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_fztp_5 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x36,0x9A,0xEF}; //T066 复制图形,5星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_hytc_3 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x37,0x9B,0xEF}; //T067 慧眼“挑刺”,3星。请快速依次找出指定的数字
|
|
TS_SPEECH_AUDIO audio_game_hytc_4 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x38,0x9C,0xEF}; //T068 慧眼“挑刺”,4星。请快速依次找出指定的数字
|
|
TS_SPEECH_AUDIO audio_game_syxt_3 = {0x7E,0x07,0xA3,0x54,0x30,0x36,0x39,0x9D,0xEF}; //T069 手眼协调,3星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_syxt_4 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x30,0x95,0xEF}; //T070 手眼协调,4星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_typy_3 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x31,0x96,0xEF}; //T071 听1拍1,3星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_szbs_3 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x32,0x97,0xEF}; //T072 数字顺背,3星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_szbs_4 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x33,0x98,0xEF}; //T073 数字顺背,4星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_szbd_3 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x34,0x99,0xEF}; //T074 数字倒背,3星。请按照任务要求,进行训练
|
|
TS_SPEECH_AUDIO audio_game_hcss_4 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x35,0x9A,0xEF}; //T075 “火柴算数”,4星。请移动一根磁条,使等式成立。
|
|
TS_SPEECH_AUDIO audio_game_hcss_5 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x36,0x9B,0xEF}; //T076 “火柴算数”,5星。请移动一根磁条,使等式成立。
|
|
TS_SPEECH_AUDIO audio_game_zftpt_2 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x37,0x9C,0xEF}; //T077 正方体拼图,2星。请按参照图片拼出图形
|
|
TS_SPEECH_AUDIO audio_game_zftpt_3 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x38,0x9D,0xEF}; //T078 正方体拼图,3星。请按参照图片拼出图形
|
|
TS_SPEECH_AUDIO audio_game_zftpt_4 = {0x7E,0x07,0xA3,0x54,0x30,0x37,0x39,0x9E,0xEF}; //T079 正方体拼图,4星。请按参照图片拼出图形
|
|
TS_SPEECH_AUDIO audio_game_zftpt_5 = {0x7E,0x07,0xA3,0x54,0x30,0x38,0x30,0x96,0xEF}; //T080 正方体拼图,5星。请按参照图片拼出图形
|
|
|
|
|
|
|
|
TS_SPEECH_VOLUME volume_control = {0x7E,0x04,0xAE,0x1E,0xD0,0xEF}; //音量控制
|
|
|
|
|
|
void L2_WT2605B_init()
|
|
{
|
|
// 初始化管脚
|
|
D_stdIO_P0(BITN0);
|
|
D_stdIO_P0(BITN1);
|
|
|
|
// 初始化功放控制引脚P26
|
|
// 0 开启 1 关闭
|
|
D_stdIO_P2(BITN6);
|
|
L2_WT2605B_ON();
|
|
|
|
// 初始化音量
|
|
L2_WT2605B_VolumeControl(G.volume);
|
|
}
|
|
|
|
void L2_WT2605B_ON()
|
|
{
|
|
D_P26_OFF();
|
|
}
|
|
void L2_WT2605B_OFF()
|
|
{
|
|
D_P26_ON();
|
|
}
|
|
|
|
void L2_WT2605B_Broadcast(TS_SPEECH_AUDIO *music)
|
|
{
|
|
L0_uart3_sendArray((U8 *)music,9);
|
|
// L0_uart3_sendArrayHex((U8 *)music,9);
|
|
}
|
|
|
|
void L2_WT2605B_Broadcast_TPC(U8* GameID)
|
|
{
|
|
if (GameID[0] == 0x31 && GameID[1] == 0x52)
|
|
{
|
|
L2_WT2605B_Broadcast(&audio_tcp_maze);
|
|
}
|
|
else if (GameID[0] == 0x31 && GameID[1] == 0x33)
|
|
{
|
|
L2_WT2605B_Broadcast(&audio_tcp_different);
|
|
}
|
|
else if (GameID[0] == 0x31 && GameID[1] == 0x42)
|
|
{
|
|
L2_WT2605B_Broadcast(&audio_tcp_shulte);
|
|
}
|
|
}
|
|
|
|
// 音量控制
|
|
void L2_WT2605B_VolumeControl(U8 grade)
|
|
{
|
|
volume_control.grade = grade;
|
|
volume_control.crc = volume_control.num + volume_control.cmd + volume_control.grade;
|
|
L0_uart3_sendArray((U8 *)&volume_control,6);
|
|
}
|
|
// 音量设置6个档位:0x15,0x17,0x19,0x1B,0x1D,0x1F
|
|
// 音量增大
|
|
void L2_WT2605B_VioceUp(void)
|
|
{
|
|
if (volume_control.grade >= 0x15 && volume_control.grade < 0x1F)
|
|
{
|
|
volume_control.grade = volume_control.grade + 2;
|
|
G.volume = volume_control.grade;
|
|
L0_Iap_Program_array(EEPROM_DATA_ADDR,(U8*)&G,sizeof(G));
|
|
}
|
|
else
|
|
{
|
|
volume_control.grade = volume_control.grade;
|
|
G.volume = volume_control.grade;
|
|
L0_Iap_Program_array(EEPROM_DATA_ADDR,(U8*)&G,sizeof(G));
|
|
}
|
|
L2_WT2605B_VolumeControl(G.volume);
|
|
L2_WT2605B_Broadcast(&audio_volume_up);
|
|
}
|
|
|
|
// 音量减小
|
|
void L2_WT2605B_VioceDown(void)
|
|
{
|
|
if (volume_control.grade > 0x15 && volume_control.grade <= 0x1F)
|
|
{
|
|
volume_control.grade = volume_control.grade - 2;
|
|
G.volume = volume_control.grade;
|
|
L0_Iap_Program_array(EEPROM_DATA_ADDR,(U8*)&G,sizeof(G));
|
|
}
|
|
else
|
|
{
|
|
volume_control.grade = volume_control.grade;
|
|
G.volume = volume_control.grade;
|
|
L0_Iap_Program_array(EEPROM_DATA_ADDR,(U8*)&G,sizeof(G));
|
|
}
|
|
L2_WT2605B_VolumeControl(G.volume);
|
|
L2_WT2605B_Broadcast(&audio_volume_down);
|
|
}
|
|
|
|
|