- 收藏
- 点赞
- 分享
- 举报
战舰移植UCGUI个人心得(不带UCOS)【转】
【转】本人新手,这几天移植UCGUI遇到了种种问题,这里分享下自己的心得。 首先准备好一个工程和一个UCGUI源码,我是直接用了原点的实验13 TFTLCD显示实验,UCGUI源码用的是3.90的版本。 然后你需要修改一下LCD驱动,先把lcd.c和lcd.h改成别的名字,比如ili9320.c和ili9320.h.然后将lcd.c里面的初始化函数名字改成别的,比如ILI9320_Init(),然后再编译。 接着准备开始一直UCGUI,这里的步骤太多,就不写了。我是按照白开水的视频一步一步移植下来的。视频地址和下载之地是 http://bbs.anbn.cn/thread-58-1-1.html 移植直到编译全部通过之后,这里就出现了一个重大问题,困扰了我两天。按照上面的移植步骤,你到最后初始化GUI_Init()之后,下载到板子上,你会发现你的屏幕先白屏一下之后就马上黑屏,而且后面无论设置什么颜色都是这样的情况。这个问题主要原因是:在调用GUI_Init()的时候,这个函数会进入LCD_Init(),然后在LCD_Init()函数里面有着样的语句
if (GUI_DEFAULT_BKCOLOR != GUI_INVALID_COLOR)
/* Clear video memory */
LCD_SetDrawMode(GUI_DRAWMODE_REV);
LCD_FillRect(0,0, GUI_XMAX, GUI_YMAX);
LCD_SetDrawMode(0);
#endif
这句#if (GUI_DEFAULT_BKCOLOR != GUI_INVALID_COLOR)里面 的GUI_DEFAULT_BKCOLOR 初值是OXFFFF, GUI_INVALID_COLOR 初值也是0XFFFF,而原子哥的初始化函数最后有一句LCD_Clear(WHITE);这样就把 GUI_INVALID_COLOR 的值设置成了0X0000;导致调用了下面的三个函数。从而出现上面的问题。只要把 原子哥 的初始化函数LCD_Clear(WHITE); 注释掉就不会错了,小问题大错误。 希望自己的小心得对大家有有用。
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片![alt](url)
-
2008-11-15 12:54:01
-
2013-08-26 14:17:07
-
2018-12-11 09:04:52
-
2015-01-05 09:08:58
-
2013-11-17 10:36:17
-
12013-11-21 21:32:49
-
2013-08-25 13:24:24
-
2013-08-25 13:06:48
-
2012-12-04 13:15:21
-
2013-08-26 14:24:10
-
2019-05-06 11:32:30
-
2013-11-21 21:41:06
-
2013-08-24 23:17:59
-
2019-05-06 08:43:49
-
2023-04-14 14:46:21
-
2013-08-10 10:44:02
-
2013-12-04 15:27:38
-
2013-11-21 21:51:50
-
2014-01-13 22:42:38
-
5SS928的emmc有32GB,bootargs设置使用16GB,但是为啥能用的只有rootfs的大小
-
33SS928怎样烧写ubuntu系统
-
10ToolPlatform下载rootfs提示网络失败
-
10谁有GK7205V500的SDK
-
5Hi3516CV610 烧录不进去
-
10Hi3559AV100 芯片硬解码h265编码格式的视频时出现视频播放错误,解码错误信息 s32PackErr:码流有错
-
5海思SS928 / SD3403的sample_venc.c摄像头编码Demo中,采集到的摄像头的YUV数据在哪个相关的函数中?
-
5海鸥派openEuler无法启动网卡,连接WIFI存在问题
-
66有没有ISP相关的巨佬帮忙看看SS928对接IMX347的图像问题
-
50求助hi3559与FPGA通过SLVS-EC接口对接问题
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明