本文记录了Hi3518E的开发过程,主要包括硬件连接,挂载到虚拟机,在开发板上执行虚拟机里面的程序。


硬件平台:Hi3518E


虚拟机系统:Ubuntu14.04




1、硬件连接

由于开发板比较贵,所以我直接购买了淘宝上的海思HI3518E摄像头产品作为开发的硬件平台(以下统称ARM板)。


淘宝链接:https://item.taobao.com/item.htm?spm=a1z09.8149145.0.0.7dz1eI&id=40164137223&_u=n251h1s592e,有需要的朋友可自行采购。


1)核心板的UART0连接到PC,需自行将串口线引出,连接到串口转USB模块,再通过USB接口连接到PC。


2)板子连接网线。


3)板子连接电源线。


串口设置如下:


主机连接虚拟机的redis 虚拟机连接硬件_Hi3518E




2、ARM板连接到虚拟机,互ping连接成功


我的ARM板在启动完毕后,会需要用户输入用户名和密码进行登录,否则无法进行后续的操作,用户名为admin或者root,密码hk3518e。


登陆后,会在串口上打印如下信息,"Welcome to HiLinux"。


主机连接虚拟机的redis 虚拟机连接硬件_mount_02


板子启动完毕,默认没有IP地址,我们手动设置个,命令ifconfig eth0 192.168.x.xxx。


注意ARM板,PC和虚拟机的IP地址需要在一个网段里面。


然后分别在虚拟机的终端和ARM板的串口尝试ping命令,查看网络是否连接成功。


如果ARM板ping不通虚拟机,那可能是虚拟机网络设置的问题,可按照下图修改虚拟机的网络连接设置,这个操作的目的就是为了让三者在同一个网段里面。


主机连接虚拟机的redis 虚拟机连接硬件_Hi3518E_03




3、挂载ARM板到虚拟机


挂载之前需要确认虚拟机的nfs服务是否安装、配置,并且启动。



nfs安装配置的方法可参考链接http://jingyan.baidu.com/article/e5c39bf5abc8f739d76033be.html,互联网的资源的确是很丰富啊。



1)安装nfs:sudo apt-get install nfs-kernel-server



2)建立共享文件夹:sudo mkdir /home/share/nfs



3)配置nfs:sudo vi /etc/exports,打开exports文件



     在文档的最后一行加入/home/share/nfs *(rw,sync,no_root_squash,no_subtree_check),保存退出。



4)重启rpcbind:sudo /etc/init.d/rpcbind restart



5)重启nfs:sudo /etc/init.d/nfs-kernel-server restart






挂载操作,在ARM板终端执行



#mount -t nfs -o nolock 192.168.0.189:/home/cary/Hi3518/nfs/  /nfs



这个IP是虚拟机linux的IP,/home/cary/Hi3518/nfs是虚拟机下的共享目录,/nfs是要挂接在开发板系统下的指定目录。进入/nfs目录,就可以看到虚拟机linux的共享目录的内容了。






备注:挂载过程中常见错误分析 



1)mount: RPC: Unable to receive; errno = Connection refused 



原因是linux没有开启NFS服务,配置好NFS服务器后,确保重启NFS服务:#service nfs restart,如果还出现这个错误,可以执行这个命令后再试试:#service portmap start,开启portmap服务。  



2)mount: 192.168.1.230:/nfs failed,reason given by server:permission denied 



原因可能是因为要挂载的目录没有读写权限,确保在配置NFS服务器时,基本权限是读/写,还有的原因是/etc/exports 文件没设置好。  



3)rpcbind: server localhost not responding, timed out



挂载NFS命令加上-o nolock,就不会出现这个问题了。



#mount -t nfs -o nolock 192.168.1.105:/ /mnt/nfs



参考链接:http://wenku.baidu.com/link?url=MDWwWt9sXcy0JRWHY7tH8JuEmx6v6U-t91GvY5f3XNh514uuh7v8Hs1jcUQ9nnifKWUJOjGO5pLCDQlUj1cbKmq5AxcIoUnobt6oPaWB-uS






4、ARM板执行虚拟机的程序



1)将执行文件解压到nfs目录下



命令:tar -zxf Hi3518_ITTB_MPP_V1.0.8.1-20140521.tar.gz



2)ARM板终端进入共享目录



cd /nfs/Hi3518_ITTB_MPP_V1.0.8.1



用命令ls查看是否进入共享目录,展示效果如下图:



主机连接虚拟机的redis 虚拟机连接硬件_主机连接虚拟机的redis_04



3)执行程序



./HiIspTool.sh  ov9712  720p line






备注:ARM板的串口软件也很重要,一开始我用SSCOM V3.0.exe有出现一直进不了共享目录的问题,后改成SecureCRT.exe就可以了,大家在实验的时候如果出现问题,可以更换软件尝试。






5、启动海思的ISP调试工具测试



1)打开桌面的"ITTP_Stream"。



主机连接虚拟机的redis 虚拟机连接硬件_Linux_05



2)设置ARM板IP地址和芯片型号,点击【OK】按钮,如果连接成功,会出现如下效果。



主机连接虚拟机的redis 虚拟机连接硬件_Linux_06