你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

这个图案如何在stm32f103控制的lcd液晶显示出来?需要用图.....

[复制链接]
loop丶 提问时间:2018-8-12 04:34 /

123.jpg
收藏 评论11 发布时间:2018-8-12 04:34

举报

11个回答
jakecumt 回答时间:2018-8-12 09:58:21
可以分三部分,上部充电中 可以判断充电是否充满,充电进行中就显示充电中否侧显示充电满
中间,根据充电多少填充电池,下面:电量可以是个图片,只要根据充电量计算出电池电量显示出来即可

           

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

jinglixixi 回答时间:2018-8-12 10:27:12
将界面抓图,然后用Img2Lcd之类的软件将其转化为数组数据,并通过对应的功能函数使之在屏上再现,模拟显示的动画效果则通过采集的数据进行图形填充。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

xiaolingoei 回答时间:2018-8-12 15:09:12
根据图片的内容分3个部分:
上部:只需要根据电量判断"充电中"和"充电完成",间隔一段时间刷新即可.
中部:电量显示,将读到的数据用对应的功能函数表示,需要动画效果实时显示.
下部:与中部的电量的读取数据一致,实时显示文字百分比,不需要动画效果.

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

loop丶 回答时间:2018-8-12 21:58:42
jakecumt 发表于 2018-8-12 09:58
可以分三部分,上部充电中 可以判断充电是否充满,充电进行中就显示充电中否侧显示充电满
中间,根据充电多 ...

非常感谢你的回复!抱歉我没有把问题说清楚,我疑惑的是中间的那个有点立体的电池图案是怎么实现的,是否用到了图形库,这个单片机是stc15系列的。我只用过普通的lcd画点画线画矩形或者显示图片,图中电量是动态变化的,空电池是立体的,有电量的时候也是立体的,还请指教,十分感谢!
loop丶 回答时间:2018-8-12 22:03:52
jinglixixi 发表于 2018-8-12 10:27
将界面抓图,然后用Img2Lcd之类的软件将其转化为数组数据,并通过对应的功能函数使之在屏上再现,模拟显示 ...

十分感谢你的回复!如果采用图片的形式表示电量,是不是先显示一个空电池,然后动态的填充电池里的电量?这里我有一个疑问,这里的图片都是一张张存好的,如何实现只显示一部分呢?还请指教。
loop丶 回答时间:2018-8-12 22:13:25
xiaolingoei 发表于 2018-8-12 15:09
根据图片的内容分3个部分:
上部:只需要根据电量判断"充电中"和"充电完成",间隔一段时间刷新即可.
中部:电量 ...

非常感谢你的回复!你说的动画效果是要加图形库吗?我用的屏幕只供了画点画线之类的函数,没有动画的。图片中用的stc15,应该是没有图形库的,我困惑的是他这个屏是如何实现的。感谢回复!
CC4 回答时间:2018-8-12 22:45:20
其实,这个问题也好解决。
你可把上面充电中的蓝色部分和下面电池头和尾做成一个背景图,
直接写到屏幕上面。
然后充电中的文字,你根据需要直接往这个坐标写文字就可以了。
电池的图案还是以图片切图的形式存在。
而这个电池体可能会有二种颜色。如下图:
ts1.png
在这个图例中,电池未充电部分用红色图片表示,已经充电部分用绿色图片表示。
假如,整个电池宽度是100相素,那么,充电1% 就会占用1相素,表现在图上面就是绿色的部分宽度是1 相素,红色部分是99相素。
实际上,红色部分和绿色部分可以是宽度1 相素的图片。
根据充电百分比,计算出红色和绿色图片的宽度。这二个图片宽度和始终是100。
比如说,当充电达到40%的时候,绿色达到40%,那么宽度1 相素的绿图就要绘制40次,之后,用红图绘满。

这就是我的思路,还请大神指点。

评分

参与人数 2ST金币 +2 蝴蝶豆 +4 收起 理由
loop丶 + 2
zero99 + 4

查看全部评分

jinglixixi 回答时间:2018-8-13 18:02:19
loop丶 发表于 2018-8-12 22:03
十分感谢你的回复!如果采用图片的形式表示电量,是不是先显示一个空电池,然后动态的填充电池里的电量? ...

找一张电量为图为基准显示图,然后截取一段电量指示条为显示基本单元图,并视电量的多少来决定填充数量的多少即可。这样比较节省存储空间。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

STM1024 回答时间:2018-8-14 09:18:54
这种图形动画的显示,一般思路是这样的:
1.确定绝对不变的地方,即颜色、位置都不变,这种可以直接用图片取模搞出来。例如电池的边框和背景、电量等文字等。
2.确定相对不变的地方。显然,显示电量的那部分,总尺寸是不变的,但是颜色变化较多,需要代码配置颜色
还有你文字显示的位置不变,但是内容回有变化。
3.一直在变化的就要格外小心了

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

loop丶 回答时间:2018-8-15 14:18:32
select326 发表于 2018-8-12 22:45
其实,这个问题也好解决。
你可把上面充电中的蓝色部分和下面电池头和尾做成一个背景图,
直接写到屏幕上面 ...

这是我做的效果图,非常感谢你的建议!
IMG_20180815_140759.jpg
董辰辉 回答时间:2018-8-16 09:43:49
楼主解决了没

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版