From f3bb2aa8b1515cf3c0193bbf3794ffba56de0dae Mon Sep 17 00:00:00 2001 From: wuyangyong Date: Tue, 23 Feb 2010 17:15:03 +0000 Subject: [PATCH] fix ili9325 driver git-svn-id: https://rt-thread.googlecode.com/svn/trunk@439 bbd45198-f89e-11dd-88c7-29a3b14d5316 --- bsp/stm32_radio/ili9325/ili9320.h | 15 - .../ili9325/{ili9320.c => ili9325.c} | 519 ++---------------- bsp/stm32_radio/ili9325/ili9325.h | 28 + bsp/stm32_radio/lcd.c | 67 ++- bsp/stm32_radio/project.Opt | 393 +++++++------ bsp/stm32_radio/project.Uv2 | 2 +- 6 files changed, 323 insertions(+), 701 deletions(-) delete mode 100644 bsp/stm32_radio/ili9325/ili9320.h rename bsp/stm32_radio/ili9325/{ili9320.c => ili9325.c} (50%) create mode 100644 bsp/stm32_radio/ili9325/ili9325.h diff --git a/bsp/stm32_radio/ili9325/ili9320.h b/bsp/stm32_radio/ili9325/ili9320.h deleted file mode 100644 index c766238313..0000000000 --- a/bsp/stm32_radio/ili9325/ili9320.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef ILI9320_H_INCLUDED -#define ILI9320_H_INCLUDED - -extern void ili9320_Initializtion(void); -extern void ili9320_SetCursor(u16 x,u16 y); -extern void ili9320_Clear(u16 Color); - -extern u16 ili9320_BGR2RGB(u16 c); - -extern void LCD_WriteRAM_Prepare(void); -extern void LCD_WriteRAM(u16 RGB_Code); -extern u16 LCD_ReadRAM(void); -extern void LCD_WriteReg(u8 LCD_Reg,u16 LCD_RegValue); - -#endif diff --git a/bsp/stm32_radio/ili9325/ili9320.c b/bsp/stm32_radio/ili9325/ili9325.c similarity index 50% rename from bsp/stm32_radio/ili9325/ili9320.c rename to bsp/stm32_radio/ili9325/ili9325.c index 7d0ee9761c..dd96124e37 100644 --- a/bsp/stm32_radio/ili9325/ili9320.c +++ b/bsp/stm32_radio/ili9325/ili9325.c @@ -1,5 +1,5 @@ #include "stm32f10x.h" -#include "ili9320.h" +#include "ili9325.h" /* LCD Registers */ #define R0 0x00 @@ -126,27 +126,6 @@ static u16 DeviceCode; -/* Private typedef -----------------------------------------------------------*/ -typedef struct -{ - vu16 LCD_REG; /* 0x00 */ - vu16 reserve1; /* 0x02 */ - vu16 reserve2; /* 0x04 */ - vu16 reserve3; /* 0x08 */ - vu16 LCD_RAM; -} LCD_ili9320_TypeDef; - -/* LCD is connected to the FSMC_Bank1_NOR/SRAM4 and NE4 is used as ship select signal */ -#define LCD_ili9320_BASE ((u32)(0x60000000 | 0x04000000)) -#define LCD ((LCD_ili9320_TypeDef *) LCD_ili9320_BASE) - -#if 0 -static void ili9320_Delay(vu32 nCount) -{ - for (; nCount != 0; nCount--); -} -#endif - static void LCD_CtrlLinesConfig(void) { GPIO_InitTypeDef GPIO_InitStructure; @@ -322,6 +301,18 @@ u16 LCD_ReadRAM(void) return LCD->LCD_RAM; } + +/* 读取指定地址的GRAM */ +unsigned short ili9325_ReadGRAM(unsigned short x,unsigned short y) +{ + unsigned short temp; + ili9325_SetCursor(x,y); + LCD->LCD_REG = R34; + /* dummy read */ + temp = LCD->LCD_RAM; + temp = LCD->LCD_RAM; + return temp; +} /******************************************************************************* * Function Name : LCD_SetCursor * Description : Sets the cursor position. @@ -332,14 +323,14 @@ u16 LCD_ReadRAM(void) *******************************************************************************/ -void LCD_SetCursor(u16 Xpos, u16 Ypos) -{ - LCD_WriteReg(0x06,Ypos>>8); - LCD_WriteReg(0x07,Ypos); - - LCD_WriteReg(0x02,Xpos>>8); - LCD_WriteReg(0x03,Xpos); -} +//void LCD_SetCursor(u16 Xpos, u16 Ypos) +//{ +// LCD_WriteReg(0x06,Ypos>>8); +// LCD_WriteReg(0x07,Ypos); +// +// LCD_WriteReg(0x02,Xpos>>8); +// LCD_WriteReg(0x03,Xpos); +//} void Delay(u32 nCount) @@ -347,11 +338,11 @@ void Delay(u32 nCount) u32 TimingDelay; while (nCount--) { - for (TimingDelay=0;TimingDelay<10000;TimingDelay++); + for (TimingDelay=0; TimingDelay<10000; TimingDelay++); } } -void ili9320_Initializtion(void) +void ili9325_Initializtion(void) { /***************************** ** 硬件连接说明 ** @@ -389,7 +380,7 @@ void ili9320_Initializtion(void) LCD_WriteReg(0x0000,0x0001); //start internal osc LCD_WriteReg(0x0001,0x0100); LCD_WriteReg(0x0002,0x0700); //power on sequence - /* [5:4]-ID~ID0 [3]-AM-1垂直-0水平 */ + /* [5:4]-ID1~ID0 [3]-AM-1垂直-0水平 */ LCD_WriteReg(0x0003,(1<<12)|(1<<5)|(0<<4) | (1<<3) ); LCD_WriteReg(0x0004,0x0000); LCD_WriteReg(0x0008,0x0207); @@ -403,25 +394,25 @@ void ili9320_Initializtion(void) LCD_WriteReg(0x0011,0x0007); LCD_WriteReg(0x0012,0x0000); LCD_WriteReg(0x0013,0x0000); - for (i=50000;i>0;i--); - for (i=50000;i>0;i--); + for (i=50000; i>0; i--); + for (i=50000; i>0; i--); LCD_WriteReg(0x0010,0x1590); LCD_WriteReg(0x0011,0x0227); - for (i=50000;i>0;i--); - for (i=50000;i>0;i--); + for (i=50000; i>0; i--); + for (i=50000; i>0; i--); LCD_WriteReg(0x0012,0x009c); - for (i=50000;i>0;i--); - for (i=50000;i>0;i--); + for (i=50000; i>0; i--); + for (i=50000; i>0; i--); LCD_WriteReg(0x0013,0x1900); LCD_WriteReg(0x0029,0x0023); LCD_WriteReg(0x002b,0x000e); - for (i=50000;i>0;i--); - for (i=50000;i>0;i--); + for (i=50000; i>0; i--); + for (i=50000; i>0; i--); LCD_WriteReg(0x0020,0x0000); LCD_WriteReg(0x0021,0x0000); /////////////////////////////////////////////////////// - for (i=50000;i>0;i--); - for (i=50000;i>0;i--); + for (i=50000; i>0; i--); + for (i=50000; i>0; i--); LCD_WriteReg(0x0030,0x0007); LCD_WriteReg(0x0031,0x0707); LCD_WriteReg(0x0032,0x0006); @@ -432,8 +423,8 @@ void ili9320_Initializtion(void) LCD_WriteReg(0x0039,0x0706); LCD_WriteReg(0x003c,0x0701); LCD_WriteReg(0x003d,0x000f); - for (i=50000;i>0;i--); - for (i=50000;i>0;i--); + for (i=50000; i>0; i--); + for (i=50000; i>0; i--); LCD_WriteReg(0x0050,0x0000); LCD_WriteReg(0x0051,0x00ef); LCD_WriteReg(0x0052,0x0000); @@ -460,415 +451,11 @@ void ili9320_Initializtion(void) LCD_WriteReg(0x0020,0x0000); LCD_WriteReg(0x0021,0x0000); } - #if 0 - else if (DeviceCode==0x9320||DeviceCode==0x9300) - { - LCD_WriteReg(0x00,0x0000); - LCD_WriteReg(0x01,0x0100); //Driver Output Contral. - LCD_WriteReg(0x02,0x0700); //LCD Driver Waveform Contral. -// LCD_WriteReg(0x03,0x1030); //Entry Mode Set. - LCD_WriteReg(0x03,0x1018); //Entry Mode Set. - - LCD_WriteReg(0x04,0x0000); //Scalling Contral. - LCD_WriteReg(0x08,0x0202); //Display Contral 2.(0x0207) - LCD_WriteReg(0x09,0x0000); //Display Contral 3.(0x0000) - LCD_WriteReg(0x0a,0x0000); //Frame Cycle Contal.(0x0000) - LCD_WriteReg(0x0c,(1<<0)); //Extern Display Interface Contral 1.(0x0000) - LCD_WriteReg(0x0d,0x0000); //Frame Maker Position. - LCD_WriteReg(0x0f,0x0000); //Extern Display Interface Contral 2. - - for (i=50000;i>0;i--); - for (i=50000;i>0;i--); - LCD_WriteReg(0x07,0x0101); //Display Contral. - for (i=50000;i>0;i--); - for (i=50000;i>0;i--); - - LCD_WriteReg(0x10,(1<<12)|(0<<8)|(1<<7)|(1<<6)|(0<<4)); //Power Control 1.(0x16b0) - LCD_WriteReg(0x11,0x0007); //Power Control 2.(0x0001) - LCD_WriteReg(0x12,(1<<8)|(1<<4)|(0<<0)); //Power Control 3.(0x0138) - LCD_WriteReg(0x13,0x0b00); //Power Control 4. - LCD_WriteReg(0x29,0x0000); //Power Control 7. - - LCD_WriteReg(0x2b,(1<<14)|(1<<4)); - - LCD_WriteReg(0x50,0); //Set X Start. - LCD_WriteReg(0x51,239); //Set X End. - LCD_WriteReg(0x52,0); //Set Y Start. - LCD_WriteReg(0x53,319); //Set Y End. - - LCD_WriteReg(0x60,0x2700); //Driver Output Control. - LCD_WriteReg(0x61,0x0001); //Driver Output Control. - LCD_WriteReg(0x6a,0x0000); //Vertical Srcoll Control. - - LCD_WriteReg(0x80,0x0000); //Display Position? Partial Display 1. - LCD_WriteReg(0x81,0x0000); //RAM Address Start? Partial Display 1. - LCD_WriteReg(0x82,0x0000); //RAM Address End-Partial Display 1. - LCD_WriteReg(0x83,0x0000); //Displsy Position? Partial Display 2. - LCD_WriteReg(0x84,0x0000); //RAM Address Start? Partial Display 2. - LCD_WriteReg(0x85,0x0000); //RAM Address End? Partial Display 2. - - LCD_WriteReg(0x90,(0<<7)|(16<<0)); //Frame Cycle Contral.(0x0013) - LCD_WriteReg(0x92,0x0000); //Panel Interface Contral 2.(0x0000) - LCD_WriteReg(0x93,0x0001); //Panel Interface Contral 3. - LCD_WriteReg(0x95,0x0110); //Frame Cycle Contral.(0x0110) - LCD_WriteReg(0x97,(0<<8)); // - LCD_WriteReg(0x98,0x0000); //Frame Cycle Contral. - - - LCD_WriteReg(0x07,0x0173); //(0x0173) - } - else if (DeviceCode==0x9331) - { - LCD_WriteReg(0x00E7, 0x1014); - LCD_WriteReg(0x0001, 0x0100); // set SS and SM bit 0x0100 - LCD_WriteReg(0x0002, 0x0200); // set 1 line inversion - LCD_WriteReg(0x0003, 0x1030); // set GRAM write direction and BGR=1. 0x1030 - LCD_WriteReg(0x0008, 0x0202); // set the back porch and front porch - LCD_WriteReg(0x0009, 0x0000); // set non-display area refresh cycle ISC[3:0] - LCD_WriteReg(0x000A, 0x0000); // FMARK function - LCD_WriteReg(0x000C, 0x0000); // RGB interface setting - LCD_WriteReg(0x000D, 0x0000); // Frame marker Position - LCD_WriteReg(0x000F, 0x0000); // RGB interface polarity - //*************Power On sequence ****************// - LCD_WriteReg(0x0010, 0x0000); // SAP, BT[3:0], AP, DSTB, SLP, STB - LCD_WriteReg(0x0011, 0x0007); // DC1[2:0], DC0[2:0], VC[2:0] - LCD_WriteReg(0x0012, 0x0000); // VREG1OUT voltage - LCD_WriteReg(0x0013, 0x0000); // VDV[4:0] for VCOM amplitude - ili9320_Delay(200); // Dis-charge capacitor power voltage - LCD_WriteReg(0x0010, 0x1690); // SAP, BT[3:0], AP, DSTB, SLP, STB - LCD_WriteReg(0x0011, 0x0227); // DC1[2:0], DC0[2:0], VC[2:0] - ili9320_Delay(50); // Delay 50ms - LCD_WriteReg(0x0012, 0x000C); // Internal reference voltage= Vci; - ili9320_Delay(50); // Delay 50ms - LCD_WriteReg(0x0013, 0x0800); // Set VDV[4:0] for VCOM amplitude - LCD_WriteReg(0x0029, 0x0011); // Set VCM[5:0] for VCOMH - LCD_WriteReg(0x002B, 0x000B); // Set Frame Rate - ili9320_Delay(50); // Delay 50ms - LCD_WriteReg(0x0020, 0x0000); // GRAM horizontal Address - LCD_WriteReg(0x0021, 0x0000); // GRAM Vertical Address - // ----------- Adjust the Gamma Curve ----------// - LCD_WriteReg(0x0030, 0x0000); - LCD_WriteReg(0x0031, 0x0106); - LCD_WriteReg(0x0032, 0x0000); - LCD_WriteReg(0x0035, 0x0204); - LCD_WriteReg(0x0036, 0x160A); - LCD_WriteReg(0x0037, 0x0707); - LCD_WriteReg(0x0038, 0x0106); - LCD_WriteReg(0x0039, 0x0707); - LCD_WriteReg(0x003C, 0x0402); - LCD_WriteReg(0x003D, 0x0C0F); - //------------------ Set GRAM area ---------------// - LCD_WriteReg(0x0050, 0x0000); // Horizontal GRAM Start Address - LCD_WriteReg(0x0051, 0x00EF); // Horizontal GRAM End Address - LCD_WriteReg(0x0052, 0x0000); // Vertical GRAM Start Address - LCD_WriteReg(0x0053, 0x013F); // Vertical GRAM Start Address - LCD_WriteReg(0x0060, 0x2700); // Gate Scan Line - LCD_WriteReg(0x0061, 0x0001); // NDL,VLE, REV - LCD_WriteReg(0x006A, 0x0000); // set scrolling line - //-------------- Partial Display Control ---------// - LCD_WriteReg(0x0080, 0x0000); - LCD_WriteReg(0x0081, 0x0000); - LCD_WriteReg(0x0082, 0x0000); - LCD_WriteReg(0x0083, 0x0000); - LCD_WriteReg(0x0084, 0x0000); - LCD_WriteReg(0x0085, 0x0000); - //-------------- Panel Control -------------------// - LCD_WriteReg(0x0090, 0x0010); - LCD_WriteReg(0x0092, 0x0600); - LCD_WriteReg(0x0007,0x0021); - ili9320_Delay(50); - LCD_WriteReg(0x0007,0x0061); - ili9320_Delay(50); - LCD_WriteReg(0x0007,0x0133); // 262K color and display ON - ili9320_Delay(50); - } - else if (DeviceCode==0x9919) - { - //*********POWER ON &RESET DISPLAY OFF - LCD_WriteReg(0x28,0x0006); - - LCD_WriteReg(0x00,0x0001); - - LCD_WriteReg(0x10,0x0000); - - LCD_WriteReg(0x01,0x72ef); - - LCD_WriteReg(0x02,0x0600); - - LCD_WriteReg(0x03,0x6a38); - - LCD_WriteReg(0x11,0x6874);//70 - - - // RAM WRITE DATA MASK - LCD_WriteReg(0x0f,0x0000); - // RAM WRITE DATA MASK - LCD_WriteReg(0x0b,0x5308); - - LCD_WriteReg(0x0c,0x0003); - - LCD_WriteReg(0x0d,0x000a); - - LCD_WriteReg(0x0e,0x2e00); //0030 - - LCD_WriteReg(0x1e,0x00be); - - LCD_WriteReg(0x25,0x8000); - - LCD_WriteReg(0x26,0x7800); - - LCD_WriteReg(0x27,0x0078); - - LCD_WriteReg(0x4e,0x0000); - - LCD_WriteReg(0x4f,0x0000); - - LCD_WriteReg(0x12,0x08d9); - - // -----------------Adjust the Gamma Curve----// - LCD_WriteReg(0x30,0x0000); //0007 - - LCD_WriteReg(0x31,0x0104); //0203 - - LCD_WriteReg(0x32,0x0100); //0001 - - LCD_WriteReg(0x33,0x0305); //0007 - - LCD_WriteReg(0x34,0x0505); //0007 - - LCD_WriteReg(0x35,0x0305); //0407 - - LCD_WriteReg(0x36,0x0707); //0407 - - LCD_WriteReg(0x37,0x0300); //0607 - - LCD_WriteReg(0x3a,0x1200); //0106 - - LCD_WriteReg(0x3b,0x0800); - - LCD_WriteReg(0x07,0x0033); - } - else if (DeviceCode==0x1505) - { - // second release on 3/5 ,luminance is acceptable,water wave appear during camera preview - LCD_WriteReg(0x0007,0x0000); - ili9320_Delay(5); - LCD_WriteReg(0x0012,0x011C);//0x011A why need to set several times? - LCD_WriteReg(0x00A4,0x0001);//NVM - // - LCD_WriteReg(0x0008,0x000F); - LCD_WriteReg(0x000A,0x0008); - LCD_WriteReg(0x000D,0x0008); - - //GAMMA CONTROL/ - LCD_WriteReg(0x0030,0x0707); - LCD_WriteReg(0x0031,0x0007); //0x0707 - LCD_WriteReg(0x0032,0x0603); - LCD_WriteReg(0x0033,0x0700); - LCD_WriteReg(0x0034,0x0202); - LCD_WriteReg(0x0035,0x0002); //?0x0606 - LCD_WriteReg(0x0036,0x1F0F); - LCD_WriteReg(0x0037,0x0707); //0x0f0f 0x0105 - LCD_WriteReg(0x0038,0x0000); - LCD_WriteReg(0x0039,0x0000); - LCD_WriteReg(0x003A,0x0707); - LCD_WriteReg(0x003B,0x0000); //0x0303 - LCD_WriteReg(0x003C,0x0007); //?0x0707 - LCD_WriteReg(0x003D,0x0000); //0x1313//0x1f08 - ili9320_Delay(5); - LCD_WriteReg(0x0007,0x0001); - LCD_WriteReg(0x0017,0x0001); //Power supply startup enable - ili9320_Delay(5); - - //power control// - LCD_WriteReg(0x0010,0x17A0); - LCD_WriteReg(0x0011,0x0217); //reference voltage VC[2:0] Vciout = 1.00*Vcivl - LCD_WriteReg(0x0012,0x011E);//0x011c //Vreg1out = Vcilvl*1.80 is it the same as Vgama1out ? - LCD_WriteReg(0x0013,0x0F00); //VDV[4:0]-->VCOM Amplitude VcomL = VcomH - Vcom Ampl - LCD_WriteReg(0x002A,0x0000); - LCD_WriteReg(0x0029,0x000A); //0x0001F Vcomh = VCM1[4:0]*Vreg1out gate source voltage?? - LCD_WriteReg(0x0012,0x013E); // 0x013C power supply on - //Coordinates Control// - LCD_WriteReg(0x0050,0x0000);//0x0e00 - LCD_WriteReg(0x0051,0x00EF); - LCD_WriteReg(0x0052,0x0000); - LCD_WriteReg(0x0053,0x013F); - //Pannel Image Control// - LCD_WriteReg(0x0060,0x2700); - LCD_WriteReg(0x0061,0x0001); - LCD_WriteReg(0x006A,0x0000); - LCD_WriteReg(0x0080,0x0000); - //Partial Image Control// - LCD_WriteReg(0x0081,0x0000); - LCD_WriteReg(0x0082,0x0000); - LCD_WriteReg(0x0083,0x0000); - LCD_WriteReg(0x0084,0x0000); - LCD_WriteReg(0x0085,0x0000); - //Panel Interface Control// - LCD_WriteReg(0x0090,0x0013); //0x0010 frenqucy - LCD_WriteReg(0x0092,0x0300); - LCD_WriteReg(0x0093,0x0005); - LCD_WriteReg(0x0095,0x0000); - LCD_WriteReg(0x0097,0x0000); - LCD_WriteReg(0x0098,0x0000); - - LCD_WriteReg(0x0001,0x0100); - LCD_WriteReg(0x0002,0x0700); - LCD_WriteReg(0x0003,0x1030); - LCD_WriteReg(0x0004,0x0000); - LCD_WriteReg(0x000C,0x0000); - LCD_WriteReg(0x000F,0x0000); - LCD_WriteReg(0x0020,0x0000); - LCD_WriteReg(0x0021,0x0000); - LCD_WriteReg(0x0007,0x0021); - ili9320_Delay(20); - LCD_WriteReg(0x0007,0x0061); - ili9320_Delay(20); - LCD_WriteReg(0x0007,0x0173); - ili9320_Delay(20); - } - else if (DeviceCode==0x8989) - { - LCD_WriteReg(0x0000,0x0001); - ili9320_Delay(50000); //打开晶振 - LCD_WriteReg(0x0003,0xA8A4); - ili9320_Delay(50000); //0xA8A4 - LCD_WriteReg(0x000C,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x000D,0x080C); - ili9320_Delay(50000); - LCD_WriteReg(0x000E,0x2B00); - ili9320_Delay(50000); - LCD_WriteReg(0x001E,0x00B0); - ili9320_Delay(50000); - LCD_WriteReg(0x0001,0x2B3F); - ili9320_Delay(50000); //驱动输出控制320*240 0x6B3F - LCD_WriteReg(0x0002,0x0600); - ili9320_Delay(50000); - LCD_WriteReg(0x0010,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0011,0x6070); - ili9320_Delay(50000); //0x4030 //定义数据格式 16位色 横屏 0x6058 - LCD_WriteReg(0x0005,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0006,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0016,0xEF1C); - ili9320_Delay(50000); - LCD_WriteReg(0x0017,0x0003); - ili9320_Delay(50000); - LCD_WriteReg(0x0007,0x0233); - ili9320_Delay(50000); //0x0233 - LCD_WriteReg(0x000B,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x000F,0x0000); - ili9320_Delay(50000); //扫描开始地址 - LCD_WriteReg(0x0041,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0042,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0048,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0049,0x013F); - ili9320_Delay(50000); - LCD_WriteReg(0x004A,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x004B,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0044,0xEF00); - ili9320_Delay(50000); - LCD_WriteReg(0x0045,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0046,0x013F); - ili9320_Delay(50000); - LCD_WriteReg(0x0030,0x0707); - ili9320_Delay(50000); - LCD_WriteReg(0x0031,0x0204); - ili9320_Delay(50000); - LCD_WriteReg(0x0032,0x0204); - ili9320_Delay(50000); - LCD_WriteReg(0x0033,0x0502); - ili9320_Delay(50000); - LCD_WriteReg(0x0034,0x0507); - ili9320_Delay(50000); - LCD_WriteReg(0x0035,0x0204); - ili9320_Delay(50000); - LCD_WriteReg(0x0036,0x0204); - ili9320_Delay(50000); - LCD_WriteReg(0x0037,0x0502); - ili9320_Delay(50000); - LCD_WriteReg(0x003A,0x0302); - ili9320_Delay(50000); - LCD_WriteReg(0x003B,0x0302); - ili9320_Delay(50000); - LCD_WriteReg(0x0023,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0024,0x0000); - ili9320_Delay(50000); - LCD_WriteReg(0x0025,0x8000); - ili9320_Delay(50000); - LCD_WriteReg(0x004f,0); //行首址0 - LCD_WriteReg(0x004e,0); //列首址0 - } - else if (DeviceCode==0x7783) - { - // Start Initial Sequence - LCD_WriteReg(0x00FF,0x0001); - LCD_WriteReg(0x00F3,0x0008); - LCD_WriteReg(0x0001,0x0100); - LCD_WriteReg(0x0002,0x0700); - LCD_WriteReg(0x0003,0x1030); //0x1030 - LCD_WriteReg(0x0008,0x0302); - LCD_WriteReg(0x0008,0x0207); - LCD_WriteReg(0x0009,0x0000); - LCD_WriteReg(0x000A,0x0000); - LCD_WriteReg(0x0010,0x0000); //0x0790 - LCD_WriteReg(0x0011,0x0005); - LCD_WriteReg(0x0012,0x0000); - LCD_WriteReg(0x0013,0x0000); - ili9320_Delay(50); - LCD_WriteReg(0x0010,0x12B0); - ili9320_Delay(50); - LCD_WriteReg(0x0011,0x0007); - ili9320_Delay(50); - LCD_WriteReg(0x0012,0x008B); - ili9320_Delay(50); - LCD_WriteReg(0x0013,0x1700); - ili9320_Delay(50); - LCD_WriteReg(0x0029,0x0022); - - //################# void Gamma_Set(void) ####################// - LCD_WriteReg(0x0030,0x0000); - LCD_WriteReg(0x0031,0x0707); - LCD_WriteReg(0x0032,0x0505); - LCD_WriteReg(0x0035,0x0107); - LCD_WriteReg(0x0036,0x0008); - LCD_WriteReg(0x0037,0x0000); - LCD_WriteReg(0x0038,0x0202); - LCD_WriteReg(0x0039,0x0106); - LCD_WriteReg(0x003C,0x0202); - LCD_WriteReg(0x003D,0x0408); - ili9320_Delay(50); - - - LCD_WriteReg(0x0050,0x0000); - LCD_WriteReg(0x0051,0x00EF); - LCD_WriteReg(0x0052,0x0000); - LCD_WriteReg(0x0053,0x013F); - LCD_WriteReg(0x0060,0xA700); - LCD_WriteReg(0x0061,0x0001); - LCD_WriteReg(0x0090,0x0033); - LCD_WriteReg(0x002B,0x000B); - //LCD_WriteReg(0x0007,0x0133); - ili9320_Delay(50); - } - #endif - for (i=50000;i>0;i--); - ili9320_Clear(White); + ili9325_Clear( Blue ); } /**************************************************************************** -* 名 称:void ili9320_SetCursor(u16 x,u16 y) +* 名 称:void ili9325_SetCursor(u16 x,u16 y) * 功 能:设置屏幕座标 * 入口参数:x 行座标 * y 列座标 @@ -876,10 +463,10 @@ void ili9320_Initializtion(void) * 说 明: * 调用方法:ili9320_SetCursor(10,10); ****************************************************************************/ -__inline void ili9320_SetCursor(u16 x,u16 y) +void ili9325_SetCursor(u16 x,u16 y) { - LCD_WriteReg(0x0020,x); /* 0-239 */ - LCD_WriteReg(0x0021,y); /* 0-319 */ + LCD_WriteReg(R32,x); /* 0-239 */ + LCD_WriteReg(R33,y); /* 0-319 */ } /**************************************************************************** @@ -893,9 +480,9 @@ __inline void ili9320_SetCursor(u16 x,u16 y) * 说 明: * 调用方法:ili9320_SetWindows(0,0,100,100); ****************************************************************************/ -__inline void ili9320_SetWindows(u16 StartX,u16 StartY,u16 EndX,u16 EndY) +void ili9320_SetWindows(u16 StartX,u16 StartY,u16 EndX,u16 EndY) { - ili9320_SetCursor(StartX,StartY); + ili9325_SetCursor(StartX,StartY); LCD_WriteReg(0x0050, StartX); LCD_WriteReg(0x0052, StartY); LCD_WriteReg(0x0051, EndX); @@ -910,12 +497,12 @@ __inline void ili9320_SetWindows(u16 StartX,u16 StartY,u16 EndX,u16 EndY) * 说 明: * 调用方法:ili9320_Clear(0xffff); ****************************************************************************/ -void ili9320_Clear(u16 Color) +void ili9325_Clear(u16 Color) { u32 index=0; - ili9320_SetCursor(0,0); + ili9325_SetCursor(0,0); LCD_WriteRAM_Prepare(); /* Prepare to write GRAM */ - for (index=0;index<76800;index++) + for (index=0; index<76800; index++) { LCD->LCD_RAM=Color; } @@ -932,8 +519,8 @@ void ili9320_Clear(u16 Color) ****************************************************************************/ u16 ili9320_GetPoint(u16 x,u16 y) { - ili9320_SetCursor(x,y); - return (ili9320_BGR2RGB(LCD_ReadRAM())); + ili9325_SetCursor(x,y); + return (ili9325_BGR2RGB(LCD_ReadRAM())); } /**************************************************************************** * 名 称:void ili9320_SetPoint(u16 x,u16 y,u16 point) @@ -948,7 +535,7 @@ u16 ili9320_GetPoint(u16 x,u16 y) void ili9320_SetPoint(u16 x,u16 y,u16 point) { if ( (x>320)||(y>240) ) return; - ili9320_SetCursor(x,y); + ili9325_SetCursor(x,y); LCD_WriteRAM_Prepare(); LCD_WriteRAM(point); @@ -970,10 +557,10 @@ void ili9320_DrawPicture(u16 StartX,u16 StartY,u16 EndX,u16 EndY,u16 *pic) { u16 i; ili9320_SetWindows(StartX,StartY,EndX,EndY); - ili9320_SetCursor(StartX,StartY); + ili9325_SetCursor(StartX,StartY); LCD_WriteRAM_Prepare(); - for (i=0;i<(EndX*EndY);i++) + for (i=0; i<(EndX*EndY); i++) { LCD_WriteRAM(*pic++); } @@ -981,14 +568,14 @@ void ili9320_DrawPicture(u16 StartX,u16 StartY,u16 EndX,u16 EndY,u16 *pic) /**************************************************************************** -* 名 称:u16 ili9320_BGR2RGB(u16 c) +* 名 称:u16 ili9325_BGR2RGB(u16 c) * 功 能:RRRRRGGGGGGBBBBB 改为 BBBBBGGGGGGRRRRR 格式 * 入口参数:c BRG 颜色值 * 出口参数:RGB 颜色值 * 说 明:内部函数调用 * 调用方法: ****************************************************************************/ -u16 ili9320_BGR2RGB(u16 c) +unsigned short ili9325_BGR2RGB(unsigned short c) { u16 r, g, b, rgb; diff --git a/bsp/stm32_radio/ili9325/ili9325.h b/bsp/stm32_radio/ili9325/ili9325.h new file mode 100644 index 0000000000..f29406d4e4 --- /dev/null +++ b/bsp/stm32_radio/ili9325/ili9325.h @@ -0,0 +1,28 @@ +#ifndef ILI9325_H_INCLUDED +#define ILI9325_H_INCLUDED + +extern void ili9325_Initializtion(void); +extern void ili9325_SetCursor(u16 x,u16 y); +extern void ili9325_Clear(u16 Color); + +extern unsigned short ili9325_BGR2RGB(unsigned short c); + +extern void LCD_WriteRAM_Prepare(void); +extern void LCD_WriteRAM(u16 RGB_Code); +extern unsigned short ili9325_ReadGRAM(unsigned short x,unsigned short y); +extern void LCD_WriteReg(u8 LCD_Reg,u16 LCD_RegValue); + +typedef struct +{ + vu16 LCD_REG; /* 0x00 */ + vu16 reserve1; /* 0x02 */ + vu16 reserve2; /* 0x04 */ + vu16 reserve3; /* 0x06 */ + vu16 LCD_RAM; /* 0x08 */ +} LCD_ili9325_TypeDef; + +/* LCD is connected to the FSMC_Bank1_NOR/SRAM2 and NE2 is used as ship select signal */ +#define LCD_ili9325_BASE ((u32)(0x60000000 | 0x04000000)) +#define LCD ((LCD_ili9325_TypeDef *) LCD_ili9325_BASE) + +#endif diff --git a/bsp/stm32_radio/lcd.c b/bsp/stm32_radio/lcd.c index ea71e0c526..7a98d73e01 100644 --- a/bsp/stm32_radio/lcd.c +++ b/bsp/stm32_radio/lcd.c @@ -11,7 +11,7 @@ #endif #if (LCD_VERSION == 2) -#include "ili9325/ili9320.h" +#include "ili9325/ili9325.h" #endif rt_err_t rt_hw_lcd_init(void); @@ -312,7 +312,7 @@ void rt_hw_lcd_set_pixel(rtgui_color_t *c, rt_base_t x, rt_base_t y) /* get color pixel */ p = rtgui_color_to_565p(*c); - ili9320_SetCursor(x,y); + ili9325_SetCursor(x,y); LCD_WriteRAM_Prepare(); LCD_WriteRAM(p); @@ -322,16 +322,7 @@ void rt_hw_lcd_set_pixel(rtgui_color_t *c, rt_base_t x, rt_base_t y) void rt_hw_lcd_get_pixel(rtgui_color_t *c, rt_base_t x, rt_base_t y) { unsigned short p; - - ili9320_SetCursor(x,y); - //if (DeviceCode==0x7783) - //{ - // p = (LCD_ReadRAM()); - //} - //else - //{ - p = (ili9320_BGR2RGB(LCD_ReadRAM())); - //} + p = ili9325_BGR2RGB( ili9325_ReadGRAM(x,y) ); *c = rtgui_color_from_565p(p); } @@ -344,9 +335,9 @@ void rt_hw_lcd_draw_hline(rtgui_color_t *c, rt_base_t x1, rt_base_t x2, rt_base_ p = rtgui_color_to_565p(*c); /* [5:4]-ID~ID0 [3]-AM-1垂直-0水平 */ - LCD_WriteReg(0x0003,(1<<12)|(1<<5)|(0<<4) | (0<<3) ); + LCD_WriteReg(0x0003,(1<<12)|(1<<5)|(1<<4) | (0<<3) ); - ili9320_SetCursor(x1, y); + ili9325_SetCursor(x1, y); LCD_WriteRAM_Prepare(); /* Prepare to write GRAM */ while (x1 < x2) { @@ -368,7 +359,7 @@ void rt_hw_lcd_draw_vline(rtgui_color_t *c, rt_base_t x, rt_base_t y1, rt_base_t /* [5:4]-ID~ID0 [3]-AM-1垂直-0水平 */ LCD_WriteReg(0x0003,(1<<12)|(1<<5)|(0<<4) | (1<<3) ); - ili9320_SetCursor(x, y1); + ili9325_SetCursor(x, y1); LCD_WriteRAM_Prepare(); /* Prepare to write GRAM */ while (y1 < y2) { @@ -388,9 +379,9 @@ void rt_hw_lcd_draw_raw_hline(rt_uint8_t *pixels, rt_base_t x1, rt_base_t x2, rt ptr = (rt_uint16_t*) pixels; /* [5:4]-ID~ID0 [3]-AM-1垂直-0水平 */ - //LCD_WriteReg(0x0003,(1<<12)|(1<<5)|(0<<4) | (0<<3) ); + LCD_WriteReg(0x0003,(1<<12)|(1<<5)|(1<<4) | (0<<3) ); - ili9320_SetCursor(x1, y); + ili9325_SetCursor(x1, y); LCD_WriteRAM_Prepare(); /* Prepare to write GRAM */ while (x1 < x2) { @@ -398,7 +389,7 @@ void rt_hw_lcd_draw_raw_hline(rt_uint8_t *pixels, rt_base_t x1, rt_base_t x2, rt LCD_WriteRAM( *ptr ); x1 ++; ptr ++; - ili9320_SetCursor(x1, y); + ili9325_SetCursor(x1, y); } } @@ -413,7 +404,43 @@ rt_err_t rt_hw_lcd_init(void) GPIO_Init(GPIOF,&GPIO_InitStructure); GPIO_SetBits(GPIOF,GPIO_Pin_9); - ili9320_Initializtion(); + ili9325_Initializtion(); + + /* LCD GRAM TEST */ + { + unsigned short temp; + unsigned int test_x; + unsigned int test_y; + + rt_kprintf("\r\nLCD GRAM test...."); + + /* write */ + temp=0; + for(test_y=0; test_y<320; test_y++) + { + for(test_x=0; test_x<240; test_x++) + { + ili9325_SetCursor(test_x,test_y); + LCD->LCD_REG = 34; + LCD->LCD_RAM = temp++; + } + } + + /* read */ + temp=0; + for(test_y=0; test_y<320; test_y++) + { + for(test_x=0; test_x<240; test_x++) + { + if( ili9325_BGR2RGB( ili9325_ReadGRAM(test_x,test_y) ) != temp++) + { + rt_kprintf(" LCD GRAM ERR!!"); + while(1); + } + } + } + rt_kprintf(" TEST PASS!\r\n"); + }/* LCD GRAM TEST */ #ifndef DRIVER_TEST /* add lcd driver into graphic driver */ @@ -439,7 +466,7 @@ FINSH_FUNCTION_EXPORT(vline, draw a vline); void cls() { - ili9320_Clear(0xF800); + ili9325_Clear(0xF800); } FINSH_FUNCTION_EXPORT(cls, clear screen); #endif diff --git a/bsp/stm32_radio/project.Opt b/bsp/stm32_radio/project.Opt index 73bdc1f42d..a4c650b265 100644 --- a/bsp/stm32_radio/project.Opt +++ b/bsp/stm32_radio/project.Opt @@ -11,7 +11,7 @@ DaveTm { 0,0,0,0,0,0,0,0 } Target (RT-Thread STM32 Radio), 0x0004 // Tools: 'ARM-ADS' -GRPOPT 1,(Startup),0,0,0 +GRPOPT 1,(Startup),1,0,0 GRPOPT 2,(Kernel),0,0,0 GRPOPT 3,(STM32),0,0,0 GRPOPT 4,(StdPeriph_Driver),0,0,0 @@ -19,17 +19,17 @@ 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),1,0,0 +GRPOPT 9,(LwIP),0,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,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,2,5,1124073474,0,14,34,0,<.\board.h> { 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,110,0,0,0,145,0,0,0,93,4,0,0,17,2,0,0 } 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,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,6,1,0,0,0,0,0,<.\startup.c> 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,0,0,0,0,0,<.\sdcard.c> @@ -40,202 +40,198 @@ 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,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,17,1,251658240,0,0,0,0,<.\mp3.c> OPTFFF 1,18,1,369098752,0,0,0,0,<.\wav.c> -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,19,1,285212672,0,0,0,0,<.\netbuffer.c> 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,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,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> +OPTFFF 1,22,1,0,0,0,0,0,<.\device_info.c> +OPTFFF 1,23,1,0,0,0,0,0,<.\player_ui.c> +OPTFFF 1,24,1,0,0,0,0,0,<.\player_bg.c> +OPTFFF 1,25,1,0,0,0,0,0,<.\play_list.c> +OPTFFF 1,26,1,0,0,0,0,0,<.\codec.c> +OPTFFF 1,27,1,0,0,0,0,0,<.\spi_flash.c> +OPTFFF 1,28,1,0,0,0,0,0,<.\remote.c> +OPTFFF 1,29,1,0,0,0,0,0,<.\picture.c> +OPTFFF 1,30,1,0,0,0,0,0,<.\station_list.c> +OPTFFF 1,31,1,0,0,0,0,0,<.\ili9325\ili9325.c> +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,0,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\widgets\list_view.c> +OPTFFF 11,195,1,0,0,0,0,0,<..\..\rtgui\widgets\filelist_view.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> -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 @@ -253,9 +249,8 @@ 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)(-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,()() + 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) + OPTBB 0,0,406,1,134342740,0,0,0,0,1,()() OPTWA 0,1,(_mp) OPTWA 1,1,(_netbuf) OPTWA 2,1,(decoder) diff --git a/bsp/stm32_radio/project.Uv2 b/bsp/stm32_radio/project.Uv2 index 3067d8c452..bef045b33b 100644 --- a/bsp/stm32_radio/project.Uv2 +++ b/bsp/stm32_radio/project.Uv2 @@ -41,12 +41,12 @@ File 1,1,<.\device_info.c> File 1,1,<.\player_ui.c> File 1,1,<.\player_bg.c> File 1,1,<.\play_list.c> -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 1,1,<.\station_list.c> +File 1,1,<.\ili9325\ili9325.c> File 2,1,<..\..\src\clock.c> File 2,1,<..\..\src\idle.c> File 2,1,<..\..\src\ipc.c>