IMX6学习记录(17)-编译官方SDK,制作镜像,DD烧录

上面是我的微信和QQ群,欢迎新朋友的加入。

1.下载

地址:https://www.nxp.com.cn/products/processors-and-microcontrollers/arm-processors/i.mx-applications-processors/i.mx-6-processors/i.mx-6ull-single-core-processor-with-arm-cortex-a7-core:i.MX6ULL?tab=Design_Tools_Tab

有两种SDK,一种是windows下面的,一种是linux下面的

下载完之后

其中win的包安装之后:

不管这个,直接看linux下的包

2.安装

土匪协议,被迫同意

指定安装路径

我的路径

最终,好像和win没什么区别

3.测试编译

sudo apt-get install cmake
sudo apt-get install gcc-arm-none-eabi
cd /home/jun/i.mx6/sdk/SDK_2.2_MCIM6ULL/boards/evkmcimx6ull/demo_apps/hello_world/armgcc
./build_ddr_release.sh

生成文件

4.制作镜像

/home/jun/i.mx6/sdk/SDK_2.2_MCIM6ULL/tools/imgutil

打开readme.txt

原文:
   IMGUTIL User Guide
  
   ======================================
   
   1. Build SDK2.0 application
   2. Copy built binary (.bin file) to imgutil/<board> folder and rename to sdk20-app.bin
   3. In imgutil/<board> folder, run mkimage.sh in mingw32 shell to get bootable image file sdk20-app.img
       a. If the image is built with ram link file, use "mkimage.sh ram" to make the bootable image.
       b. If the image is built with flash link file, use "mkimage.sh flash" to make the bootable XIP image.
       c. If the image is built with ram link file and want to boot from MicroSD card, use "mkimage.sh sd" to make the bootable image.

   ======================================

使用指导:

1.编译SDK2.0的应用程序,就是刚刚那个helloworld以及其他的一些代码,已经做完了

2.把二进制文件拷贝到imgutil/<board>目录下,并且重命名为sdk20-app.bin,就是把生成的bin文件(编译的时候,就是这个名字),拷贝到evkmcimx6ull下面。

a.如果是编译的ram的文件,使用mkimage.sh ram制作镜像

b.如果是编译的flash的文件,使用mkimage.sh flash制作镜像

b.如果是编译的ram的文件,但是要从SD卡启动,使用mkimage.sh sd制作镜像

好,照这个说明做就是了

./mkimage.sh sd

产生一个IMG文件

5.烧录

查看自己的磁盘名称,我的是SDB,选错盘可能会把电脑干崩

 

确定固件烧录的起始地址:

这个东西,是SD卡的首地址,所以把数据从头开始搞,就没啥问题了

使用DD命令烧录

sudo dd if=sdk20-app.img of=/dev/sdb bs=1k seek=0 conv=fsync

1. if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >

2. of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >

3. ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。

    obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。

    bs=bytes:同时设置读入/输出的块大小为bytes个字节。

4. cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。

5. skip=blocks:从输入文件开头跳过blocks个块后再开始复制。

6. seek=blocks:从输出文件开头跳过blocks个块后再开始复制。

通电,正常显示

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值