diff --git a/bsp/mini2440/SConscript b/bsp/mini2440/SConscript index b0e7849304..4830a8530f 100644 --- a/bsp/mini2440/SConscript +++ b/bsp/mini2440/SConscript @@ -11,7 +11,7 @@ group['CPPPATH'] = [RTT_ROOT + '/bsp/mini2440'] group['CPPDEFINES'] = [] group['LINKFLAGS'] = '' -src_bsp = ['application.c', 'startup.c', 'board.c', 'calendar.c', 'calibration.c'] +src_bsp = ['application.c', 'startup.c', 'board.c', 'calendar.c'] src_drv = ['console.c', 'led.c'] if rtconfig.RT_USING_DFS: @@ -21,7 +21,7 @@ if rtconfig.RT_USING_LWIP: src_drv += ['dm9000.c'] if rtconfig.RT_USING_RTGUI: - src_drv += ['touch.c', 'key.c'] + src_drv += ['touch.c', 'key.c', 'calibration.c'] if rtconfig.RT_USING_RTGUI: if rtconfig.RT_USING_LCD_TYPE == 'PNL_A70': @@ -31,6 +31,14 @@ if rtconfig.RT_USING_RTGUI: elif rtconfig.RT_USING_LCD_TYPE == 'PNL_T35': src_drv += ['lcd_t35.c'] +if rtconfig.RT_USING_FTK: + if rtconfig.RT_USING_LCD_TYPE == 'PNL_A70': + src_drv += ['lcd_a70.c'] + elif rtconfig.RT_USING_LCD_TYPE == 'PNL_N35': + src_drv += ['lcd_n35.c'] + elif rtconfig.RT_USING_LCD_TYPE == 'PNL_T35': + src_drv += ['lcd_t35.c'] + group['src'] = File(src_bsp + src_drv) # add group to project list diff --git a/bsp/mini2440/application.c b/bsp/mini2440/application.c index 0a8a93abe7..31966508a0 100644 --- a/bsp/mini2440/application.c +++ b/bsp/mini2440/application.c @@ -41,6 +41,10 @@ extern void rt_hw_touch_init(void); #endif +#ifdef RT_USING_FTK +#include "ftk.h" +#endif + void rt_init_thread_entry(void* parameter) { /* Filesystem Initialization */ @@ -94,6 +98,17 @@ void rt_init_thread_entry(void* parameter) rt_kprintf("TCP/IP initialized!\n"); } #endif + +#ifdef RT_USING_FTK + { + void rt_hw_lcd_init(); + int FTK_MAIN(int argc, char* argv[]); + + rt_hw_lcd_init(); + + FTK_MAIN(0, NULL); + } +#endif } void rt_led_thread_entry(void* parameter) @@ -121,7 +136,7 @@ int rt_application_init() #if (RT_THREAD_PRIORITY_MAX == 32) init_thread = rt_thread_create("init", rt_init_thread_entry, RT_NULL, - 2048, 8, 20); + RT_INIT_THREAD_STACK_SIZE, 8, 20); led_thread = rt_thread_create("led", rt_led_thread_entry, RT_NULL, @@ -129,7 +144,7 @@ int rt_application_init() #else init_thread = rt_thread_create("init", rt_init_thread_entry, RT_NULL, - 2048, 80, 20); + RT_INIT_THREAD_STACK_SIZE, 80, 20); led_thread = rt_thread_create("led", rt_led_thread_entry, RT_NULL, diff --git a/bsp/mini2440/lcd_a70.c b/bsp/mini2440/lcd_a70.c index e03dbe08d5..cde6bae463 100644 --- a/bsp/mini2440/lcd_a70.c +++ b/bsp/mini2440/lcd_a70.c @@ -278,6 +278,8 @@ void clear() } FINSH_FUNCTION_EXPORT(clear, clear screen); +#endif + void rt_hw_lcd_init() { GPB1_TO_OUT(); @@ -312,8 +314,8 @@ void rt_hw_lcd_init() lcd_power_enable(0, 1); lcd_envid_on_off(1); +#ifdef RT_USING_RTGUI /* add lcd driver into graphic driver */ rtgui_graphic_driver_add(&_rtgui_lcd_driver); -} - #endif +} diff --git a/bsp/mini2440/lcd_n35.c b/bsp/mini2440/lcd_n35.c index 5976dd44ca..7cfc8504cf 100644 --- a/bsp/mini2440/lcd_n35.c +++ b/bsp/mini2440/lcd_n35.c @@ -278,6 +278,8 @@ void clear() } FINSH_FUNCTION_EXPORT(clear, clear screen); +#endif + void rt_hw_lcd_init() { GPB1_TO_OUT(); @@ -312,8 +314,8 @@ void rt_hw_lcd_init() lcd_power_enable(0, 1); lcd_envid_on_off(1); +#ifdef RT_USING_RTGUI /* add lcd driver into graphic driver */ rtgui_graphic_driver_add(&_rtgui_lcd_driver); -} - #endif +} diff --git a/bsp/mini2440/lcd_t35.c b/bsp/mini2440/lcd_t35.c index d258e87440..aeee7e4f3c 100644 --- a/bsp/mini2440/lcd_t35.c +++ b/bsp/mini2440/lcd_t35.c @@ -279,6 +279,8 @@ void clear() } FINSH_FUNCTION_EXPORT(clear, clear screen); +#endif + void rt_hw_lcd_init() { GPB1_TO_OUT(); @@ -314,8 +316,8 @@ void rt_hw_lcd_init() lcd_power_enable(0, 1); lcd_envid_on_off(1); +#ifdef RT_USING_RTGUI /* add lcd driver into graphic driver */ rtgui_graphic_driver_add(&_rtgui_lcd_driver); -} - #endif +} diff --git a/bsp/mini2440/rtconfig.h b/bsp/mini2440/rtconfig.h index cdde730760..9174d9764b 100644 --- a/bsp/mini2440/rtconfig.h +++ b/bsp/mini2440/rtconfig.h @@ -2,6 +2,9 @@ #ifndef __RTTHREAD_CFG_H__ #define __RTTHREAD_CFG_H__ +/* Init thread stack space size */ +#define RT_INIT_THREAD_STACK_SIZE 2048 + /* RT_NAME_MAX*/ #define RT_NAME_MAX 8 @@ -213,4 +216,30 @@ /* use mouse cursor */ /* #define RTGUI_USING_MOUSE_CURSOR */ +/* SECTION: FTK support */ +/* using FTK support */ +#define RT_USING_FTK + +#ifdef RT_USING_FTK + +#undef RT_USING_RTGUI + +#ifndef RT_USING_NEWLIB +#define RT_USING_NEWLIB +#endif + +#ifndef DFS_USING_WORKDIR +#define DFS_USING_WORKDIR +#endif + +#undef RT_DFS_ELM_MAX_LFN +#define RT_DFS_ELM_MAX_LFN 64 + +#undef RT_USING_OVERFLOW_CHECK + +#undef RT_INIT_THREAD_STACK_SIZE +#define RT_INIT_THREAD_STACK_SIZE (256*1024) + +#endif + #endif