最近在对HI3536板子进行开发,第一次接触Linux环境下的嵌入式开发,记录一下自己的踩吭点,留作备忘录。新手一枚,烦请多多指点

Linux下进行嵌入式开发,简单来说:就是在Linux系统下写C/C++代码,交叉编译后,将编译好的可执行文件放到板子上的系统中去运行。这里就涉及到两个很关键的问题:arm板子上也是有一个linux系统的,作为开发者如何像使用本机系统一样地去使用板子上的系统?如何将PC机上编译好的可执行程序放到目标板上?我们一个一个地来解决。

首先说下如何使用arm上的linux系统:

通过USB TO TTL使PC的USB口与板子的调试串口相连接,在PC上安装minicom工具,启动minicom后,给板子上电,则minicom界面会自动打印板载系统的信息,看到有"Welcom to HiLinux"的字眼就表示成功进入系统了,这时候我们就可以通过命令行的形式操作arm上的linux系统了,其中涉及的详细步骤如下:

1.在终端输入命令:sudo apt-get install minicom

2.配置minicom:  sudo minicom -s(打开minicom的配置界面) 然后选择serial port setup(串口设置)  将参数设置成下图所示:

linux c 嵌入式rpc_linux系统

然后按回车键,选择Save setuo as dfl (这样就可以使用minicom了)

3.使用minicom进入板载linux系统:在终端输入命令:sudo minicom  , 然后给板子上电就可以看见minicom界面里面打印出系统信息了

现在再来说一下如何实现PC与板子文件的传输:

推荐使用NFS,极其方便(新手不用问为啥,先入门再说,反正就是好用),以下是详细步骤:

1.安装NFS文件系统: 在终端输入命令:sudo apt-get install nfs-kernel-server

2.建立PC与板子共享的文件夹: 类似windows下新建文件夹一样,命名为nfs(命名随意),路径记录好,第3步配置会有用,这里方便起见,直接在home下新建nfs

3.配置NFS: 在终端输入命令: sudo vim /etc/exports  在文件的最后添加一行代码: /home/gary/nfs*(rw,sync,no_root_squash,no_subtree_check) 保存退出

4.重启nfs: 输入命令:sudo /etc/init.d/rpcbind restart    和   sudo /etc/init.d/nfs-kernel-server restart (到这步nfs服务端就算完成了)

5.打开minicom,进入板载linux系统,设置板子ip和PC的ip在同一网段,本文设置PC静态IP:192.168.60.2  板子默认ip:192.168.60.22(ping一下,通了再进行下一步)

6.将板载系统中的/mnt文件挂载到PC机的nfs文件上(就是刚我们新建的nfs文件夹,这个就作为PC和板子的共享文件夹了) 接着第5步,在minicom界面输入命令:

mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 192.168.60.2:/home/gary/nfs  /mnt (IP地址是PC的) 这样就挂载好了

接下来我们就可以在PC上编译源码,然后把编译好的文件A放入nfs文件里,这样板子就能共享到文件A了,然后就开始在arm上跑吧