树莓派延时电影

一.下载SDFormatter格式化工具并将SD卡格式化

二.下载系统镜像文件img****文件镜像烧录工具Etcher并烧录镜像到SD卡中, 这里推荐用官方的镜像烧录器.

官方推荐烧录器直接烧录

image-20231209231938126

可以烧录时设置密码, 我设置的是生日.

image-20231209231826633

三.无显示器无网线连接树莓派准备工作

  1. 在烧录SD卡的boot下新建 wpa_supplicant.conf文件,设置以下内容:
    参考1:https://zhuanlan.zhihu.com/p/159290947
    参考2:https://blog.csdn.net/weixin_45012976/article/details/108166880

    country=CN
    
    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    
    update_config=
    
    network={
    
    ssid="xiaomi6"
    
    psk="pengber1772"
    
    key_mgmt=WPA-PSK
    
    priority=1
    
    }
    

    注意:

    • country设置的必须是CN
    • wpa_supplicant.conf会在插电后消失,但是不影响使用。
    • 我设置连接的我电脑开启的个人热点,也可以设置自己家的wifi,但是这样的话就必须要用Advanced IP Scanner扫描IP地址才能找到树莓派的IP了
    • 换行必须是UNIX格式的换行,可以用Notepad++在edit->EOL Conversion中设置后保存
  2. 新建名字为SSH(无后缀后内容)文件放入boot目录下开启ssh
    参考:https://www.jianshu.com/p/654ee08d2b3a

四.利用XSHELL连接树莓派

树莓派默认用户名:pi

默认密码:raspberry

ip地址:在树莓派和电脑连接同一个局域网后, 查看电脑的ip地址, 然后用AdvanceIPScanner这个软件扫描自己ip地址所在网段的其他设备, 比如

image-20220102172856002

我的电脑连接自己手机热点后, 局域网IP地址为192.168.43.48, 所以局域网所在网段就是192.168.43.xxx, 然后用Advanced IP scanner扫描该网段:

image-20220102173141243

然后就可以得知树莓派的局域网ip地址了.

五.连接7.5寸电子水墨屏

将水墨屏的连接器插到树莓派上,另一端插到电子水墨屏上, 注意这里有一个可以按压的黑色板子, 等插上后注意按下去起固定作用:

image-20220102173359703

六.测试水墨屏是否可用

微雪电子文档https://www.waveshare.net/wiki/7.5inch_e-Paper_HAT

而我们的测试代码连接如下: https://www.waveshare.net/wiki/7.5inch_e-Paper_HAT

具体步骤为:

  1. 打开SPI接口, 执行sudo raspi-config选择Interfacing Options -> SPI -> Yes
  2. 安装函数库
    sudo apt-get update
    sudo apt-get install python3-pip
    sudo apt-get install python3-pil
    sudo apt-get install python3-numpy
    sudo pip3 install RPi.GPIO
    sudo pip3 install spidev
    
  3. 下载程序并解压
    wget https://www.waveshare.net/w/upload/7/71/E-Paper_code.zip
    unzip E-Paper_code.zip -d e-Paper
    cd e-Paper/RaspberryPi_JetsonNano/
    
  4. 运行程序, 我买的板子是7.5英寸黑白V2, 所以进入examples执行该文件即可

image-20220102174425552

执行结果:

会闪烁出现一些几何图形后再显示一张日历的bmp文件.

七.安装SlowMovie

项目地址https://github.com/TomWhitwell/SlowMovie

参考教程:https://shumeipai.nxez.com/2020/10/13/how-to-build-a-very-slow-movie-player-in-2020.html

因为访问不了raw.githubusercontent.com,所以不能用作者提供的安装脚本,只能手动安装

pip3 install git+https://github.com/waveshare/e-Paper.git#egg=waveshare-epd&subdirectory=RaspberryPi_JetsonNano/python

也报错了,通过将github项目克隆到本地,然后进入e-Paper/RaspberryPi_JetsonNano/python/目录,执行pip3 install -e .

cd e-Paper/RaspberryPi_JetsonNano/python/

pip3 install -e .

pip3 install git+https://github.com/robweber/omni-epd.git#egg=omni-epd 这个操作不能用上一个步骤,因为这个步骤内嵌了要用github的项目,所以必须要科学上网(老王VPN)(修改host也不可以,可以ping通但是速度太慢)。

安装好之后执行命令:

cd SlowMovie
python3 SlowMovie.py

可以播放test.mp4,实际使用的话, 将自己想要播放的电影用XFTP上传到树莓派~/SlowMovie/Videos, 然后用sudo权限编辑/etc/profile加入下面两句:

cd SlowMovie
python3 slowmovie.py -f ./Videos/yidaizongshi.mkv -d 150 -i 1

意思是每150s播放一帧画面, 每小时播放24帧.

八.显示一张图片

官方代码可以显示`800*480*像素的bmp图片,

执行路径在~/src/waveshare-epd/RaspberryPi_JetsonNano/python/examples/drawImage.py, 这个文件后来找不到了, 其实可以用自己墨水瓶对应的版本测试文件改, 我就用epd_7in5_V2_test.py中的部分代码.

图片路径在~/src/waveshare-epd/RaspberryPi_JetsonNano/python/pic/image.bmp, 我自己用画图工具制作了一张800*480的新年快乐图片.

执行命令:python3 drawImage.py

执行结果:image-20220102174830687

代码:

#!/usr/bin/python
# -*- coding:utf-8 -*-
import sys
import os
picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic')
libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib')
if os.path.exists(libdir):
    sys.path.append(libdir)

import logging
from waveshare_epd import epd7in5_V2
import time
from PIL import Image,ImageDraw,ImageFont
import traceback

logging.basicConfig(level=logging.DEBUG)

try:
    epd = epd7in5_V2.EPD()
    logging.info("init and Clear")
    epd.init()
    epd.Clear()
    logging.info("4.read bmp file on window")
    Himage2 = Image.new('1', (epd.width, epd.height), 255)  # 255: clear the frame
    bmp = Image.open(os.path.join(picdir, 'image.bmp'))
    Himage2.paste(bmp, (30,-70))
    epd.display(epd.getbuffer(Himage2))
except IOError as e:
    logging.info(e)
    
except KeyboardInterrupt:    
    logging.info("ctrl + c:")
    epd7in5_V2.epdconfig.module_exit()
    exit()

其中image.bmp是自己想要的照片, 可以先用windows自带的编辑剪裁大小, 然后用格式工厂转换成bmp, 位置可以用上面的 Himage2.paste(bmp, (30,-70))控制.

九.注意

电子水墨屏的驱动板注意插好,有正反的。

最开始就配置好科学上网吧,有的项目就不用把github项目转移到gitee上面再克隆了


欢迎在评论区中进行批评指正,转载请注明来源,如涉及侵权,请联系作者删除。

×

喜欢就点赞,疼爱就打赏