嵌入式上机(二)Exynos4412开发板

文章目录

  • 一、SD卡制作启动盘
    • 1.拷贝sdfuse_q
    • 2.编译
    • 3.识别SD卡
    • 4.制作SD卡
  • 二、安装uboot2013
    • 1.拷贝
    • 2.SD卡启动方式
    • 3.SD烧写到flash
  • 三、交叉开发环境搭建
    • 1.配置开发网络环境
    • 2.配置交叉工具链
    • 3.交叉开发编译
    • 4.拷贝文件
  • 四、eMMC方式启动开发板
    • 1.设置eMMC
    • 2.tftp方式传输文件
      • (1)测试ping
      • (2)烧写
    • 3.设置启动参数
    • 4.重启开发板


uboot又从2010到2013版本


一、SD卡制作启动盘

1.拷贝sdfuse_q

Windows下:将提供资料中的sdfuse_q拷贝到虚拟机的共享目录下
嵌入式上机(二)Exynos4412开发板_第1张图片
进入虚拟机:将共享目录下的sdfuse_q文件夹拷贝到~目录下

cp /mnt/hgfs/share/sdfuse_q/ ~ -a

2.编译

进入文件夹编译:

cd ~/sdfuse_q
make
chmod 777 *.sh

3.识别SD卡

  1. 用读卡器将SD卡插入电脑

  2. 让虚拟机识别
    在这里插入图片描述
    嵌入式上机(二)Exynos4412开发板_第2张图片
    在这里插入图片描述

  3. 查看挂载情况,确定设备节点

df -Th

嵌入式上机(二)Exynos4412开发板_第3张图片
可以看到节点是sdb1,它挂载在/media/522C-B6E6

4.制作SD卡

将uboot烧写到SD卡中。

cd ~/sdfuse_q
sudo ./mkuboot.sh /dev/sdb1

二、安装uboot2013

1.拷贝

在电脑上重新插入SD卡,如果提示需要格式化,格式化即可。

虚拟机上在SD卡目录下创建目录sdupdate

sudo mkdir /media/522C-B6E6 sdupdate

并将实验移植后的镜像u-boot-fs4412.bin拷贝到该目录下。
嵌入式上机(二)Exynos4412开发板_第4张图片

cp /mnt/hgfs/share/u-boot-fs4412.bin /media/522C-B6E6/sdupdate

2.SD卡启动方式

将SD卡拔出插入开发板卡槽内,拨码拨至1000(SD卡启动)
连接开发板
启动串口调试工具

嵌入式上机(二)Exynos4412开发板_第5张图片
当前的eMMc的u-boot是2010版本,显示SDMMC,即SD卡启动成功。

3.SD烧写到flash

uboot下:将SD卡中2013版本的uboot烧写到flash,这样eMMC中的uboot就变成了2013版本。

sdfuse flashall

关机,将拨码拨至0110(eMMC启动),重启开发板

嵌入式上机(二)Exynos4412开发板_第6张图片
显示eMMC,uboot版本为2013.

三、交叉开发环境搭建

1.配置开发网络环境

将虚拟机的ip修改为192.168.100.192
嵌入式上机(二)Exynos4412开发板_第7张图片

2.配置交叉工具链

sudo gedit /etc/bash.bashrc

嵌入式上机(二)Exynos4412开发板_第8张图片
确保这句话在文件的末尾处,如果不在,添加这句话在文件末尾。

export PATH=$PATH:/usr/local/toolchain/toolchain-4.6.4/bin/

重启配置文件

source /etc/bash.bashrc

工具链的测试

arm-none-linux-gnueabi-gcc -v

嵌入式上机(二)Exynos4412开发板_第9张图片

3.交叉开发编译

#include
int main(){
	printf("hello\n");
	return 0;
}

使用交叉开发编译版本的gccarm-none-linux-gnueabi-gcc来生成可执行文件,这个文件就拷到开发板上运行。
在这里插入图片描述

4.拷贝文件

将实验二中的U-Boot之外的镜像文件夹下的文件拷贝到共享文件夹下。
嵌入式上机(二)Exynos4412开发板_第10张图片

虚拟机下:

cp /mnt/hgfs/share/exynos4412-fs4412.dtb /mnt/hgfs/share/ramdisk.img /mnt/hgfs/share/uImage /tftpboot/

四、eMMC方式启动开发板

1.设置eMMC

还是将拨码拨至0110(eMMC启动)

2.tftp方式传输文件

(1)测试ping

ping Ubuntu主机ip

ping 192.169.100.192

可以ping通虚拟机才可以tftp传文件到开发板上

(2)烧写

uboot命令行下:

  1. 烧写内核镜像
tftp 41000000 uImage
movi write kernel 41000000
  1. 烧写设备树文件
tftp 41000000 exynos4412-fs4412.dtb
movi write dtb 41000000
  1. 烧写文件系统镜像
tftp 41000000 ramdisk.img
movi write rootfs 41000000 300000

这个300000是烧写大小

3.设置启动参数

uboot命令行下:

setenv bootcmd movi read kernel 41000000\;movi read dtb 42000000\;movi read rootfs 43000000 300000\;bootm 41000000 43000000 42000000
setenv bootargs
saveenv	

4.重启开发板

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