其他分享
首页 > 其他分享> > STM32MP157嵌入式开发—3、ARM端带QT编译库的系统镜像烧录移植

STM32MP157嵌入式开发—3、ARM端带QT编译库的系统镜像烧录移植

作者:互联网

四、ARM端带QT编译库的系统镜像烧录移植(采用正点原子编译好的出厂系统)

4.1、Windows 使用 STM32CubePro 烧写固件到 eMMC将MP157开发板

插上电源,拨码开关选择为 000(USB 模式),将一根 USB Type-C数据线连接到底板 USB_OTG, 再连接到 PC(电脑)的 USB接口。 另一根 USB Type-C数据线连接到底板 USB_TTL(串口非必需连接, 目的是观察一些打印信息)。然后开发板上电。

双击 STM32CubeProgrammer 桌面图标打开 STM32CubeProgrammer 界面。按如下步骤,选择设备类型为 USB,点击刷新设备,刷新不出来可以按开发板上的 RESET 按钮(注意不要将此 USB 设备连接到 Ubuntu 虚拟机上去了)。如下图,出现 USB1 表明成功!注意:若没有安装过DFU驱动,插上电源上电。上电过后会自动安装 DFUSE驱动。
在这里插入图片描述
出现如上图,表明驱动安装正常
在这里插入图片描述

按下图的步骤,打开烧录到 eMMC 的 tsv 配置文件,网盘路径为:链接/MP157/QT开发环境搭建/QT安装/QT14.2文件系统。
下载到本地后,打开文件:
在这里插入图片描述
在这里插入图片描述浏览固件所在目录,在网盘路径为链接/MP157/QT开发环境搭建/QT安装/STM32CubeProg 烧录固件包。
在这里插入图片描述
确认连接信息,直接点击 Download(下载)。
在这里插入图片描述 烧写过程中会重连接开发板,注意, 如果您正在使用 Ubuntu 虚拟机, 不要让开发板连接到 Ubuntu 虚拟机上去了。

下图为正在烧写中:

在这里插入图片描述
在这里插入图片描述烧写完成如下图,拨码到 010, EMMC 启动即可。
在这里插入图片描述

4.2、EMMC启动后,首先打印TF-A启动信息:

在这里插入图片描述
在这里插入图片描述

4.3禁用 Qt 界面启动

由于我们目前使用的是yocto编译好的根文件系统,自带了qt桌面自启动服务,所以如果我们想要执行自己的qt应用程

序,需要禁用qt界面开机自启动,当然也可以选择不禁用。在高版本的内核和高版本的 Yocto 里,所使用的文件系统早

已经使用 Systemd 方式来用来启动守护进程,已成为大多数发行版的标准配置。

我们烧录的是zdyz编译好的出厂系统,如何禁用正点原子 Qt 桌面启动呢?出厂默认是启动 atk-qtdesktop-

linuxfb.service 这个服务,如果我们不需要桌面服务,就执行以下命令即可关闭或重启桌面服务。

但是下次机器重启仍会进入桌面服务。

systemctl stop atk-qtdesktop-linuxfb // 暂时停止 Qt 桌面服务,重启服务用 restart
systemctl reastart atk-qtdesktop-linuxfb // 重启 Qt 桌面服务

若想切换到 eglfs 方式启动 Qt 桌面。

systemctl daemon-reload // 重新加载服务
systemctl enable atk-qtdesktop-eglfs.service // 开启 Qt 以 eglfs 方式启动的服务
reboot // 重启生效

若不需要启动 Qt 桌面服务。使用 systemctl 指令将此三种方式显示 Qt 的服务关闭出厂默
认启动 atk-qtdesktop-linuxfb服务。只需要关闭此项即可。停止 Qt 桌面或者关闭 Qt 桌面(如果关
闭下次不会自动启动!)

systemctl disable atk-qtdesktop-linuxfb // 执行此项关闭 Qt 桌面服务,下次启动不生效

4.4、查看开发板Qt库的版本

要想在开发板上运行Qt程序,首先板子的系统要支持Qt图形库,而且要确定这个的库的版本。那么怎么看

开发板是否支持Qt呢?可以使用find搜索命令,搜索本地所有Qt相关的文件:

#进入到根目录
cd /

#搜索qt相关的文件
find -name "*Qt*"
#或者
find -name "*qt*"

如果搜索结果有很多so类型的文件,说明这个开发板上的系统是支持Qt的,而且后面的数字就是当前Qt库

的版本号。

在这里插入图片描述可以看出,现在的系统是支持Qt的,库的版本是5.14.2。

至此,ARM端板卡的QT开发环境已经搭建完毕。

标签:烧录,桌面,QT,启动,STM32MP157,开发板,USB,Qt
来源: https://blog.csdn.net/weixin_43335226/article/details/113130853