裸机开发及开发环境搭建

ARM 的裸机开发,也就是不带操作系统开发,就和我们开发 STM32 一样,如果
STM32 开发经验的话学起本篇会很容易
1 、裸机开发是了解所使用的 CPU 最直接、最简单的方法,裸机开发是直接操作 CPU 的寄存器。
Linux 驱动开发最终也是操作的寄存器 ,但 是在操作寄存器之前要先编写一个符合 Linux 驱动的框架 。同样一个点灯驱动,裸机可能只需 要十几行代码,但是 Linux 下的驱动就需要几十行代码。
2.  Linux 驱动开发和 STM32 开发区别 很大,比如 Linux 没有 MDK、IAR 这样的集成开发环境,需要我们自己在 Ubuntu 下搭建交叉编译环境。
3 、裸机开发是连接 Cortex-M (如 STM32 )单片机和 Cortex-A( I.MX6U) 处理器的桥梁

1.开发环境搭建

1.1Ubuntu Windows 文件互传

在 Windwos 下进行 代码编写,然后将编写好的代码拿到 Ubuntu 下进行编译。Windows Ubuntu 下的文件互传我 们需要使用 FTP 服务,设置方法如下:

1.1.1开启ubuntu下的FTP服务

打开 Ubuntu 的终端窗口,然后执行如下命令来安装 FTP 服务: 裸机开发及开发环境搭建_第1张图片

确保上面两行前面没有“#”,有的话就取消掉

修改完 vsftpd.conf 以后保存退出,使用如下命令重启 FTP 服务: 

sudo /etc/init.d/vsftpd restart

1.1.2windows下FTP客户端安装

Windows FTP 客户端我们使用 FileZilla ,这是个免费的 FTP 客户端软件,可以在 FileZilla
官网下载,下载地址如下: https://www.filezilla.cn/download 裸机开发及开发环境搭建_第2张图片
裸机开发及开发环境搭建_第3张图片
安装完毕界面如图
FileZilla 软件设置
Ubuntu 作为 FTP 服务器, FileZilla 作为 FTP 客户端,客户端肯定要连接到服务器上,打开
站点管理器,点击:文件 -> 站点管理器
裸机开发及开发环境搭建_第4张图片 点击图 中的“新站点 (N)”按钮来创建站点,将新的站点命名为“Ubuntu” 裸机开发及开发环境搭建_第5张图片
裸机开发及开发环境搭建_第6张图片
终端窗口输入ifconfig查看地址及参数
裸机开发及开发环境搭建_第7张图片 然后打开站点管理器,选中要设置的站点“Ubuntu”,选择“字符集”, 裸机开发及开发环境搭建_第8张图片
设置好字符集以后重新连接到 FTP 服务器上,重新链接到 FTP 服务器以后
Ubuntu 下的文件目录中文显示就正常了就可以直接拖文件过去。

 1.1.3Ubuntu NFS SSH 服务开启

NFS 服务开启
后面进行 Linux 驱动开发的时候需要 NFS 启动,因此要先安装并开启 Ubuntu 中的 NFS
务,使用如下命令安装 NFS 服务:
等待安装完成,安装完成以后在用户根目录下创建一个名为“ linux ”的文件夹,以后所有
的东西都放到这个“ linux ”文件夹里面,在“ linux ”文件夹里面新建一个名为“nfs”的文件夹, 裸机开发及开发环境搭建_第9张图片
创建的 nfs 文件夹供 nfs 服务器使用,以后我们可以在开发板上通过网络文件系
统来访问 nfs 文件夹,要先配置 nfs ,使用如下命令打开 nfs 配置文件/etc/exports: 裸机开发及开发环境搭建_第10张图片 重启 NFS 服务,使用命令如下:
SSH 服务开启
开启 Ubuntu SSH 服务以后我们就可以在 Windwos 下使用终端软件登陆到 Ubuntu ,比如
使用 SecureCRT Ubuntu 下使用如下命令开启 SSH 服务: 上述命令安装 ssh 服务, ssh 的配置文件为 /etc/ssh/sshd_config ,使用默认配置即可。

2.Ubuntu 交叉编译工具链安装

ARM 裸机、 Uboot 移植、 Linux 移植这些都需要在 Ubuntu 下进行编译,编译就需要编译
器,而我们现在 要编译的是 ARM 架构的代码,所以我们需要一个在 X86 架构的 PC 上运行,可以编译 ARM 架 构代码的 GCC 编译器,这个编译器就叫做交叉编译器,总结一下交叉编译器就是:
1.它肯定是一个 GCC 编译器。
2 、这个 GCC 编译器是运行在 X86 架构的 PC 上的。
3 、这个 GCC 编译器是编译 ARM 架构代码的,也就是编译出来的可执行文件是在 ARM
片上运行的。
交叉编译器中“交叉”的意思就是在一个架构上编译另外一个架构的代码,相当于两种架
构“交叉”起来了
Linaro GCC 编译器下载地址如下:
https://releases.linaro.org/components/toolchain/binaries/latest-7/arm-linux-gnueabihf/ 裸机开发及开发环境搭建_第11张图片 裸机开发及开发环境搭建_第12张图片 我们要先将交叉编译工具拷贝到 Ubuntu 中,我们在当前用户根目录下创建了一个名为“linux”的文件夹,在这个 linux 文件夹里面再创建一个名为“tool”的文件夹,用来存放一些开发工具。使用前面已经安装好的 FileZilla 将交叉编译器拷贝到 Ubuntu 中刚刚新建的“tool”文件夹中,操作如图 裸机开发及开发环境搭建_第13张图片 裸机开发及开发环境搭建_第14张图片

你可能感兴趣的:(MX6U嵌入式linux,linux)