WhyCan Forum(哇酷开发者社区)

人过留名,雁过留声,感谢各位朋友不离不弃地支持。 QQ: 516333132, 微信: whycan_cn (哇酷网/挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2020-03-20 16:51:40

ntmusic
会员
注册时间: 2020-02-24
累计积分: 21

试试F1C100s的硬件游标HWC

准备在荔枝派Nano上玩LVGL,虽然接了电阻触摸屏,可是我这个荔枝派nano板子上并未有触摸的焊盘,原理图也找不到,那个空白的IC焊盘是啥。。有人和我的nano一样的版本吗,有的话能否告诉我一下这个触摸该怎么连接,我有空的时候再搞一下。
nano.jpg
现在手头没工具,但又想玩LVGL,正好F1C100s支持硬件游标,那正好,就用游标操作了。F1C100s的这个硬件游标确实非常简单,查看手册相关寄存器就那么几个。唯一麻烦的倒是游标的数据来源,是ARGB调色板索引数据,而且只有1,2,4bpp三种格式可用,不知道哪里可以找这样的软件转换,与其花时间去找,不如自己做一个。于是花了半个多小时做了一个数据提取工具,当然做的这个小工具只是负责把图片的颜色整理成颜色表和索引表,图片还得经过PS处理下。具体使用方法如下:
1.打开一张游标的图片,最好是PNG,颜色尽量不要太丰富,毕竟4bpp最大也就16色还包含了透明度。
2.在PS中依次点击图像-模式-索引颜色
PS1.jpg
3.3.在打开的索引颜色面板中,调板可以选择平均或局部(xxx),然后在颜色框中输入颜色值:1bpp为2色,2bpp为4色,4bpp为16色。然后勾选透明度(勾选透明度后,透明也算作一种颜色。如果原图并不是PNG图片,那就可以不勾选透明度,勾了也没用,这样生成的就是四四方方的游标图片)。
PS2.jpg
4.将更改模式后的图片另存为PNG图片。
5.打开F1c200sHWCDataMaker.exe小工具,选择需要转换成的颜色深度后,将刚才另存的图片拖进去,然后就会生成该颜色深度的颜色表和索引表的.h文了。
out.jpg
数据做好了,剩下就很简单了,将颜色表的值拷贝到F1C100s的DEBE HWC Palette Table寄存器组中,将索引表的值拷贝到DEBE HWC Pattern Memory Block中,然后在DEBE HWC Frame Buffer Format Register中配置一下游标宽高(只有32、64两种分辨率)以及颜色深度,最后在DEBE Mode Control Register中使能硬件游标即可。控制游标显示的位置,只需在DEBE HWC Coordinate Control Register中设置一下坐标即可,这样就完成了硬件游标的显示了。
通过实验发现,最大分辨率64*64模式下只有1bbp模式可以正确显示,32*32下1,2,4bbp都正确显示,不知道是啥原因,但一般32*32对于游标来说已经够大了,所以一般用32*32 4bpp模式来做游标显示效果很好。
下面是我做的显示效果
cur1.jpg
凑近看,可以看到我做的游标有半透效果【Alpha=0xA0】
cur2.jpg
工具在此,内含一个小光标图片,如果需要可以拿去使用。当然如果有更好的工具,也可推荐推荐
CursorMaker.rar

离线

#2 2020-03-20 17:30:26

达克罗德
会员
注册时间: 2018-04-10
累计积分: 806

Re: 试试F1C100s的硬件游标HWC

感谢分享,很有用

离线

#3 2020-03-20 17:54:32

gui401
会员
注册时间: 2019-10-25
累计积分: 42

Re: 试试F1C100s的硬件游标HWC

膜拜大神

离线

#4 2020-03-20 19:20:09

我思故我在
会员
注册时间: 2019-09-03
累计积分: 148

Re: 试试F1C100s的硬件游标HWC

好帖好帖

离线

#5 2020-03-20 21:46:55

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 9,104

Re: 试试F1C100s的硬件游标HWC

太用心了, 感谢楼主分享!

离线

#6 2020-03-21 08:23:10

sea18c
会员
注册时间: 2019-08-05
累计积分: 130

Re: 试试F1C100s的硬件游标HWC

添加新功能,谢谢

离线

#7 2020-03-21 11:59:37

dgtg
会员
注册时间: 2017-11-08
累计积分: 156

Re: 试试F1C100s的硬件游标HWC

大神!
不过我对DEDE更感兴趣...楼主能讲讲C100的DEDE 吗?
相信大多坛友也是这个想法...:P

离线

#8 2020-03-22 08:44:20

gui401
会员
注册时间: 2019-10-25
累计积分: 42

Re: 试试F1C100s的硬件游标HWC

谢谢
楼主的小工具是用什么开发的?

离线

#9 2020-03-23 09:51:57

ntmusic
会员
注册时间: 2020-02-24
累计积分: 21

Re: 试试F1C100s的硬件游标HWC

gui401 说:

谢谢
楼主的小工具是用什么开发的?

C#开发的

离线

#10 2020-03-23 10:03:40

ntmusic
会员
注册时间: 2020-02-24
累计积分: 21

Re: 试试F1C100s的硬件游标HWC

感谢达克罗德大神的FB驱动,在移植到RTT时再做了一些优化,剥离出图层和时序控制结构体,可以自由使用4个图层,并移植了Lvgl(版本6.1.1),同时使用硬件游标,由于USB暂未实现鼠标功能,游标数据通过串口2从PC端获得,PC端再写了一个小工具发送鼠标数据,这样就比较快的玩起了LVGL。效果如下视频。

代码还在整理,如大家感兴趣我可另开贴介绍

离线

#11 2020-03-23 11:21:15

xiaohui
会员
注册时间: 2019-01-15
累计积分: 103

Re: 试试F1C100s的硬件游标HWC

这功能第一次见。。。。。谢谢楼主分享

离线

#12 2020-03-24 12:53:23

dgtg
会员
注册时间: 2017-11-08
累计积分: 156

Re: 试试F1C100s的硬件游标HWC

ntmusic 说:

感谢达克罗德大神的FB驱动,在移植到RTT时再做了一些优化,剥离出图层和时序控制结构体,可以自由使用4个图层,并移植了Lvgl(版本6.1.1),同时使用硬件游标,由于USB暂未实现鼠标功能,游标数据通过串口2从PC端获得,PC端再写了一个小工具发送鼠标数据,这样就比较快的玩起了LVGL。效果如下视频。
代码还在整理,如大家感兴趣我可另开贴介绍

请问一下,四个图层,具体是哪四个啊?
超有兴趣啊

离线

#13 2020-03-24 14:04:45

迪卡
会员
所在地: 河北
注册时间: 2018-11-02
累计积分: 440
个人网站

Re: 试试F1C100s的硬件游标HWC

牛逼啊,硬件游标

离线

#14 2020-03-25 19:40:45

达克罗德
会员
注册时间: 2018-04-10
累计积分: 806

Re: 试试F1C100s的硬件游标HWC

牛逼

离线

#15 2020-03-25 19:48:53

孤星泪
会员
注册时间: 2020-03-18
累计积分: 17

Re: 试试F1C100s的硬件游标HWC

ntmusic 说:

感谢达克罗德大神的FB驱动,在移植到RTT时再做了一些优化,剥离出图层和时序控制结构体,可以自由使用4个图层,并移植了Lvgl(版本6.1.1),同时使用硬件游标,由于USB暂未实现鼠标功能,游标数据通过串口2从PC端获得,PC端再写了一个小工具发送鼠标数据,这样就比较快的玩起了LVGL。效果如下视频。
代码还在整理,如大家感兴趣我可另开贴介绍

坐等吧, 伸手党有福了.

离线

页脚