OLED可以用来显示图像,如果我们有多张连续的图像,使用OLED连续调用,并连续显示,就可以实现OLED播放动画的效果。今天这节课,我们将和大家一起制作一个叫做足球健将的动画,练习本地图像调用与OLED显示连续图像的方法。
一、准备图像素材
1、23张图像素材
2、图片尺寸都是128*64
3、远程登陆树莓派
4、复制图片文件至树莓派
二、读取并显示第0张图像文件
1、初始化OLED屏
2、新建背景图片
3、指定图片路径
4、从图片路径加载图片赋值给当前图片
5、在背景图片上粘贴当前图片
6、显示背景图片
7、完整程序如下
三、循环读取23张图像文件
1、建立For循环
注意此处是从0至22,对应图像文件。
2、指定图片路径
这里采用的是字符串拼接的方式动态合成图像文件名。
3、从图片路径加载图片赋值给当前图片
4、在背景图片上粘贴当前图片
5、显示背景图片
6、完整的循环读取显示部分为
四、重复动画过程
1、使用重复当真
这个方法不建议使用,因为永远运行下去,不加等待时间,程序容易死机,加了等待时间,动画会变得不连贯。
2、重复有限次数
第二种方法效果较好,但是使用了两重循环,能不能使用一重循环实现重复动画效果呢?
五、取余法实现重复动画效果
1、创建For循环
思考:把循环的终止值设得大一些,希望程序能够实现重复,但这里为什么要设定是45?如何要实现两次循环的话,应该设定为46呀?
2、对循环变量i取余
思考:为什么要对23进行取余?
3、完整程序
4、运行测试
程序运行正确,实现了两次循环
5、更多重复次数
如果要实现更多次循环,应该怎样设置循环终止值?
参考程序: