|
|
使用这个代码
static void screen01_start(synwit_id_t screen_id)
{
/* 在界面被显示给用户前,这个接口会被调用。 */
lv_fs_res_t fs_res;
lv_fs_file_t file;
fs_res = lv_fs_open(&file, "S:spi:screen01.bin", LV_FS_MODE_RD);
if (fs_res == LV_FS_RES_OK)
{
dac_init(DAC_FORMAT_8B);
GPIO_ClrBit(DAC_MUTE_PORT, DAC_MUTE_PIN);
uint32_t size = 0;
lv_fs_size(&file, &size);
wav_buf = lv_mem_alloc(size);
if(!wav_buf)
{
printf("wav_buf malloc err\n");
}
lv_fs_read(&file, wav_buf, size, NULL);
lv_fs_close(&file);
dac_dma_init((uint32_t)wav_buf, size, DMA_UNIT_BYTE);
TIMR_Start(TIMR0);
wav_state = 1;
}
// 打开下面的注释可以为本界面开启一个每100ms触发一次的定时器
//synwit_ui_start_scr_timer(100, NULL);
// 打开下面的注释可以为本界面开启一个每100ms触发一次的定时器
//synwit_ui_start_scr_timer(100, NULL);
}
还是可以使用下面代码(这个代码目前未成功播放)
wav_obj_t *vobj = synwit_wav_open("S:spi:screen01.bin");
if(vobj != NULL){
synwit_wav_play(vobj,LV_TASK_PRIO_HIGH);
printf("synwit_wav_play: %s\n", "sucess");
}else{
printf("synwit_wav_play: %s\n", "fail");
}
|
|