正点原子开发板使用和学习

嵌入式资料

正点原子 i.MX6ULL Linux阿尔法开发板

韦东山 嵌入式视频

野火 i.MX Linux开发实战指南

迅为 i.MX6ULL开发板

友善之臂嵌入式

环境配置

开启Ubuntu与Windows文件互传
  • 1.FTP服务
sudo apt install vsftpd
# 打开`vsftpd.conf`文件,找到`local_enable=YES`、`write_enable=YES`这两行,如有注释,取消注释
sudo vim /etc/vsftpd.conf
# 重启FTP服务
sudo /etc/init.d/vsftpd restart

查看交叉编译器版本

arm-linux-gnueabihf-gcc -v
  • 2.设置NFS服务开启
# 安装nfs服务
sudo apt install nfs-kernel-server rpcbind
# 配置nfs
sudo vim /etc/exports
# 在文件最后增加nfs路径,文件路径要配置正确
/home/sml/linux/nfs *(rw,sync,no_root_squash)
# 重启nfs服务
sudo /etc/init.d/nfs-kernel-server restart

SSH服务开启

sudo apt install openssh-server

配置TFTP服务

# 安装tftp相关软件
sudo apt install tftp-hpa tftpd-hpa xinetd

/home/sml/linux目录下创建文件夹tftpboot,使用chmod 777 tftpboot/更改文件夹权限。
新建文件/etc/xinetd.d/tftp,如果没有/etc/xinetd.d 目录的话自行创建,输入如下内容:

server tftp
{
 socket_type = dgram
 protocol = udp
 wait = yes
 user = root
 server = /usr/sbin/in.tftpd
 server_args = -s /home/sml/linux/tftpboot/
 disable = no
 per_source = 11
 cps = 100 2
 flags = IPv4
}
# 启动 tftp 服务
sudo service tftpd-hpa start

打开/etc/default/tftpd-hpa文件,将其修改为如下所示内容:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/sml/linux/tftpboot"
TFTP_ADDRESS=":69" 
TFTP_OPTIONS="-l -c -s"
# 重启 tftp 服务器
sudo service tftpd-hpa restart

编译uboot

正点原子已经移植好的uboot
文件地址:
1、程序源码->3、正点原子 Uboot 和 Linux 出厂源码->ubootimx-2016.03-2.1.0-ge468cdc-v1.5.tar.bz2

拷贝到Ubuntu的alientek_uboot文件夹下,解压缩

tar -vxjf uboot-imx-2016.03-2.1.0-g8b546e4.tar.bz2

1、512MB(DDR3)+8GB(EMMC)核心板

创建mx6ull_alientek_emmc.sh脚本文件,内容如下:

#!/bin/bash
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6ull_14x14_ddr512_emmc_defconfig
make V=1 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j12

运行脚本文件编译EMMC版本的uboot

./mx6ull_alientek_emmc.sh

2、256MB(DDR3)+ 512MB(NAND)核心板

创建mx6ull_alientek_nand.sh脚本文件,内容如下:

#!/bin/bash
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6ull_14x14_ddr256_nand_defconfig
make V=1 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j12

运行脚本文件编译NAND版本的uboot

./mx6ull_alientek_nand.sh

烧写uboot

挂载U盘,通过命令 ls /dev/sd*找出新增U盘

#给予 imxdownload 可执行权限,一次即可
chmod 777 imxdownload 
#烧写到 SD 卡,不能烧写到/dev/sda 或 sda1 设备里面!
./imxdownload u-boot.bin /dev/sdb 

烧写uboot

设置网络环境变量

靠近串口的网口(ENE2)插入网线。

环境变量描述
ipaddr开发板 ip 地址,可以不设置,使用 dhcp 命令来从路由器获取 IP 地址。
ethaddr开发板的 MAC 地址,一定要设置。
gatewayip网关地址。
netmask子网掩码。
serverip服务器 IP 地址,也就是 Ubuntu 主机 IP 地址,用于调试代码。

设置网络环境变量,需要根据实际情况设置。

setenv ipaddr 192.168.3.180
setenv ethaddr b8:ae:1d:01:00:00
setenv gatewayip 192.168.3.1
setenv netmask 255.255.255.0
setenv serverip 192.168.3.111
saveenv
下载zImage到开发板

使用NFS命令

nfs 80800000 192.168.3.111:/home/sml/linux/nfs/zImage

使用TFTP命令

tftp 80800000 zImage

Linux内核移植

1.NXP官方开发板Linux内核编译
NXP官方原版Linux源码路径:1、例程源码->4、NXP 官方 原版 Uboot和 Linux->linux-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2。拷贝到Ubuntu系统中,重新命名为linux-imx-rel_imx_4.1.15_2.1.0_ga_alientek

修改顶层Makefile

#ARCH		?= $(SUBARCH)
#CROSS_COMPILE	?= $(CONFIG_CROSS_COMPILE:"%"=%)
ARCH		?= arm
CROSS_COMPILE	?= arm-linux-gnueabihf-

配置并编译Linux内核
进入到Ubuntu中的Linux源码目录下,执行如下命令配置Linux内核:

# 第一次编译 Linux 内核之前先清理一下
make clean 
# 配置 Linux 内核
make imx_v7_mfg_defconfig 
# 编译 Linux 内核
make -j16
console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw
cp arch/arm/boot/zImage /home/sml/linux/tftpboot/ -f
cp arch/arm/boot/dts/imx6ull-14x14-evk.dtb /home/sml/linux/tftpboot/ -f

参考链接

正点原子 Linux imx6ull学习开始 Action~
IMX6ULL驱动开发实战连载-01搭建开发环境
【正点原子I.MX6ULL】一、Linux驱动开发环境搭建,初次体验开发全流程(必看)
正点原子linux阿尔法开发板使用——驱动开发篇
【正点原子I.MX6ULL】二、配置交叉编译工具链,编译U-boot和Linux内核源码

使用TFTP进行文件传输

【正点原子阿尔法 IMX6ULL Linux开发板】第7篇 运行鸿蒙系统
Harmonyos For Imx6ull

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值