int main(void) { SystemClockSetup(ClockSource_EX50M,CoreClock_100M); DelayInit(); LED_Init(LED_PinLookup_CHK60EVB, kNumOfLED); UART_DebugPortInit(UART4_RX_C14_TX_C15, 115200); DisplayCPUInfo(); GUI_Init(&CHGUI_InitStruct1); GUI_SetFontFormName("FONT_CourierNew"); while(1) { GUI_GotoXY(0, 0); GUI_TOUCH_GetState(&State); //打印物理AD坐标 GUI_printf("Phy:X:%04d Y:%04d\r\n", GUI_TOUCH_GetxPhys(), GUI_TOUCH_GetyPhys()); //打印逻辑AD坐标 GUI_printf("Log:X:%04d Y:%04d\r\n", State.x, State.y); GUI_printf("State:%01d\r\n", State.Pressed); //LCD 画笔跟踪 GUI_DrawPoint(State.x, State.y); DelayMs(10); //GUI 触摸屏处理函数 每10MS调用一次 GUI_TOUCH_Exec(); } }
int main(void) { //初始化系统时钟 使用外部50M晶振 PLL倍频到100M SystemClockSetup(ClockSource_EX50M,CoreClock_100M); DelayInit(); LED_Init(LED_PinLookup_CHK60EVB, kNumOfLED); UART_DebugPortInit(UART4_RX_C14_TX_C15, 115200); DisplayCPUInfo(); //初始化GUI GUI_Init(&CHGUI_InitStruct1); //设置背景色为黑色 GUI_SetBkColor(BLACK); //普通字符显示模式 GUI_SetTextMode(GUI_TEXTMODE_NORMAL); //设置前景色为红色 GUI_SetColor(LGRAY); //将当前字体设置为CourierNew GUI_SetFontFormName("FONT_CourierNew"); //打印字符 GUI_printf("HelloWorld\r\n"); //打印CHGUI版本号 GUI_printf("CHGUI_Version:%0.2f\r\n", (float)(GUI_VERSION/100)); //打印LCDID GUI_printf("ID:%X\r\n", GUI_GetDeivceID()); while(1) { } }
static void set_config(CONFIG **config, char *data, int length, char *filename) { char name[256]; char val[256]; CONFIG_ENTRY **prev, *p; int pos; init_config(FALSE); GUI_printf("wtf2\n"); if (*config) { destroy_config(*config); *config = NULL; } *config = malloc(sizeof(CONFIG)); if (!(*config)) return; (*config)->head = NULL; (*config)->dirty = FALSE; if (filename) { (*config)->filename = malloc(strlen(filename)+1); if ((*config)->filename) strcpy((*config)->filename, filename); } else (*config)->filename = NULL; prev = &(*config)->head; pos = 0; while (pos < length) { pos += get_line(data+pos, length-pos, name, val); p = malloc(sizeof(CONFIG_ENTRY)); if (!p) return; if (name[0]) { p->name = malloc(strlen(name)+1); if (p->name) strcpy(p->name, name); } else p->name = NULL; p->data = malloc(strlen(val)+1); if (p->data) strcpy(p->data, val); p->next = NULL; *prev = p; prev = &p->next; } }
int main(void) { int value; DelayInit(); UART_QuickInit(UART0_RX_PA01_TX_PA02, 115200); kinetis_spi_bus_init(&bus, HW_SPI1); PORT_PinMuxConfig(HW_GPIOE, 0, kPinAlt2); PORT_PinMuxConfig(HW_GPIOE, 1, kPinAlt2); PORT_PinMuxConfig(HW_GPIOE, 2, kPinAlt2); ili9163_init(&bus, 0); GUI_printf(0, 0, "HelloWorld", "Numis:",13); GUI_printf(0, 10, "%d", 1234); while(1) { } }
int DoILI9163(int argc, char * const argv[]) { kinetis_spi_bus_init(&bus, HW_SPI1); PORT_PinMuxConfig(HW_GPIOE, 0, kPinAlt2); PORT_PinMuxConfig(HW_GPIOE, 1, kPinAlt2); PORT_PinMuxConfig(HW_GPIOE, 2, kPinAlt2); ili9163_init(&bus, 0); GUI_printf(0, 0, "%s%d\r\n", "Numis:",13); return 0; }
/* load_config_file: * Does the work of loading a config file. */ static void load_config_file(CONFIG **config, char *filename, char *savefile) { int length; GUI_printf("wtf\n"); if (*config) { destroy_config(*config); *config = NULL; } length = file_size(filename); GUI_printf("wtf3\n"); if (length > 0) { FS_lock(); FILE *f = fopen(filename, "rb"); if (f) { char *tmp = malloc(length); if (tmp) { fread(tmp, 1, length, f); set_config(config, tmp, length, savefile); free(tmp); } else set_config(config, NULL, 0, savefile); fclose(f); } else set_config(config, NULL, 0, savefile); FS_unlock(); } else set_config(config, NULL, 0, savefile); }