1.移植过程发现很多头文件include 加了准确的文件位置。由于本人一直是自己在工程中加的inc path.
按照这个移植来说,就不要加inc.
2.移植过程发现 有一个lv_conf_internal.h 以为是lv_conf的模版,这个是默认的配置。上一级的lv_conf_template.h才是模版。
3.设置动态内存的时候发现如果设置比较小,使用LV的动态内存模块会出现 hardfault,使用microlib的mallloc这些函数就不会,可以正常运行。
移植也很简单,只需要实现画图功能就可以,定义一些静态内存做为刷屏缓冲区使用。
就目前来看这些GUI都比较吃内存,没有内存玩不转。很难在小内存MCU中运行。
一个像素是16位,也就是两个字节,所以X2.
SPI 接口的TFT需要更改为颜色交换。
lv_obj_t * page = lv_page_create(lv_scr_act(), NULL);
lv_obj_set_size(page, 300, 200);
lv_obj_align(page, NULL, LV_ALIGN_CENTER, 0, 0);
lv_obj_t * label = lv_label_create(page, NULL);
lv_label_set_long_mode(label, LV_LABEL_LONG_BREAK);
lv_obj_set_width(label, lv_page_get_width_fit(page));
lv_label_set_text(label,"1.DMX512\n"
"2.DMX512\n"
"3.DMX512\n"
"4.DMX512\n"
"5.DMX512\n"
"6.DMX512\n"
"7.DMX512\n"
"8.DMX512\n"
"9.DMX512\n"
"10.DMX512\n"
"11.DMX512\n"
);
while(1)
{
lv_task_handler();
lv_page_scroll_ver(page,-5);
delay_cpu(1000);
}
// 学习函数lv_page_scroll_ver 手动设置滑动方向。
// 还需要注意这里的菜单 是"str1\n" "str2\n" 这种写法有意思。
字符串写法比以前"str1\n" "str2\n"美观不少。
GUI功能还是比计较丰富,就是也吃ROM。精简了下都到80KB了。