Xillinux 章节六 使用SmartZynq SP(SP2)上的板载SPI LCD屏幕

本文将介绍如何在Xillinux 操作系统下点亮SmartZynq SP (SP2)主板上的LCD屏幕

一、屏幕资料(SP与SP2主板屏幕不同)

  • SmartZynq SP主板上自带一块1.47寸SPI屏,分辨率是320X172 ,
  • SmartZynq SP2主板上自带一块1.3寸SPI屏,分辨率是240X240 ,

彩色液晶屏资料(厂家提供的资料) 店铺 中景园电子

  • SP 1.47寸屏 :https://pan.baidu.com/s/110uz88iQMA7wl9vdqG9R9A    提取码:8888 
  • SP2 1.3 寸屏 :https://pan.baidu.com/s/1nF34QoV9Dh_59AWkbowwGQ 提取码:8888

LCD 接口如下图所示

LCD_BLK : LCD背光(默认常亮)
SPI 信号 : CS 片选信号 SCL 时钟 SDA 数据
DC  : 数据/命令 信号
RES : 屏幕复位 信号

管脚定义:CS P15 ,D/C R15 ,SCL N15 ,SDA M15 ,RES L16 ,BLK T16(BLK默认不去控制 背光也会默认常亮输出)

二、 驱动部分 (选看)

因为xillybus官方已经在 xillinux-2.0a 中添加了板载LCD的驱动,并且在 demo bundle 压缩包中的 vivado工程以及devicetree 中已经配置好了屏幕部分的相关内容,所以我们只需要把工作的重心放在如何在如何使用点亮屏幕上即可。

如果对屏幕驱动的编译与安装感兴趣的,可以参看本文最后的部分(非必须,内容选看)

Xillinux 章节六 (补充) SmartZynq SP 板载 SPI LCD屏幕驱动的编译及安装(选看) 

三、屏幕点亮测试

正常给板子上电并启动xillinux系统,这时屏幕还没有显示任何信息(此时我们的屏幕在设备中是/dev/fb1),这里我们来将xillinux的命令行切换到显示屏上来简单验证屏幕是否工作正常(屏幕当作linux 的控制台用)。

1. 在切换前,我们需要先关闭用作 console 控制台 的 framebuffer(之后 hdmi屏上显示的内容将会从console 控制台变成 白底的XILLYBUS LOGO)

echo 50001000.xillyvga > /sys/bus/platform/drivers/xillyvga/unbind

2. 重新启动LCD 的驱动 (需要先rmmod 卸载显示模块,然后通过modprobe 重新加载显示模块)

rmmod fb_st7789v

modprobe fb_st7789v

此时屏幕亮起,可以看到我们的LCD 正显示xillinux 命令行的内容,此时LCD 对应设备 /dev/fb0

Smart Zynq SP 1.47寸屏显示
Smart Zynq SP2 1.3寸屏显示

可见我们的屏幕已经正常被驱动了

4. 接下来可以玩些好玩的,我们在屏幕上显示xillinux的图形桌面,在命令行中输入startx来启动桌面(通过串口,或者通过连接到主板的键盘都可以,如果是键盘输入,则输入的内容将显示在板载屏幕上)

startx

可以看到图形桌面被启动了,并显示在我们的板载屏幕上。

Smart Zynq SP 1.47寸屏显示Xillinux 桌面
Smart Zynq SP2 1.3寸屏显示Xillinux 桌面

以上是对屏幕的功能进行简单的演示,大家可以自行对屏幕的功能进行探索。

附加内容 (仅Smart Zynq SP2)

SP2的主板将屏幕更改为分辨率是240×240的1.3寸屏,因为长宽一致,所以屏幕自身横竖屏切换并不影响显示效果,本站SP2对应的 boot partition kit (demo bundle 示例包)中屏幕显示默认横屏显示,如果我们需要将屏幕显示改成竖屏显示(板子竖直状态显示),则将下面附件中的压缩包进行解压,并将Xillinux系统TF卡第一分区中的 devicetree.dtb文件用压缩包中的同名文件进行替换即可。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注