用cubemx生成cubeide工程,用vscode编代码,然后
while (1)
{
LCD_Fill(0,0,LCD_W-1,LCD_H-1,WHITE); //白色填充整屏并延时1秒
HAL_Delay(1000);
//重要说明!!由于CUBEMX生成的文件是UTF8编码,cubeide也默认使用UTF8编码,即使main.c采用GB2312编码保存,cubeide也无法准确 识别GB2312编码,只能使用UTF8编码保存
//虽然cubeide窗口->首选项->颜色和字体里提供了GB2312显示脚本,但是本质上还是UTF8编码,而TFT字库显示字符串数组需要GB2312编码
//比如“班”这个字的 UTF-8 编码:E7 8F AD (3个字节),而TFT通过字库显示汉字,需要编译器按照GB2312来理解,就会把E7 8F (2个字节)理解为“骇”字!!
//所以汉字用明确的GB2312编码存于数组中!!这是深远的历史遗留问题,用HEX数组百分百不会错
//显示班级、姓名、学号并延时1秒
uint8_t msg[] = {0xB0, 0xE0, 0xBC, 0xB6, 0x00}; // 班级
Display_GB2312_String(0, 30, 2, msg, RED, WHITE); // y坐标增加
uint8_t msg1[] = {0xD0, 0xD1, 0xC3, 0xFB, 0x00};//姓名
Display_GB2312_String(0, 50, 2, msg1, BLUE, WHITE); // y坐标增加
uint8_t msg2[] = {0xD1, 0xA7, 0xBA, 0xC5, 0x00};//学号
Display_GB2312_String(0, 70, 2, msg2, YELLOW, WHITE); // y坐标增加
HAL_Delay(1000);
LCD_Fill(0,0,LCD_W-1,LCD_H-1,BLUE); // 蓝色填充整屏并延时1秒
HAL_Delay(1000);
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
}
|