野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11342|回复: 8

[emWin] emwin使用alpha混合出现光栅的解决办法及液晶IC的驱动添加步骤!!~~

[复制链接]
发表于 2015-11-23 16:23:04 | 显示全部楼层 |阅读模式
很久以前买的火哥的mini板子,最近在网上看到火哥更新了emwin的移植教程。由于刚刚搞完ucgui的移植,马上看到了emwin界面风格的华丽,立马上手试了一下。先是使用了火哥的Demo在板子上跑了一遍,没问题之后。开始跟着emwin手册里面例子做了一遍,做到一半,发现在进行alpha混合例子的时候,就是会出现光栅。
逛了一圈都没有这个问题的解决办法。不知道火哥如何解决的这个问题。我的解决办法就是把底层驱动全部添加一遍,并进行了优化,显示速度提升。
回复

使用道具 举报

 楼主| 发表于 2015-11-23 16:31:48 | 显示全部楼层
本帖最后由 j478278600 于 2015-11-23 16:40 编辑

我这里拿了火哥移植好的ucosiii的工程,再进行移植,没有的同学先去下一个。同时还要有安富莱的F407的带emwin的完整工程一个,没有的也可以自己网上下载一下,网上找了好多emwin的教程,在对emwin的液晶驱动的移植几乎没有,就找到安富莱的例程是自己移植的液晶驱动,其他的例子几乎都和火哥的方法一样使用的内部驱动,所以就下了个安富莱的工程,但是安富莱的教程讲的也没有很详细,所以就自己一点点比对添加修改的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-23 16:44:42 | 显示全部楼层
本帖最后由 j478278600 于 2015-11-23 16:45 编辑

将下面4个打开文件夹下的文件全部添加到工程里面(文件都从安富莱工程里面拿)
捕获.PNG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-23 16:55:39 | 显示全部楼层
添加完成后,编译一下,你会发现有很多错误的地方,需要将里面原本使用的RA8875驱动替换成自己ili9341的驱动
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-23 17:02:12 | 显示全部楼层
本帖最后由 j478278600 于 2015-11-23 17:10 编辑

在GUIDRV_Template.c中,需要修改打点和读点的函数驱动,还需要把_DrawHLine   、_DrawVLine 、_FillRect、_DrawBitLine16BPP、_DrawBitLine32BPP,这几个函数还原回去,这里都被修改过了,如果不需要优化速度的话,再次编译基本可以正常运行了。如果需要优化的话,可以照着原来的样子把驱动填上,这样会加快显示速度的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-23 17:05:07 | 显示全部楼层
由于ili9341在读取颜色的时候需要进行一次假读的操作,所以在读点那里需要将火哥驱动里注释掉的那段还原回去,将后面的的注释掉
捕获.PNG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-23 17:07:50 | 显示全部楼层
到这里基本已经移植完成了。在maintask.c里写上如下代码看看alpha的效果:
GUI_ALPHA_STATE AlphaState;
GUI_Init();       
GUI_EnableAlpha(1);
GUI_SetBkColor(GUI_WHITE);
GUI_Clear();
GUI_SetColor(GUI_BLACK);
GUI_DispStringHCenterAt("Alphablending", 45, 41);
GUI_SetColor((0x40uL << 24) | GUI_RED);
GUI_FillRect(0, 0, 49, 49);
GUI_SetColor((0x80uL << 24) | GUI_GREEN);
GUI_FillRect(20, 20, 69, 69);
GUI_SetColor((0xC0uL << 24) | GUI_BLUE);
GUI_FillRect(40, 40, 89, 89);
          while (1)
          {
                  GUI_Delay(100);
          }
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-23 17:11:07 | 显示全部楼层
最后运行的效果图
QQ图片20151117221719.jpg
回复 支持 反对

使用道具 举报

发表于 2015-11-23 19:16:57 | 显示全部楼层
谢谢楼主分享
方便的话把移植好的代码共享,方便大家参考
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-9 06:07 , Processed in 0.032534 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表