目录
前言
手里有一块剩下来的之前学习使用的正点原子开发板IMX6ULL,正好最近刷抖音看见一些语音助手,觉得很有意思,于是决定自己也做一个语音助手,主要用来播放视频。
一、项目介绍
主要还是使用开发板上现有资源进行开发,考虑到I.MX6ULL 性能比较差,而且没有硬件视频解码,并且视频的分辨率最好是在在 640*480 左右,我认为不如直接播放本地视频,也就是使用语音识别控制本地视频的播放,比如暂停/继续/终止/切换视频等。
开发平台:正点原子I.MX6U ALPHA 开发板
音频芯片:WM8960音视频芯片
UI设计平台:Qt5.12.9
二、环境配置
1.虚拟机安装(配置共享文件夹)
虚拟机使用VMware WorkstationPRO 17,Linux操作系统使用Ubuntu16.04LTS,网上教程很多,这里不再赘述。这里主要讲解如何使用samba服务器共享文件夹,方便后继开发。
- 安装Samba服务
打开Linux终端,输入以下命令
sudo apt-get install samba samba-common
- 配置共享文件夹
以/home为例 (当然不推荐真的使用/home做完共享目录,但是个人开发的话其实无所谓)
$ sudo chmod 775 /home/ -R
- 添加Samba用户
主要是用于设备认证,方便主机和虚机进行文件交互
sudo smbpassword -a username
其中username为自己的用户名,输入两次密码即可注册完成
- 修改配置文件
修改前记得先备份一份,配置文件一般在/etc/samba下
[samba]
comment = samba server
path = /home/
browseable = yes
read only = no
guest ok = yes
writable = yes
valid users = username
[samba]是之后在window中配置共享文件夹时会使用到的名字
path为之前配置的共享文件路径,使用pwd查看绝对路径填入其中即可
valid users为之前注册的用户名
- 重启samba
sudo service smbd restart
- 主机操作
在进行这一步之前要求Ubuntu与主机之间能够互相ping通,推荐虚拟机直接使用桥接网络设置,能够省下很多麻烦
在Ubuntu中记录下Ubuntu的IP地址,输入以下命令即可
ifconfig
在主机中打开运行窗口

在其中输入Ubuntu的IP地址

成功后出现如上图所示
一般会让你输入密码作为登录验证,和直接映射网络驱动器同理
完成后,即可在window和Ubuntu之间实现文件共享
2.安装交叉编译工具链
接下来要进行的Uboot 移植、 Linux 移植这些都需要在 Ubuntu 下进行编译,编译就需要编译器,但是 Ubuntu 自带的 gcc 编译器是针对 X86 架构的!而开发板编译的是 ARM 架构的代码,所以需要一个在 X86 架构的 PC 上运行,可以编译 ARM 架构代码的 GCC 编译器,这个编译器就叫做交叉编译器。
开发板主控芯片IMX6ULL是Cortex-A7架构的,使用交叉编译工具链arm-linux-gnueabihf,这里附上链接https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/arm-linux-gnueabihf/
打开网站后可以见到很多交叉编译工具链

这里需要根据自身的Ubuntu版本进行选择,笔者使用的是gcc-linaro-4.9.4- 2017.01-x86_64_arm-linux-gnueabihf.tar.xz。
下载完成后利用之前搭建好的samba共享文件夹将压缩包放入Ubuntu中,并将其放在指定目录下解压缩
sudo cp gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/ -f
解压命令如下:
sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
配置环境变量后即可使用
sudo vim /etc/profile
在最后添加
export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin
记得保存后退出vim编辑器,重启Ubuntu系统后就能使用交叉编译工具链,在使用前安装其他库如下命令
sudo apt-get install lsb-core lib32stdc++6
输入以下命令查看编译器版本号
arm-linux-gnueabihf-gcc -v
如使用相同交叉编译工具链,输出如下
到此,交叉编译工具链安装完成。
最后,笔者恳请各位博友能够指导一二,毕竟该项目为笔者临时起意,且主要目的是能够学习到更多知识,以及对自身所学进行一个梳理,还请各位博友不吝赐教。
643

被折叠的 条评论
为什么被折叠?



