diff --git a/bsp/stm32_radio/mp3.c b/bsp/stm32_radio/mp3.c index 1573159363c15b21b9ee527b4deaf2d3cf2c23aa..b923e1c600aee04fefc880673a5029c65b8862ff 100644 --- a/bsp/stm32_radio/mp3.c +++ b/bsp/stm32_radio/mp3.c @@ -8,7 +8,7 @@ #include "player_ui.h" #include "player_bg.h" -#define MP3_AUDIO_BUF_SZ 4096 +#define MP3_AUDIO_BUF_SZ 8192 #ifndef MIN #define MIN(x, y) ((x) < (y)? (x) : (y)) #endif @@ -118,22 +118,21 @@ static rt_int32_t mp3_decoder_fill_buffer(struct mp3_decoder* decoder) } bytes_to_read = (MP3_AUDIO_BUF_SZ - decoder->bytes_left) & ~(512 - 1); - // rt_kprintf("read bytes: %d\n", bytes_to_read); bytes_read = decoder->fetch_data(decoder->fetch_parameter, (rt_uint8_t *)(decoder->read_buffer + decoder->bytes_left), bytes_to_read); - if (bytes_read == bytes_to_read) + if (bytes_read != 0) { decoder->read_ptr = decoder->read_buffer; decoder->read_offset = 0; - decoder->bytes_left = decoder->bytes_left + bytes_to_read; + decoder->bytes_left = decoder->bytes_left + bytes_read; return 0; } else { - rt_kprintf("can't read more data"); + rt_kprintf("can't read more data\n"); return -1; } } @@ -415,7 +414,7 @@ void mp3_get_info(const char* filename, struct tag_info* info) } /* * There're two other rarely used VBR header standards: VBRI & MLLT. - * I can't find any sample with these headers. So I just ignored them. :) + * I can't find any sample with these headers. So I just ignored them. :) */ else { diff --git a/bsp/stm32_radio/picture.c b/bsp/stm32_radio/picture.c new file mode 100644 index 0000000000000000000000000000000000000000..99dcdca9727e9bf844bcffb589dbdbee051c79d9 --- /dev/null +++ b/bsp/stm32_radio/picture.c @@ -0,0 +1,283 @@ +#include +#include +#include + +#include +#include +#include +#include + +#define PICTURE_DIR "/pictures" + +enum picture_view_mode +{ + VIEW_SINGLE_MODE, + VIEW_DIR_MODE, + VIEW_FN_LIST_MODE +}; + +static rtgui_view_t* picture_view = RT_NULL; +static enum picture_view_mode view_mode = VIEW_SINGLE_MODE; + +/* current picture file name */ +static char current_fn[32] = {0}; +static const char** picture_fn_list; +static rt_uint8_t picture_fn_list_size, picture_fn_list_current; + +static void picture_show_prev() +{ + DIR* dir; + struct dirent* entry; + rt_bool_t is_last; + char fn[32]; + + fn[0] = '\0'; + is_last = RT_FALSE; + + dir = opendir(PICTURE_DIR); + if (dir == RT_NULL) + { + rt_kprintf("open directory failed\n"); + return; + } + + do + { + entry = readdir(dir); + if (entry != RT_NULL) + { + if (strstr(entry->d_name, ".hdc") != RT_NULL || + strstr(entry->d_name, ".HDC") != RT_NULL) + { + /* it's a HDC image */ + if ((strcmp(entry->d_name, current_fn) == 0) && + is_last != RT_TRUE) + { + if (fn[0] == '\0') + { + /* it should be the last image */ + is_last = RT_TRUE; + } + else + { + /* display image */ + strcpy(current_fn, fn); + rtgui_widget_update(RTGUI_WIDGET(picture_view)); + closedir(dir); + return; + } + } + strcpy(fn, entry->d_name); + } + } + } while(entry != RT_NULL); + + /* close directory */ + closedir(dir); + + if ((is_last == RT_TRUE) && fn[0] != '\0') + { + strcpy(current_fn, fn); + rtgui_widget_update(RTGUI_WIDGET(picture_view)); + } +} + +static void picture_show_next() +{ + DIR* dir; + struct dirent* entry; + rt_bool_t found, has_image; + + found = RT_FALSE; has_image = RT_FALSE; + +__restart: + dir = opendir(PICTURE_DIR); + if (dir == RT_NULL) + { + rt_kprintf("open directory failed\n"); + return; + } + + do + { + entry = readdir(dir); + if (entry != RT_NULL) + { + if (strstr(entry->d_name, ".hdc") != RT_NULL || + strstr(entry->d_name, ".HDC") != RT_NULL) + { + /* this directory includes image */ + has_image = RT_TRUE; + + if (found == RT_TRUE || current_fn[0] == '\0') + { + strcpy(current_fn, entry->d_name); + rtgui_widget_update(RTGUI_WIDGET(picture_view)); + + closedir(dir); + return; + } + + /* it's a HDC image */ + if (strcmp(entry->d_name, current_fn) == 0) + found = RT_TRUE; + } + } + } while(entry != RT_NULL); + + /* close directory */ + closedir(dir); + + if (has_image != RT_TRUE) return; + current_fn[0] = '\0'; + goto __restart; +} + +static rt_bool_t picture_view_event_handler(struct rtgui_widget* widget, struct rtgui_event* event) +{ + if (event->type == RTGUI_EVENT_PAINT) + { + struct rtgui_dc* dc; + struct rtgui_rect rect; + struct rtgui_image* image; + char fn[32]; + + dc = rtgui_dc_begin_drawing(widget); + if (dc == RT_NULL) return RT_FALSE; + rtgui_widget_get_rect(widget, &rect); + + /* open image */ + rt_snprintf(fn, sizeof(fn), "%s/%s", PICTURE_DIR, current_fn); + image = rtgui_image_create_from_file("hdc", + fn, RT_FALSE); + if (image != RT_NULL) + { + /* blit image */ + rtgui_image_blit(image, dc, &rect); + /* destroy image */ + rtgui_image_destroy(image); + } + else + { + rtgui_dc_fill_rect(dc, &rect); + rtgui_dc_draw_text(dc, "没有文件被打开", &rect); + } + rtgui_dc_end_drawing(dc); + + return RT_FALSE; + } + else if (event->type == RTGUI_EVENT_KBD) + { + struct rtgui_event_kbd* ekbd = (struct rtgui_event_kbd*)event; + if (ekbd->type == RTGUI_KEYDOWN) + { + switch (ekbd->key) + { + case RTGUIK_RIGHT: + if (view_mode == VIEW_DIR_MODE) picture_show_next(); + else if (view_mode == VIEW_FN_LIST_MODE) + { + picture_fn_list_current ++; + if (picture_fn_list_current == picture_fn_list_size) + { + picture_fn_list_current = 0; + } + strcpy(current_fn, picture_fn_list[picture_fn_list_current]); + rtgui_widget_update(RTGUI_WIDGET(picture_view)); + } + break; + case RTGUIK_LEFT: + if (view_mode == VIEW_DIR_MODE) picture_show_prev(); + else if (view_mode == VIEW_FN_LIST_MODE) + { + if (picture_fn_list_current == 0) + { + picture_fn_list_current = picture_fn_list_size - 1; + } + else picture_fn_list_current --; + + strcpy(current_fn, picture_fn_list[picture_fn_list_current]); + rtgui_widget_update(RTGUI_WIDGET(picture_view)); + } + break; + case RTGUIK_RETURN: + { + rtgui_view_t* view; + + view = RTGUI_VIEW(widget); + + /* close this view */ + current_fn[0] = '\0'; + + /* end of modal */ + rtgui_view_end_modal(view, RTGUI_MODAL_OK); + picture_view = RT_NULL; + } + break; + } + } + return RT_FALSE; + } + + return rtgui_view_event_handler(widget, event); +} + +rtgui_view_t *picture_view_create(struct rtgui_workbench* workbench) +{ + /* create picture view */ + picture_view = rtgui_view_create("Picture Presentation"); + rtgui_widget_set_event_handler(RTGUI_WIDGET(picture_view), + picture_view_event_handler); + + rtgui_workbench_add_view(workbench, picture_view); + /* this view can be focused */ + RTGUI_WIDGET(picture_view)->flag |= RTGUI_WIDGET_FLAG_FOCUSABLE; + + /* show next picture */ + picture_show_next(); + + view_mode = VIEW_DIR_MODE; + + return picture_view; +} + +rtgui_view_t *picture_view_create_view_file(struct rtgui_workbench* workbench, + const char* filename) +{ + strcpy(current_fn, filename); + + /* create picture view */ + picture_view = rtgui_view_create("Picture Presentation"); + rtgui_widget_set_event_handler(RTGUI_WIDGET(picture_view), + picture_view_event_handler); + + rtgui_workbench_add_view(workbench, picture_view); + /* this view can be focused */ + RTGUI_WIDGET(picture_view)->flag |= RTGUI_WIDGET_FLAG_FOCUSABLE; + + view_mode = VIEW_SINGLE_MODE; + + return picture_view; +} + +rtgui_view_t *picture_view_create_view_list(struct rtgui_workbench* workbench, + const char* list[], rt_uint8_t size) +{ + picture_fn_list = list; + picture_fn_list_size = size; + picture_fn_list_current = 0; + strcpy(current_fn, picture_fn_list[picture_fn_list_current]); + + /* create picture view */ + picture_view = rtgui_view_create("Picture Presentation"); + rtgui_widget_set_event_handler(RTGUI_WIDGET(picture_view), + picture_view_event_handler); + + rtgui_workbench_add_view(workbench, picture_view); + /* this view can be focused */ + RTGUI_WIDGET(picture_view)->flag |= RTGUI_WIDGET_FLAG_FOCUSABLE; + + view_mode = VIEW_FN_LIST_MODE; + + return picture_view; +} diff --git a/bsp/stm32_radio/picture.h b/bsp/stm32_radio/picture.h new file mode 100644 index 0000000000000000000000000000000000000000..867b9837ec0c9dee42615878a1c50a9b076ac36c --- /dev/null +++ b/bsp/stm32_radio/picture.h @@ -0,0 +1,8 @@ +#ifndef __PICTURE_H__ +#define __PICTURE_H__ + +rtgui_view_t *picture_view_create(struct rtgui_workbench* workbench); +rtgui_view_t *picture_view_create_view_file(struct rtgui_workbench* workbench, const char* fn); +rtgui_view_t *picture_view_create_view_list(struct rtgui_workbench* workbench, const char* list[], rt_uint8_t size); + +#endif diff --git a/bsp/stm32_radio/player_ui.c b/bsp/stm32_radio/player_ui.c index 2869ccdb87e096a184cf426c9643cc5bde26ef06..9d3f35156e9e12be2d3d50afa5219008552b7c6e 100644 --- a/bsp/stm32_radio/player_ui.c +++ b/bsp/stm32_radio/player_ui.c @@ -279,6 +279,8 @@ void function_play_radio(void* parameter) { next_step = PLAYER_STEP_STOP; player_play_url("http://syragon.com:8000/ices"); + // player_play_url("http://192.168.1.6:8000/stream"); + // player_play_url("http://radio.aozima.com:8000/stream"); } void function_filelist(void* parameter) @@ -381,6 +383,21 @@ void function_player(void* parameter) return; } +#include "picture.h" +void function_show_picure(void* parameter) +{ + rtgui_view_t *view; + + view = picture_view_create(workbench); + if (view != RT_NULL) + { + rtgui_view_show(view, RT_TRUE); + rtgui_view_destroy(view); + } + + return; +} + void function_action(void* parameter) { rt_kprintf("item action!\n"); @@ -398,6 +415,7 @@ struct list_item function_list[] = {"选择电台", RT_NULL, function_play_radio, RT_NULL}, {"更新电台", RT_NULL, function_action, RT_NULL}, {"播放文件", RT_NULL, function_filelist, RT_NULL}, + {"浏览图片", RT_NULL, function_show_picure, RT_NULL}, {"设备信息", RT_NULL, function_device, RT_NULL}, {"选项设置", RT_NULL, function_action, RT_NULL}, {"USB 联机", RT_NULL, function_cable, RT_NULL}, diff --git a/bsp/stm32_radio/project.Opt b/bsp/stm32_radio/project.Opt index 2660d3a439a55d3016790238af250f6cbdd05937..73bdc1f42db334e52981fa6a7cfd30a0630a070e 100644 --- a/bsp/stm32_radio/project.Opt +++ b/bsp/stm32_radio/project.Opt @@ -11,28 +11,28 @@ DaveTm { 0,0,0,0,0,0,0,0 } Target (RT-Thread STM32 Radio), 0x0004 // Tools: 'ARM-ADS' -GRPOPT 1,(Startup),1,0,0 +GRPOPT 1,(Startup),0,0,0 GRPOPT 2,(Kernel),0,0,0 -GRPOPT 3,(STM32),1,0,0 +GRPOPT 3,(STM32),0,0,0 GRPOPT 4,(StdPeriph_Driver),0,0,0 GRPOPT 5,(USB-FS-Device_Driver),0,0,0 GRPOPT 6,(CMSIS),0,0,0 GRPOPT 7,(finsh),0,0,0 GRPOPT 8,(Filesystem),0,0,0 -GRPOPT 9,(LwIP),0,0,0 +GRPOPT 9,(LwIP),1,0,0 GRPOPT 10,(mp3),0,0,0 GRPOPT 11,(RTGUI),0,0,0 GRPOPT 12,(Mass_Storage),0,0,0 -OPTFFF 1,1,5,0,0,0,0,0,<.\rtconfig.h> +OPTFFF 1,1,5,0,0,114,114,0,<.\rtconfig.h> { 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,0,0,0,0,0,0,0,0,133,2,0,0,218,0,0,0 } OPTFFF 1,2,5,0,0,0,0,0,<.\board.h> OPTFFF 1,3,5,0,0,0,0,0,<.\stm32f10x_conf.h> OPTFFF 1,4,1,0,0,0,0,0,<.\application.c> OPTFFF 1,5,1,0,0,0,0,0,<.\board.c> -OPTFFF 1,6,1,352321536,0,0,0,0,<.\startup.c> +OPTFFF 1,6,1,452984834,0,40,50,0,<.\startup.c> { 44,0,0,0,2,0,0,0,3,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,0,0,0,0,0,0,0,0,132,2,0,0,232,0,0,0 } OPTFFF 1,7,1,0,0,0,0,0,<.\stm32f10x_it.c> OPTFFF 1,8,1,436207616,0,0,0,0,<.\usart.c> -OPTFFF 1,9,1,301989888,0,0,0,0,<.\sdcard.c> +OPTFFF 1,9,1,0,0,0,0,0,<.\sdcard.c> OPTFFF 1,10,1,0,0,0,0,0,<.\rtc.c> OPTFFF 1,11,1,0,0,0,0,0,<.\dm9000.c> OPTFFF 1,12,1,889192448,0,0,0,0,<.\fsmc_nand.c> @@ -40,198 +40,202 @@ OPTFFF 1,13,1,0,0,0,0,0,<.\fsmc_sram.c> OPTFFF 1,14,1,0,0,0,0,0,<.\fmt0371\fmt0371.c> OPTFFF 1,15,1,0,0,0,0,0,<.\http.c> OPTFFF 1,16,1,0,0,0,0,0,<.\lcd.c> -OPTFFF 1,17,1,0,0,0,0,0,<.\mp3.c> +OPTFFF 1,17,1,251658240,0,155,165,0,<.\mp3.c> { 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,44,0,0,0,58,0,0,0,177,2,0,0,20,1,0,0 } OPTFFF 1,18,1,369098752,0,0,0,0,<.\wav.c> -OPTFFF 1,19,1,0,0,0,0,0,<.\netbuffer.c> -OPTFFF 1,20,1,2,0,1,1,0,<.\key.c> { 44,0,0,0,2,0,0,0,3,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,0,0,0,0,0,0,0,0,242,3,0,0,94,1,0,0 } +OPTFFF 1,19,1,285212672,0,78,78,0,<.\netbuffer.c> { 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,66,0,0,0,87,0,0,0,198,2,0,0,63,1,0,0 } +OPTFFF 1,20,1,0,0,0,0,0,<.\key.c> OPTFFF 1,21,1,0,0,0,0,0,<.\info.c> OPTFFF 1,22,1,0,0,0,0,0,<.\filelist.c> OPTFFF 1,23,1,0,0,0,0,0,<.\device_info.c> OPTFFF 1,24,1,0,0,0,0,0,<.\listview.c> -OPTFFF 1,25,1,0,0,0,0,0,<.\player_ui.c> -OPTFFF 1,26,1,520093696,0,0,0,0,<.\player_bg.c> +OPTFFF 1,25,1,0,0,411,415,0,<.\player_ui.c> { 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,44,0,0,0,58,0,0,0,177,2,0,0,20,1,0,0 } +OPTFFF 1,26,1,0,0,0,0,0,<.\player_bg.c> OPTFFF 1,27,1,469762048,0,0,0,0,<.\play_list.c> OPTFFF 1,28,1,0,0,0,0,0,<.\ili9325\ili9320.c> OPTFFF 1,29,1,0,0,0,0,0,<.\codec.c> OPTFFF 1,30,1,0,0,0,0,0,<.\spi_flash.c> -OPTFFF 1,31,1,318767104,0,1,13,0,<.\remote.c> { 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,44,0,0,0,58,0,0,0,34,4,0,0,153,1,0,0 } -OPTFFF 2,32,1,0,0,0,0,0,<..\..\src\clock.c> -OPTFFF 2,33,1,0,0,0,0,0,<..\..\src\idle.c> -OPTFFF 2,34,1,0,0,0,0,0,<..\..\src\ipc.c> -OPTFFF 2,35,1,0,0,0,0,0,<..\..\src\mempool.c> -OPTFFF 2,36,1,0,0,0,0,0,<..\..\src\mem.c> -OPTFFF 2,37,1,0,0,0,0,0,<..\..\src\object.c> -OPTFFF 2,38,1,0,0,0,0,0,<..\..\src\scheduler.c> -OPTFFF 2,39,1,0,0,0,0,0,<..\..\src\thread.c> -OPTFFF 2,40,1,0,0,0,0,0,<..\..\src\timer.c> -OPTFFF 2,41,1,0,0,0,0,0,<..\..\src\irq.c> -OPTFFF 2,42,1,0,0,0,0,0,<..\..\src\kservice.c> -OPTFFF 2,43,1,0,0,0,0,0,<..\..\src\device.c> -OPTFFF 2,44,1,0,0,0,0,0,<..\..\src\slab.c> -OPTFFF 3,45,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\stack.c> -OPTFFF 3,46,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\interrupt.c> -OPTFFF 3,47,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\cpu.c> -OPTFFF 3,48,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\serial.c> -OPTFFF 3,49,2,0,0,0,0,0,<..\..\libcpu\arm\stm32\context_rvds.S> -OPTFFF 3,50,2,654311424,0,0,0,0,<..\..\libcpu\arm\stm32\start_rvds.s> -OPTFFF 3,51,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\fault.c> -OPTFFF 3,52,2,0,0,0,0,0,<..\..\libcpu\arm\stm32\fault_rvds.S> -OPTFFF 4,53,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\misc.c> -OPTFFF 4,54,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_adc.c> -OPTFFF 4,55,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_bkp.c> -OPTFFF 4,56,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_can.c> -OPTFFF 4,57,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_crc.c> -OPTFFF 4,58,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dac.c> -OPTFFF 4,59,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dbgmcu.c> -OPTFFF 4,60,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dma.c> -OPTFFF 4,61,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_exti.c> -OPTFFF 4,62,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_flash.c> -OPTFFF 4,63,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_fsmc.c> -OPTFFF 4,64,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_gpio.c> -OPTFFF 4,65,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_i2c.c> -OPTFFF 4,66,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_iwdg.c> -OPTFFF 4,67,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_pwr.c> -OPTFFF 4,68,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rcc.c> -OPTFFF 4,69,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rtc.c> -OPTFFF 4,70,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_sdio.c> -OPTFFF 4,71,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_spi.c> -OPTFFF 4,72,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_tim.c> -OPTFFF 4,73,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_usart.c> -OPTFFF 4,74,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_wwdg.c> -OPTFFF 5,75,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\otgd_fs_cal.c> -OPTFFF 5,76,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\otgd_fs_dev.c> -OPTFFF 5,77,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\otgd_fs_int.c> -OPTFFF 5,78,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\otgd_fs_pcd.c> -OPTFFF 5,79,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_core.c> -OPTFFF 5,80,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_init.c> -OPTFFF 5,81,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_int.c> -OPTFFF 5,82,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_mem.c> -OPTFFF 5,83,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_regs.c> -OPTFFF 5,84,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_sil.c> -OPTFFF 6,85,1,0,0,0,0,0,<.\Libraries\CMSIS\Core\CM3\core_cm3.c> -OPTFFF 6,86,1,0,0,0,0,0,<.\Libraries\CMSIS\Core\CM3\system_stm32f10x.c> -OPTFFF 7,87,1,0,0,0,0,0,<..\..\finsh\finsh_compiler.c> -OPTFFF 7,88,1,0,0,0,0,0,<..\..\finsh\finsh_error.c> -OPTFFF 7,89,1,0,0,0,0,0,<..\..\finsh\finsh_heap.c> -OPTFFF 7,90,1,0,0,0,0,0,<..\..\finsh\finsh_init.c> -OPTFFF 7,91,1,0,0,0,0,0,<..\..\finsh\finsh_node.c> -OPTFFF 7,92,1,0,0,0,0,0,<..\..\finsh\finsh_ops.c> -OPTFFF 7,93,1,0,0,0,0,0,<..\..\finsh\finsh_parser.c> -OPTFFF 7,94,1,0,0,0,0,0,<..\..\finsh\finsh_token.c> -OPTFFF 7,95,1,0,0,0,0,0,<..\..\finsh\finsh_var.c> -OPTFFF 7,96,1,0,0,0,0,0,<..\..\finsh\finsh_vm.c> -OPTFFF 7,97,1,0,0,0,0,0,<..\..\finsh\shell.c> -OPTFFF 7,98,1,0,0,0,0,0,<..\..\finsh\symbol.c> -OPTFFF 7,99,1,0,0,0,0,0,<..\..\finsh\cmd.c> -OPTFFF 8,100,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_init.c> -OPTFFF 8,101,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_fs.c> -OPTFFF 8,102,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_raw.c> -OPTFFF 8,103,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_util.c> -OPTFFF 8,104,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_posix.c> -OPTFFF 8,105,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\elmfat\dfs_elm.c> -OPTFFF 8,106,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\elmfat\ff.c> -OPTFFF 9,107,1,0,0,0,0,0,<..\..\net\lwip\src\core\dhcp.c> -OPTFFF 9,108,1,0,0,0,0,0,<..\..\net\lwip\src\core\dns.c> -OPTFFF 9,109,1,0,0,0,0,0,<..\..\net\lwip\src\core\init.c> -OPTFFF 9,110,1,0,0,0,0,0,<..\..\net\lwip\src\core\memp.c> -OPTFFF 9,111,1,0,0,0,0,0,<..\..\net\lwip\src\core\netif.c> -OPTFFF 9,112,1,0,0,0,0,0,<..\..\net\lwip\src\core\pbuf.c> -OPTFFF 9,113,1,0,0,0,0,0,<..\..\net\lwip\src\core\raw.c> -OPTFFF 9,114,1,0,0,0,0,0,<..\..\net\lwip\src\core\stats.c> -OPTFFF 9,115,1,0,0,0,0,0,<..\..\net\lwip\src\core\sys.c> -OPTFFF 9,116,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp.c> -OPTFFF 9,117,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp_in.c> -OPTFFF 9,118,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp_out.c> -OPTFFF 9,119,1,0,0,0,0,0,<..\..\net\lwip\src\core\udp.c> -OPTFFF 9,120,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\autoip.c> -OPTFFF 9,121,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\icmp.c> -OPTFFF 9,122,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\igmp.c> -OPTFFF 9,123,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\inet.c> -OPTFFF 9,124,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\inet_chksum.c> -OPTFFF 9,125,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip.c> -OPTFFF 9,126,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip_addr.c> -OPTFFF 9,127,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip_frag.c> -OPTFFF 9,128,1,0,0,0,0,0,<..\..\net\lwip\src\core\snmp\msg_in.c> -OPTFFF 9,129,1,0,0,0,0,0,<..\..\net\lwip\src\core\snmp\msg_out.c> -OPTFFF 9,130,1,0,0,0,0,0,<..\..\net\lwip\src\api\api_lib.c> -OPTFFF 9,131,1,0,0,0,0,0,<..\..\net\lwip\src\api\api_msg.c> -OPTFFF 9,132,1,0,0,0,0,0,<..\..\net\lwip\src\api\err.c> -OPTFFF 9,133,1,0,0,0,0,0,<..\..\net\lwip\src\api\netbuf.c> -OPTFFF 9,134,1,0,0,0,0,0,<..\..\net\lwip\src\api\netdb.c> -OPTFFF 9,135,1,0,0,0,0,0,<..\..\net\lwip\src\api\netifapi.c> -OPTFFF 9,136,1,0,0,0,0,0,<..\..\net\lwip\src\api\tcpip.c> -OPTFFF 9,137,1,0,0,0,0,0,<..\..\net\lwip\src\netif\etharp.c> -OPTFFF 9,138,1,0,0,0,0,0,<..\..\net\lwip\src\netif\ethernetif.c> -OPTFFF 9,139,1,0,0,0,0,0,<..\..\net\lwip\src\netif\loopif.c> -OPTFFF 9,140,1,0,0,0,0,0,<..\..\net\lwip\src\arch\sys_arch_init.c> -OPTFFF 9,141,1,0,0,0,0,0,<..\..\net\lwip\src\arch\sys_arch.c> -OPTFFF 9,142,1,0,0,0,0,0,<..\..\net\lwip\src\api\sockets.c> -OPTFFF 10,143,1,0,0,0,0,0,<.\mp3\mp3dec.c> -OPTFFF 10,144,1,0,0,0,0,0,<.\mp3\mp3tabs.c> -OPTFFF 10,145,1,0,0,0,0,0,<.\mp3\real\bitstream.c> -OPTFFF 10,146,1,0,0,0,0,0,<.\mp3\real\buffers.c> -OPTFFF 10,147,1,0,0,0,0,0,<.\mp3\real\dct32.c> -OPTFFF 10,148,1,0,0,0,0,0,<.\mp3\real\dequant.c> -OPTFFF 10,149,1,0,0,0,0,0,<.\mp3\real\dqchan.c> -OPTFFF 10,150,1,0,0,0,0,0,<.\mp3\real\huffman.c> -OPTFFF 10,151,1,0,0,0,0,0,<.\mp3\real\hufftabs.c> -OPTFFF 10,152,1,0,0,0,0,0,<.\mp3\real\imdct.c> -OPTFFF 10,153,1,0,0,0,0,0,<.\mp3\real\scalfact.c> -OPTFFF 10,154,1,0,0,0,0,0,<.\mp3\real\stproc.c> -OPTFFF 10,155,1,0,0,0,0,0,<.\mp3\real\subband.c> -OPTFFF 10,156,1,0,0,0,0,0,<.\mp3\real\trigtabs.c> -OPTFFF 10,157,2,0,0,0,0,0,<.\mp3\real\arm\asmpoly_thumb2.s> -OPTFFF 10,158,2,0,0,0,0,0,<.\mp3\real\arm\asmmisc.s> -OPTFFF 11,159,1,0,0,0,0,0,<..\..\rtgui\common\rtgui_object.c> -OPTFFF 11,160,1,0,0,0,0,0,<..\..\rtgui\common\rtgui_system.c> -OPTFFF 11,161,1,0,0,0,0,0,<..\..\rtgui\common\rtgui_theme.c> -OPTFFF 11,162,1,0,0,0,0,0,<..\..\rtgui\common\asc12font.c> -OPTFFF 11,163,1,0,0,0,0,0,<..\..\rtgui\common\asc16font.c> -OPTFFF 11,164,1,0,0,0,0,0,<..\..\rtgui\common\color.c> -OPTFFF 11,165,1,0,0,0,0,0,<..\..\rtgui\common\dc.c> -OPTFFF 11,166,1,0,0,0,0,0,<..\..\rtgui\common\dc_buffer.c> -OPTFFF 11,167,1,0,0,0,0,0,<..\..\rtgui\common\dc_hw.c> -OPTFFF 11,168,1,0,0,0,0,0,<..\..\rtgui\common\filerw.c> -OPTFFF 11,169,1,0,0,0,0,0,<..\..\rtgui\common\font.c> -OPTFFF 11,170,1,0,0,0,0,0,<..\..\rtgui\common\image.c> -OPTFFF 11,171,1,0,0,0,0,0,<..\..\rtgui\common\image_xpm.c> -OPTFFF 11,172,1,0,0,0,0,0,<..\..\rtgui\common\image_hdc.c> -OPTFFF 11,173,1,0,0,0,0,0,<..\..\rtgui\common\region.c> -OPTFFF 11,174,1,0,0,0,0,0,<..\..\rtgui\server\server.c> -OPTFFF 11,175,1,0,0,0,0,0,<..\..\rtgui\server\driver.c> -OPTFFF 11,176,1,0,0,0,0,0,<..\..\rtgui\server\panel.c> -OPTFFF 11,177,1,0,0,0,0,0,<..\..\rtgui\widgets\widget.c> -OPTFFF 11,178,1,0,0,0,0,0,<..\..\rtgui\widgets\window.c> -OPTFFF 11,179,1,0,0,0,0,0,<..\..\rtgui\widgets\workbench.c> -OPTFFF 11,180,1,0,0,0,0,0,<..\..\rtgui\widgets\view.c> -OPTFFF 11,181,1,0,0,0,0,0,<..\..\rtgui\widgets\box.c> -OPTFFF 11,182,1,0,0,0,0,0,<..\..\rtgui\widgets\button.c> -OPTFFF 11,183,1,0,0,0,0,0,<..\..\rtgui\widgets\container.c> -OPTFFF 11,184,1,0,0,0,0,0,<..\..\rtgui\widgets\iconbox.c> -OPTFFF 11,185,1,0,0,0,0,0,<..\..\rtgui\widgets\label.c> -OPTFFF 11,186,1,0,0,0,0,0,<..\..\rtgui\widgets\textbox.c> -OPTFFF 11,187,1,0,0,0,0,0,<..\..\rtgui\widgets\title.c> -OPTFFF 11,188,1,0,0,0,0,0,<..\..\rtgui\widgets\toplevel.c> -OPTFFF 11,189,1,0,0,0,0,0,<..\..\rtgui\server\mouse.c> -OPTFFF 11,190,1,0,0,0,0,0,<..\..\rtgui\server\topwin.c> -OPTFFF 11,191,1,0,0,0,0,0,<..\..\rtgui\common\font_hz_file.c> -OPTFFF 11,192,1,0,0,0,0,0,<..\..\rtgui\common\hz16font.c> -OPTFFF 11,193,1,0,0,0,0,0,<..\..\rtgui\common\hz12font.c> -OPTFFF 11,194,1,0,0,0,0,0,<..\..\rtgui\common\arial16font.c> -OPTFFF 11,195,1,0,0,0,0,0,<..\..\rtgui\common\arial12font.c> -OPTFFF 12,196,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\hw_config.c> -OPTFFF 12,197,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\mass_mal.c> -OPTFFF 12,198,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\memory.c> -OPTFFF 12,199,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_bot.c> -OPTFFF 12,200,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\scsi_data.c> -OPTFFF 12,201,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_desc.c> -OPTFFF 12,202,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_endp.c> -OPTFFF 12,203,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_istr.c> -OPTFFF 12,204,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_prop.c> -OPTFFF 12,205,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_pwr.c> -OPTFFF 12,206,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_scsi.c> -OPTFFF 12,207,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_main.c> +OPTFFF 1,31,1,318767104,0,0,0,0,<.\remote.c> +OPTFFF 1,32,1,0,0,0,0,0,<..\..\examples\file\writespeed.c> +OPTFFF 1,33,1,0,0,0,0,0,<..\..\examples\file\listdir.c> +OPTFFF 1,34,1,0,0,0,0,0,<..\..\examples\file\readspeed.c> +OPTFFF 1,35,1,0,0,0,0,0,<..\..\examples\file\readwrite.c> +OPTFFF 1,36,1,16777216,0,224,224,0,<.\picture.c> { 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,22,0,0,0,29,0,0,0,155,2,0,0,247,0,0,0 } +OPTFFF 2,37,1,0,0,0,0,0,<..\..\src\clock.c> +OPTFFF 2,38,1,721420288,0,0,0,0,<..\..\src\idle.c> +OPTFFF 2,39,1,0,0,0,0,0,<..\..\src\ipc.c> +OPTFFF 2,40,1,0,0,0,0,0,<..\..\src\mempool.c> +OPTFFF 2,41,1,0,0,0,0,0,<..\..\src\mem.c> +OPTFFF 2,42,1,0,0,0,0,0,<..\..\src\object.c> +OPTFFF 2,43,1,0,0,0,0,0,<..\..\src\scheduler.c> +OPTFFF 2,44,1,0,0,0,0,0,<..\..\src\thread.c> +OPTFFF 2,45,1,0,0,0,0,0,<..\..\src\timer.c> +OPTFFF 2,46,1,0,0,0,0,0,<..\..\src\irq.c> +OPTFFF 2,47,1,0,0,0,0,0,<..\..\src\kservice.c> +OPTFFF 2,48,1,0,0,0,0,0,<..\..\src\device.c> +OPTFFF 2,49,1,0,0,0,0,0,<..\..\src\slab.c> +OPTFFF 3,50,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\stack.c> +OPTFFF 3,51,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\interrupt.c> +OPTFFF 3,52,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\cpu.c> +OPTFFF 3,53,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\serial.c> +OPTFFF 3,54,2,0,0,0,0,0,<..\..\libcpu\arm\stm32\context_rvds.S> +OPTFFF 3,55,2,654311424,0,0,0,0,<..\..\libcpu\arm\stm32\start_rvds.s> +OPTFFF 3,56,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\fault.c> +OPTFFF 3,57,2,0,0,0,0,0,<..\..\libcpu\arm\stm32\fault_rvds.S> +OPTFFF 4,58,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\misc.c> +OPTFFF 4,59,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_adc.c> +OPTFFF 4,60,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_bkp.c> +OPTFFF 4,61,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_can.c> +OPTFFF 4,62,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_crc.c> +OPTFFF 4,63,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dac.c> +OPTFFF 4,64,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dbgmcu.c> +OPTFFF 4,65,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dma.c> +OPTFFF 4,66,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_exti.c> +OPTFFF 4,67,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_flash.c> +OPTFFF 4,68,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_fsmc.c> +OPTFFF 4,69,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_gpio.c> +OPTFFF 4,70,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_i2c.c> +OPTFFF 4,71,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_iwdg.c> +OPTFFF 4,72,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_pwr.c> +OPTFFF 4,73,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rcc.c> +OPTFFF 4,74,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rtc.c> +OPTFFF 4,75,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_sdio.c> +OPTFFF 4,76,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_spi.c> +OPTFFF 4,77,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_tim.c> +OPTFFF 4,78,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_usart.c> +OPTFFF 4,79,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_wwdg.c> +OPTFFF 5,80,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\otgd_fs_cal.c> +OPTFFF 5,81,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\otgd_fs_dev.c> +OPTFFF 5,82,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\otgd_fs_int.c> +OPTFFF 5,83,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\otgd_fs_pcd.c> +OPTFFF 5,84,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_core.c> +OPTFFF 5,85,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_init.c> +OPTFFF 5,86,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_int.c> +OPTFFF 5,87,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_mem.c> +OPTFFF 5,88,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_regs.c> +OPTFFF 5,89,1,0,0,0,0,0,<.\Libraries\STM32_USB-FS-Device_Driver\src\usb_sil.c> +OPTFFF 6,90,1,0,0,0,0,0,<.\Libraries\CMSIS\Core\CM3\core_cm3.c> +OPTFFF 6,91,1,0,0,0,0,0,<.\Libraries\CMSIS\Core\CM3\system_stm32f10x.c> +OPTFFF 7,92,1,0,0,0,0,0,<..\..\finsh\finsh_compiler.c> +OPTFFF 7,93,1,0,0,0,0,0,<..\..\finsh\finsh_error.c> +OPTFFF 7,94,1,0,0,0,0,0,<..\..\finsh\finsh_heap.c> +OPTFFF 7,95,1,0,0,0,0,0,<..\..\finsh\finsh_init.c> +OPTFFF 7,96,1,0,0,0,0,0,<..\..\finsh\finsh_node.c> +OPTFFF 7,97,1,0,0,0,0,0,<..\..\finsh\finsh_ops.c> +OPTFFF 7,98,1,0,0,0,0,0,<..\..\finsh\finsh_parser.c> +OPTFFF 7,99,1,0,0,0,0,0,<..\..\finsh\finsh_token.c> +OPTFFF 7,100,1,0,0,0,0,0,<..\..\finsh\finsh_var.c> +OPTFFF 7,101,1,0,0,0,0,0,<..\..\finsh\finsh_vm.c> +OPTFFF 7,102,1,0,0,0,0,0,<..\..\finsh\shell.c> +OPTFFF 7,103,1,0,0,0,0,0,<..\..\finsh\symbol.c> +OPTFFF 7,104,1,167772160,0,0,0,0,<..\..\finsh\cmd.c> +OPTFFF 8,105,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_init.c> +OPTFFF 8,106,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_fs.c> +OPTFFF 8,107,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_raw.c> +OPTFFF 8,108,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_util.c> +OPTFFF 8,109,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_posix.c> +OPTFFF 8,110,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\elmfat\dfs_elm.c> +OPTFFF 8,111,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\elmfat\ff.c> +OPTFFF 9,112,1,0,0,0,0,0,<..\..\net\lwip\src\core\dhcp.c> +OPTFFF 9,113,1,0,0,0,0,0,<..\..\net\lwip\src\core\dns.c> +OPTFFF 9,114,1,0,0,0,0,0,<..\..\net\lwip\src\core\init.c> +OPTFFF 9,115,1,0,0,0,0,0,<..\..\net\lwip\src\core\memp.c> +OPTFFF 9,116,1,0,0,0,0,0,<..\..\net\lwip\src\core\netif.c> +OPTFFF 9,117,1,16777216,0,528,528,0,<..\..\net\lwip\src\core\pbuf.c> { 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,0,0,0,0,0,0,0,0,132,2,0,0,232,0,0,0 } +OPTFFF 9,118,1,0,0,0,0,0,<..\..\net\lwip\src\core\raw.c> +OPTFFF 9,119,1,0,0,0,0,0,<..\..\net\lwip\src\core\stats.c> +OPTFFF 9,120,1,0,0,0,0,0,<..\..\net\lwip\src\core\sys.c> +OPTFFF 9,121,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp.c> +OPTFFF 9,122,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp_in.c> +OPTFFF 9,123,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp_out.c> +OPTFFF 9,124,1,0,0,0,0,0,<..\..\net\lwip\src\core\udp.c> +OPTFFF 9,125,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\autoip.c> +OPTFFF 9,126,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\icmp.c> +OPTFFF 9,127,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\igmp.c> +OPTFFF 9,128,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\inet.c> +OPTFFF 9,129,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\inet_chksum.c> +OPTFFF 9,130,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip.c> +OPTFFF 9,131,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip_addr.c> +OPTFFF 9,132,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip_frag.c> +OPTFFF 9,133,1,0,0,0,0,0,<..\..\net\lwip\src\core\snmp\msg_in.c> +OPTFFF 9,134,1,0,0,0,0,0,<..\..\net\lwip\src\core\snmp\msg_out.c> +OPTFFF 9,135,1,0,0,0,0,0,<..\..\net\lwip\src\api\api_lib.c> +OPTFFF 9,136,1,0,0,0,0,0,<..\..\net\lwip\src\api\api_msg.c> +OPTFFF 9,137,1,0,0,0,0,0,<..\..\net\lwip\src\api\err.c> +OPTFFF 9,138,1,0,0,0,0,0,<..\..\net\lwip\src\api\netbuf.c> +OPTFFF 9,139,1,0,0,0,0,0,<..\..\net\lwip\src\api\netdb.c> +OPTFFF 9,140,1,0,0,0,0,0,<..\..\net\lwip\src\api\netifapi.c> +OPTFFF 9,141,1,0,0,0,0,0,<..\..\net\lwip\src\api\tcpip.c> +OPTFFF 9,142,1,0,0,0,0,0,<..\..\net\lwip\src\netif\etharp.c> +OPTFFF 9,143,1,33554432,0,0,0,0,<..\..\net\lwip\src\netif\ethernetif.c> +OPTFFF 9,144,1,0,0,0,0,0,<..\..\net\lwip\src\netif\loopif.c> +OPTFFF 9,145,1,0,0,0,0,0,<..\..\net\lwip\src\arch\sys_arch_init.c> +OPTFFF 9,146,1,0,0,0,0,0,<..\..\net\lwip\src\arch\sys_arch.c> +OPTFFF 9,147,1,0,0,0,0,0,<..\..\net\lwip\src\api\sockets.c> +OPTFFF 10,148,1,0,0,0,0,0,<.\mp3\mp3dec.c> +OPTFFF 10,149,1,0,0,0,0,0,<.\mp3\mp3tabs.c> +OPTFFF 10,150,1,0,0,0,0,0,<.\mp3\real\bitstream.c> +OPTFFF 10,151,1,0,0,0,0,0,<.\mp3\real\buffers.c> +OPTFFF 10,152,1,0,0,0,0,0,<.\mp3\real\dct32.c> +OPTFFF 10,153,1,0,0,0,0,0,<.\mp3\real\dequant.c> +OPTFFF 10,154,1,0,0,0,0,0,<.\mp3\real\dqchan.c> +OPTFFF 10,155,1,0,0,0,0,0,<.\mp3\real\huffman.c> +OPTFFF 10,156,1,0,0,0,0,0,<.\mp3\real\hufftabs.c> +OPTFFF 10,157,1,0,0,0,0,0,<.\mp3\real\imdct.c> +OPTFFF 10,158,1,0,0,0,0,0,<.\mp3\real\scalfact.c> +OPTFFF 10,159,1,0,0,0,0,0,<.\mp3\real\stproc.c> +OPTFFF 10,160,1,0,0,0,0,0,<.\mp3\real\subband.c> +OPTFFF 10,161,1,0,0,0,0,0,<.\mp3\real\trigtabs.c> +OPTFFF 10,162,2,0,0,0,0,0,<.\mp3\real\arm\asmpoly_thumb2.s> +OPTFFF 10,163,2,0,0,0,0,0,<.\mp3\real\arm\asmmisc.s> +OPTFFF 11,164,1,0,0,0,0,0,<..\..\rtgui\common\rtgui_object.c> +OPTFFF 11,165,1,50331648,0,0,0,0,<..\..\rtgui\common\rtgui_system.c> +OPTFFF 11,166,1,83886080,0,0,0,0,<..\..\rtgui\common\rtgui_theme.c> +OPTFFF 11,167,1,0,0,0,0,0,<..\..\rtgui\common\asc12font.c> +OPTFFF 11,168,1,0,0,0,0,0,<..\..\rtgui\common\asc16font.c> +OPTFFF 11,169,1,0,0,0,0,0,<..\..\rtgui\common\color.c> +OPTFFF 11,170,1,0,0,0,0,0,<..\..\rtgui\common\dc.c> +OPTFFF 11,171,1,0,0,0,0,0,<..\..\rtgui\common\dc_buffer.c> +OPTFFF 11,172,1,385875968,0,0,0,0,<..\..\rtgui\common\dc_hw.c> +OPTFFF 11,173,1,0,0,0,0,0,<..\..\rtgui\common\filerw.c> +OPTFFF 11,174,1,419430400,0,0,0,0,<..\..\rtgui\common\font.c> +OPTFFF 11,175,1,352321536,0,0,0,0,<..\..\rtgui\common\image.c> +OPTFFF 11,176,1,0,0,0,0,0,<..\..\rtgui\common\image_xpm.c> +OPTFFF 11,177,1,0,0,0,0,0,<..\..\rtgui\common\image_hdc.c> +OPTFFF 11,178,1,0,0,0,0,0,<..\..\rtgui\common\region.c> +OPTFFF 11,179,1,0,0,0,0,0,<..\..\rtgui\server\server.c> +OPTFFF 11,180,1,0,0,0,0,0,<..\..\rtgui\server\driver.c> +OPTFFF 11,181,1,0,0,0,0,0,<..\..\rtgui\server\panel.c> +OPTFFF 11,182,1,0,0,0,0,0,<..\..\rtgui\widgets\widget.c> +OPTFFF 11,183,1,0,0,0,0,0,<..\..\rtgui\widgets\window.c> +OPTFFF 11,184,1,0,0,0,0,0,<..\..\rtgui\widgets\workbench.c> +OPTFFF 11,185,1,0,0,0,0,0,<..\..\rtgui\widgets\view.c> +OPTFFF 11,186,1,0,0,0,0,0,<..\..\rtgui\widgets\box.c> +OPTFFF 11,187,1,0,0,0,0,0,<..\..\rtgui\widgets\button.c> +OPTFFF 11,188,1,0,0,0,0,0,<..\..\rtgui\widgets\container.c> +OPTFFF 11,189,1,0,0,0,0,0,<..\..\rtgui\widgets\iconbox.c> +OPTFFF 11,190,1,0,0,0,0,0,<..\..\rtgui\widgets\label.c> +OPTFFF 11,191,1,0,0,0,0,0,<..\..\rtgui\widgets\textbox.c> +OPTFFF 11,192,1,0,0,0,0,0,<..\..\rtgui\widgets\title.c> +OPTFFF 11,193,1,0,0,0,0,0,<..\..\rtgui\widgets\toplevel.c> +OPTFFF 11,194,1,0,0,0,0,0,<..\..\rtgui\server\mouse.c> +OPTFFF 11,195,1,0,0,0,0,0,<..\..\rtgui\server\topwin.c> +OPTFFF 11,196,1,0,0,0,0,0,<..\..\rtgui\common\font_hz_file.c> +OPTFFF 11,197,1,0,0,0,0,0,<..\..\rtgui\common\hz16font.c> +OPTFFF 11,198,1,0,0,0,0,0,<..\..\rtgui\common\hz12font.c> +OPTFFF 12,199,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\hw_config.c> +OPTFFF 12,200,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\mass_mal.c> +OPTFFF 12,201,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\memory.c> +OPTFFF 12,202,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_bot.c> +OPTFFF 12,203,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\scsi_data.c> +OPTFFF 12,204,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_desc.c> +OPTFFF 12,205,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_endp.c> +OPTFFF 12,206,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_istr.c> +OPTFFF 12,207,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_prop.c> +OPTFFF 12,208,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_pwr.c> +OPTFFF 12,209,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_scsi.c> +OPTFFF 12,210,1,0,0,0,0,0,<.\Libraries\Mass_Storage\src\usb_main.c> +ExtF 190,198,0,{ 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,66,0,0,0,87,0,0,0,199,2,0,0,49,1,0,0 } TARGOPT 1, (RT-Thread STM32 Radio) ADSCLK=8000000 @@ -249,9 +253,12 @@ TARGOPT 1, (RT-Thread STM32 Radio) OPTKEY 0,(DLGTARM)((1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=60,91,584,445,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(124=-1,-1,-1,-1,0)(125=-1,-1,-1,-1,0)(126=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)) OPTKEY 0,(ARMDBGFLAGS)(-T0) OPTKEY 0,(DLGUARM)((105=150,189,819,540,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0)) - OPTKEY 0,(JL2CM3)(-U11111117 -O718 -S8 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TRE0 -FO27 -FD20000000 -FC800 -FN1 -FF0STM32F10x_512 -FS08000000 -FL080000) + OPTKEY 0,(JL2CM3)(-U20090110 -O718 -S8 -C0 -JU1 -JI127.0.0.1 -JP0 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO27 -FD20000000 -FC800 -FN1 -FF0STM32F10x_512 -FS08000000 -FL080000) + OPTBB 0,0,551,1,134302702,0,0,0,0,1,()() + OPTBB 1,0,123,1,134319464,0,0,0,0,1,()() OPTWA 0,1,(_mp) - OPTWA 1,1,(tinfo,0x0A) + OPTWA 1,1,(_netbuf) + OPTWA 2,1,(decoder) OPTMM 1,8,(text) OPTMM 2,8,(mimeBuffer) OPTDF 0x82 diff --git a/bsp/stm32_radio/project.Uv2 b/bsp/stm32_radio/project.Uv2 index 57ee313f6389ffc2e1ee09ca003f348523a03790..fa3a1819030707ce788a5a4e96b914d8cdf400c3 100644 --- a/bsp/stm32_radio/project.Uv2 +++ b/bsp/stm32_radio/project.Uv2 @@ -47,6 +47,7 @@ File 1,1,<.\ili9325\ili9320.c> File 1,1,<.\codec.c> File 1,1,<.\spi_flash.c> File 1,1,<.\remote.c> +File 1,1,<.\picture.c> File 2,1,<..\..\src\clock.c> File 2,1,<..\..\src\idle.c> File 2,1,<..\..\src\ipc.c> diff --git a/bsp/stm32_radio/rtconfig.h b/bsp/stm32_radio/rtconfig.h index 20860de64828f9eafc92dac55afa624bf0746982..bf5952159ee06d3bdf92afc6b245f98c091052e8 100644 --- a/bsp/stm32_radio/rtconfig.h +++ b/bsp/stm32_radio/rtconfig.h @@ -120,6 +120,9 @@ /* TCP sender buffer space */ #define RT_LWIP_TCP_SND_BUF 2048 +/* TCP Window Size */ +#define RT_LWIP_TCP_WND (1024 * 2) + /* Enable SNMP protocol */ /* #define RT_LWIP_SNMP */