打开微信,使用扫一扫进入页面后,点击右上角菜单,
点击“发送给朋友”或“分享到朋友圈”完成分享
本文主要介绍在220EVB板上的环境搭建过程。
1. 开机
在拿到EVB板后,接上电源风扇就会立即转起来,而且生音特别大,比得上服务器风扇的声音了。后来才发现这是没开机的状态,将电源插口右边的开关往左拨一下后,才正式开机,此时风扇转速才趋于正常。
2.搭建开发环境
2.1接线
开机之后则开始搭建开发环境,主要是给evb板安装驱动以及软件栈,系统里面已经安装好了。这里要准备两样东西:网线和USB转TTL串口线。
网线
后面进行网络通信或者tftp下载内核时候需要用到网线。EVB板子上有两个网线接口J83和J95,需要接J83那个口。
USB转TTL串口线
串口是用来将EVB板和HOST端交互数据用的,如下图所示:
串口接的是J85的口。这里有4个针孔,其中红色的不用接,黑色接GND,其他两个接口用minicon串口测试工具试一下。minicon使用方法见https://www.jianshu.com/p/71191dd41eab。使用minicom设置参数时先按CTRL + A进入设置环境,再按对应的键进行设置。
接完后就是上图这个样子。红线是没有接的。当minicom显时如下情况时,表示串口线接对了:
这表示进入了uboot层,输入help命令查看所有操作指令。
2.2搭建tftp服务器
EVB板所需要的驱动以及软件栈是通过tftp服务器从主机端下载的,所以首先得在HOST端搭建好tftp服务器。具体搭建方法可参考https://www.cnblogs.com/wanjianjun777/p/10483813.html
2.3设置EVB板的IP
在u-boot下设置EVB的IP以及ftfp服务器的IP和板子的MAC地址。具体步骤如下:
其中MAC地址就设置文档中那个地址就好了。设置好后ping一下服务器IP看是否设置成功。出现host xx.xx.xx.xx is alive表示IP设置成功。
直接运行run set_force_update命令,就会开始启动烧写。可能会遇到下面这种问题:
这说明EVBc从tftp服务器上下载fs.sys这个文件时失败了,可以先用其他服务器下载试试能不能成功(不要到tftp server本地测试),一般遇到无法下载大部分情况都是防火墙的问题,关闭防火墙就好:ufw disable。如果遇到关闭防火墙还不行,就直接先卸载防火墙试试。
接下来会自动进入到文件下载及安装过程,期间会自动重启,看到waiting for control command的字样时按任意键就可以进入到系统了,输入cnmon查看相关信息。
安装好软件栈后,后续就可以不用串口连接了,可以直接ssh就可以连接到EVB板,以root用户登录,密码是Hello123。他这个系统无法修改密码,所以改了也没用。
3.测试demo
在调试过程中,可以用mount将Host端目录挂在到EDGE上,省去了将文件拷来拷去的过程。
1.修改HOST端/etc/exports 文件,添加如下内容
/home/EDGE *(rw,sync,no_subtree_check,no_root_squash)
这表示你要挂载的目录。
2.运行以下两个命令启动nfs服务
sudo exportfs -a
sudo service nfs-kernel-server restart
3.在edge上运行以下命令挂载
mount -t nfs -o nolock xx.x.xx.xx:/home/EDGE /cambricon/EDGE
EVB上是无法进行编译的,所以得在host端用交叉编译工具将程序编译好后,将程序放到EVB板运行。
因此,首先得在HOST端安装好交叉编译工具,安装方法如下所示:
在交叉编译程序时需要连接的动态链接库必须是也是经过这个工具编译出来的,其中,cnrt,cndvr这些就直接用FTP上EDGE包里面的就行。编译方法和x86上的方法基本一致,只需要将g++改成刚刚安装的这个工具就行。具体如下所示:
需要修改的就是将g++改成aarch64-linux-gun-g++,连接的库改成aarch64对应的库就行。如果要用到opencv这些库,就得用这个工具重新编译生成了。
热门帖子
精华帖子