“1.2 sMonitor s5p6818开发平台”的版本间的差异
第528行: | 第528行: | ||
reboot | reboot | ||
--> | --> | ||
+ | |||
+ | |||
+ | ===qt交叉移植上板=== | ||
+ | |||
+ | 在ubuntu下面利用qtCreator开发出来的应用程序,前面只是在本地ubuntu平台下调试,如果调试后代码没有问题,这时需要将代码交叉编译并下载到目标机(开发板)运行。 | ||
+ | |||
+ | 下面介绍如何在ubuntu下面加载交叉库并编译应用代码。 | ||
+ | <br> | ||
+ | |||
+ | <!-- | ||
+ | ====ARM-Qt库安装==== | ||
+ | |||
+ | 安装的ubuntu系统中,默认自带了ARM-Qt库,所以在此不需要再进行安装。 | ||
+ | |||
+ | *共享交叉工具包 | ||
+ | |||
+ | 将yjz_wkspace.tar.bz2压缩包共享到ubuntu系统,执行如下操作 | ||
+ | |||
+ | # cp /mnt/hgfs/share_dir /root | ||
+ | |||
+ | share_dir即你的共享目录 | ||
+ | |||
+ | 上面安装包务必拷到/root,否则无法编译 | ||
+ | |||
+ | *解压安装工具包 | ||
+ | |||
+ | # cd /root | ||
+ | # tar xvfj yjz_wkspace.tar.bz2 | ||
+ | |||
+ | 即可在当前目录下看yjz_wkspace目录,此为ARM-Qt库 | ||
+ | |||
+ | --> | ||
+ | |||
+ | <!-- | ||
+ | |||
+ | ====ARM-Qt库配置==== | ||
+ | |||
+ | ubuntun自带安装的ARM-Qt库已经完了配置安装工作,所以在此不需要再次进行配置,直接使用即可。 | ||
+ | |||
+ | *点击工程,再点击Manage Kits | ||
+ | |||
+ | |||
+ | ::[[Image:armQtCfg_01.png|600px|link= ]] | ||
+ | |||
+ | |||
+ | *添加qmake工具 | ||
+ | |||
+ | ::[[Image:armQtCfg_02.png|600px|link= ]] | ||
+ | |||
+ | |||
+ | *添加编译器 | ||
+ | /root/yjz_wkspace/buildroot/output/host/opt/ext-toolchain/bin/arm-cortex_a9-linux-gnueabi-g++ | ||
+ | |||
+ | |||
+ | |||
+ | ::[[Image:armQtCfg_03.png|600px|link= ]] | ||
+ | |||
+ | |||
+ | |||
+ | *最后添加套件 | ||
+ | |||
+ | |||
+ | ::[[Image:armQtCfg_04.png|600px|link= ]] | ||
+ | |||
+ | |||
+ | 上面的编译器及qmake通过下拉即可选择。 | ||
+ | --> | ||
+ | |||
+ | ====交叉编译程序==== | ||
+ | |||
+ | *点击工程的“Add Kit” | ||
+ | |||
+ | ::[[Image:armQtKit_01.png|600px|link= ]] | ||
+ | |||
+ | |||
+ | *此时发现多了一个编译套件 | ||
+ | |||
+ | ::[[Image:armQtKit_02.png|600px|link= ]] | ||
+ | |||
+ | |||
+ | *选中,并点击编译 | ||
+ | |||
+ | |||
+ | ::[[Image:armQtKit_03.png|600px|link= ]] | ||
+ | |||
+ | |||
+ | |||
+ | 有错误,这主要是由于编译出来的是ARM平台代码,不能在x86上执行。 | ||
+ | |||
+ | 再回到/var/qt5test目录,发现又多了一个目录build-src-arm_linux-Debug | ||
+ | |||
+ | 里面的myled文件即可以开发板中执行的QT程序。 | ||
+ | |||
+ | |||
+ | |||
+ | ====下载执行程序==== | ||
+ | |||
+ | =====U盘挂载方式===== | ||
+ | |||
+ | *将ubuntu工程可执行文件src共享到windows下面,并拷贝到U盘中 | ||
+ | *将U盘插入开发板,并上电进入开发板linux系统 | ||
+ | *挂载并执行代码(此步全部在开发板linux系统中执行) | ||
+ | # mkdir /usb | ||
+ | # cat /proc/partitions | ||
+ | |||
+ | 会发现多了一个sda1的目录,此为U盘节点 | ||
+ | |||
+ | # mount /dev/sda1 /usb | ||
+ | # cp /usb/qmenu /tmp | ||
+ | # cd /tmp | ||
+ | #./qmenu -qws & | ||
+ | |||
+ | 可看到程序正常启动并显示到LCD屏幕中,点击可进行相应操作。 | ||
+ | |||
+ | <!-- | ||
+ | 注意:有些开发板可能会报dbus-uuid等关键字的错误,这时需要采用以下方式解决 | ||
+ | <font color="red"># rm -rf /var/lib/dbus | ||
+ | # mkdir /var/lib/dbus | ||
+ | # dbus-uuidgen >/var/lib/dbus/machine-id | ||
+ | </font> | ||
+ | 执行完以上几条命令,重新执行myled程序即可正常启动。 | ||
+ | --> | ||
+ | |||
+ | =====NFS下载方式===== | ||
+ | |||
+ | 前面安装ubuntu时,系统默认已经安装了nfs后台服务,现在只需要配置并启动,即可使用nfs方式下载qt程序到开发板测试。 | ||
+ | |||
+ | *检查系统是否安装nfs服务 | ||
+ | |||
+ | # cat /etc/exports | ||
+ | |||
+ | 如果提示找不到此文件,则系统还没有安装nfs服务,需要安装可以参考前面详细的ubuntu文档 | ||
+ | |||
+ | 如果如下提示,则说明已经安装 | ||
+ | |||
+ | [[Image:nfsDownld_01.png|600px|link= ]] | ||
+ | |||
+ | *添加nfs目录 | ||
+ | |||
+ | 打开/etc/exports文件,添加以下内容 | ||
+ | |||
+ | <syntaxhighlight lang="c" highlight="4"> | ||
+ | /opt/wkspace/trainPG/smartHome *(rw,sync,no_root_squash) | ||
+ | /opt/wkspace *(rw,sync,no_root_squash) | ||
+ | /mnt/hgfs *(rw,sync,no_root_squash) | ||
+ | /nfs *(rw,sync,no_root_squash) | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | 保存退出。 | ||
+ | |||
+ | *重启nfs服务 | ||
+ | |||
+ | # /etc/init.d/nfs-kernel-server restart | ||
+ | |||
+ | |||
+ | *将myled文件拷贝到/nfs目录 | ||
+ | |||
+ | |||
+ | |||
+ | *重启开发板,进入系统执行 | ||
+ | |||
+ | # mkdir /nfs | ||
+ | # mount -o nolock 192.168.0.xxx:/nfs /nfs | ||
+ | # cd /nfs | ||
+ | # ./myled | ||
+ | |||
+ | 此时程序可以在开发板端正常执行起来。 | ||
+ | |||
+ | 注意:192.168.0.xxx即你的ubuntu系统IP | ||
+ | |||
+ | 如果同样报dbus-uuid等关键字的错误,可参考上面u盘挂载部分的解决方案。 | ||
+ | |||
+ | |||
+ | <!-- | ||
+ | ====实践练习==== | ||
+ | |||
+ | 利用前面所学会的移植方法,将前面设计好的登陆界面及计数器合并后移植到开发板中执行。 | ||
+ | |||
+ | 要求: | ||
+ | |||
+ | *程序启动后进入登陆界面 | ||
+ | |||
+ | *输入正确用户名及密码后打开并进入计数器界面 | ||
+ | --> | ||
+ | |||
+ | |||
2021年1月20日 (三) 21:57的版本
目录s5p6818介绍开发板介绍S5P6818采用28nm制作工艺,内置高性能8核A53 ARM架构,在多媒体性能上,它几乎支持全格式视频解码,在 LCD 控制器上,芯片板载 LVDS、 RGB、 MIPI 三路显示控制接口, 显示分辨率可以高达2048*1280@60Hz。 同时,内部集成千兆以太网控制器,能很好地满足更高的网络要求。
s5p6818简单使用硬件设备清单1 6818开发板一套(带7寸1024*600电容触摸液晶模组)
2 5V/2A 电源适配器 1 个
3 USB 数据线 1 根
4 普通网线一根
5 串口线 1 根
简单使用1.硬件设备连接 1 使用电源线将开发板与电脑连接起来
2 使用串口线将开发板与电脑连接起来
3 使用网线将开发板与电脑连接起来
4 打开串口工具
如果不能自动识别出串口,则手动查看端口如下:
输入用户名root,密码123456,回车可以正常进入开发板linux系统中。
开发板环境优化经过上面步骤,我们可能正常进入开发板的后台控制终端,接下来进行开发板的个性化环境配置
关闭自启动
vi /etc/init.d/S99qttest
start) echo "Starting qttest..." #/usr/share/demo/qttest & #/usr/local/bin/smartpic2 -qws & ;; 保存退出. 配置有线网络
vi /etc/init.d/S70netconfig 修改IP地址: #networkd config ifconfig eth0 192.168.0.101 netmask 255.255.255.0 echo nameserver 192.168.0.1 > /etc/resolv.conf 保存退出(记住这个IP地址,后面开发中需要用到)
reboot
# ping www.baidu.com 如果能连上,说明成功了。
qt交叉移植上板在ubuntu下面利用qtCreator开发出来的应用程序,前面只是在本地ubuntu平台下调试,如果调试后代码没有问题,这时需要将代码交叉编译并下载到目标机(开发板)运行。 下面介绍如何在ubuntu下面加载交叉库并编译应用代码。
交叉编译程序
有错误,这主要是由于编译出来的是ARM平台代码,不能在x86上执行。 再回到/var/qt5test目录,发现又多了一个目录build-src-arm_linux-Debug 里面的myled文件即可以开发板中执行的QT程序。
下载执行程序U盘挂载方式
# mkdir /usb # cat /proc/partitions 会发现多了一个sda1的目录,此为U盘节点 # mount /dev/sda1 /usb # cp /usb/qmenu /tmp # cd /tmp #./qmenu -qws & 可看到程序正常启动并显示到LCD屏幕中,点击可进行相应操作。
NFS下载方式前面安装ubuntu时,系统默认已经安装了nfs后台服务,现在只需要配置并启动,即可使用nfs方式下载qt程序到开发板测试。
# cat /etc/exports 如果提示找不到此文件,则系统还没有安装nfs服务,需要安装可以参考前面详细的ubuntu文档 如果如下提示,则说明已经安装
打开/etc/exports文件,添加以下内容 /opt/wkspace/trainPG/smartHome *(rw,sync,no_root_squash)
/opt/wkspace *(rw,sync,no_root_squash)
/mnt/hgfs *(rw,sync,no_root_squash)
/nfs *(rw,sync,no_root_squash)
保存退出。
# /etc/init.d/nfs-kernel-server restart
# mkdir /nfs # mount -o nolock 192.168.0.xxx:/nfs /nfs # cd /nfs # ./myled 此时程序可以在开发板端正常执行起来。 注意:192.168.0.xxx即你的ubuntu系统IP 如果同样报dbus-uuid等关键字的错误,可参考上面u盘挂载部分的解决方案。
返回: 上一页 |