文章目录
- 前言
- 一、硬件平台
- 二、软件平台
- 三、开发环境配置流程
- 总结
前言
书接上期,在这里呢还是需要强调一下项目环境的重要性,不论是在本次项目开发或者是在未来的项目开发中移植是非常重要的一项内容,作为开发者而言,需要考虑移植的平台是否适配,硬件平台是否兼容软件,因此不仅需要选择有用的技术栈,而且得选择移植性好的接口和平台,这样是不是也可以能最大化的做到一劳永逸,哈哈哈!
一、硬件平台
硬件平台主要是A9,笔记本一台,zigbee模块,GPRS模块,USB摄像头一个即可;
注意:A9开发板上自带了ADC、MPU6050、LED模块;
二、软件平台
Ubuntu 12.04 (ubuntu的内核版本是)3.13.0-32-generic(32位内核版本为3.13,奇数表示测试版)
A9平台的内核版本为linux-3.14
三、开发环境配置流程
首先呢我们的重点还是放在项目上面,对于网络文件系统(nfs)的安装就不做赘述了,作为CSDN海硕,安装个nfs还是轻而易举的哈;首先展示一个图片,看一下硬件的接线图:
白色的网线是nfs的传输线,中间的DB9口接的是终端与PC进行通信的串口线,这里注意内核启动初始化的时候是对COM2口做了初始化,所以当然需要插在第二个口,这里可以根据自己喜好在编译内核阶段进行设置即可;
- 步骤一
在安装好nfs服务器的ubuntu环境下重启nfs服务器,并且重启TFTP文件传输协议;保证服务器的协议都处于正常的运行状态;
这里需要注意的是NFS服务器是网络文件系统服务器,而TFTP是文件传输协议
sudo service tftpd-hpa restart
sudo service nfs-kernel-server restart
- 步骤二
将Ubuntu和板子IP设置在同一网段;
板子上的ipaddr与挂载根文件系统的nfs服务器必须在同一网段,并且网关必须设置正确;
而uboot通过环境变量 bootargs 传递参数给 kernel 内核,bootargs存储在设备树的 chosen 节点中,则 kernel 内核是通过读取设备树的 chosen 节点中的 bootargs 属性获取 uboot 传递过来的参数。从而起到引导启动内核的作用;
在配置完成板子IP和Ubuntu的IP后,可以在板子终端尝试ping一下,现象如下就表示成功啦:
下面是nfs文件目录下的设备树,uboot和内核镜像文件,这三个缺一不可,uboot启动引导内核,关闭设备的一些硬件比如看门狗,mmu等,设备树在向内核时,内核会读取设备树中的chosen节点获取参数;
最终启动成功后的界面如下,下图也是Ubuntu环境中nfs服务器根目录下的文件:
Ubuntu环境中nfs服务器根文件系统目录下的文件:
至此环境搭建就全部完成了;
总结
对于新手而言,环境搭建不是一件容易的事情,但往往我们独立搭建成功一次,那么后面不论是哪一个平台,或者是在重新安装环境的时候,都能够迅速的上手并且搭建完成,这是一个完全靠经验的过程,由于主要介绍的是项目,所以大家需要自己独立搭建起来自己的一套开发环境,最终的现象在本期分享中都展现出来了,大家可以根据自己的疑问私信我或者独立解决都是可以的,相信自己可以解决,我当时初次搭建环境时,也是因为环境的问题(就因为一根网线)停滞了一周,所以有些坑自己必须跳一跳,印象才深刻;最后,各位小伙伴们如果有收获,可以点赞收藏哦,你们的认可是我创作的动力,一起加油!