用hitool烧写uboot到spiflash的原理

代二毛 代二毛     2022-12-12     191

关键词:

芯片平台

本文是以海思的HI3518E芯片讲解的,HI3518E芯片内部集成了64M的DDR,开发板上在HI3518E芯片外部连接了16M的spi flash芯片。uboot、kernel、rootfs最终都烧写到spi flash中。

硬件连接的原理图

解析:
1.PC端上运行HiTool软件,通过串口和海思芯片相连;
2.海思芯片内置了64M的DDR,在烧写到spi flash中充当中转的作用;
3.spi flash连接在海思的spi flash的相关引脚上;

烧写的原理:

1.硬件上 bootrom_sel 需要设置为 1,从 bootrom 启动。芯片上电后,当启动模式为从 BOOTROM 启动时,海思的BOOTROM的程序会去初始化串口,然后尝试与海思的HiTool工具建立通信。
2.HiTool工具在开始烧写后,会与海思芯片建立连接,首选与 bootrom 进行交互,工具 DDR 参数传送到传到 bootrom。
3.先下载uboot的一部分代码到内部的RAM中,用这部分代码去初始化64M的DDR;
4.将剩下的uboot程序下载到DDR中,然后通过DDR中启动uboot,然后将DDR中的uboot程序烧写到外部的spi flash中。
5.至于烧写的更具体的细节,在HiTool软件、海思的内置代码、uboot中做了隐藏,一般不需要知道这些细节。我们只需要保证硬件连接正确,在HiTool软件中指明要烧写的文件、flash类型、起始地址、烧写长度,就可以一键完成烧写。

HiTool工具的使用

参考博客《海思烧录工具HiTool的使用方法以及烧录uboot》

hi3516开发笔记:通过hitools使用网口将ubootkernelroofts和userdata按照分区表烧写镜像

...》下一篇:《Hi3516开发笔记(六):通过HiTools使用USB/串口将uboot、kernel、roofts和userdata按照分区表烧写镜像》敬请期待…前言  前面生成了uboot,kernel,sample,userdata(我们实际修改了ip的),rootfs&#x... 查看详情

hi3516开发笔记:通过hitools使用网口将ubootkernelroofts和userdata按照分区表烧写镜像

...》下一篇:《Hi3516开发笔记(六):通过HiTools使用USB/串口将uboot、kernel、roofts和userdata按照分区表烧写镜像》敬请期待…前言  前面生成了uboot,kernel,sample,userdata(我们实际修改了ip的),rootfs&#x... 查看详情

在ubuntu下使用啥工具对uboot及内核进行烧写

...我想通过linux平台对U-boot及内核等进行所有操作,尤其是烧写uboot和内核,有什么工具吗,怎么烧写法,注意什么,答得好的另外加悬赏,悬赏10-20不定。tftp比较通用的网络烧写DNWUSB烧写参考技术A只需要ARM的交叉编译器加uboot源... 查看详情

hi3516开发笔记:通过hitools使用usb/串口将ubootkernelrootfs和userdata按照分区表烧写镜像

...栏上一篇:《Hi3516开发笔记(五):通过HiTools使用网口将uboot、kernel、roofts和userdata按照分区表烧写镜像》下一篇:《Hi3516开发笔记(七):Hi3516虚拟机交叉开发环境搭建之交叉编译Qt》前言  前... 查看详情

脱机烧录实战技能任何支持swd接口的单片机都可以方便移植的spiflash烧写算法制作,含视频说明(2022-05-30)

之前分享过SPIFlash烧写算法的文档版制作教程,但是网友反馈移植到其它单片机上不是很方便,此贴为此而生,方便大家移植到各种平台。SPIFlash烧写算法的应用场景:1、IDE环境,比如MDK,可以方便的一键下载内部Flash和外部SPIFl... 查看详情

求助关于uboot.bin烧写uimage到开发板的内存中

直接文件系统列举吧烧写uboot、内核及文件系统:1、uboot烧写载Uboot两步骤第步uboot载系统扩展RAM并运行第二步通内存运行uboot整uboot载内存再烧写nandflash第步载uboot扩展RAM首先使用短路块选择系统内部启复位或者电串口软件(115200... 查看详情

jlink使用技巧之烧写spiflash存储芯片(代码片段)

...ink可以烧写Hex文件,作为ARM仿真调试器,但是知道能烧写SPIFlash的人应该不多,本篇文章将介绍如何使用JLink来烧写或者读取SPIFlash存储器,JLink软件包含的工具中,有一个是JFlashSPI工具,这就是一个烧写和读取SPI存储器的工具了... 查看详情

hi3516开发笔记:通过hitools使用usb/串口将ubootkernelrootfs和userdata按照分区表烧写镜像

...栏上一篇:《Hi3516开发笔记(五):通过HiTools使用网口将uboot、kernel、roofts和userdata按照分区表烧写镜像》下一篇:《Hi3516开发笔记(七):Hi3516虚拟机交叉开发环境搭建之交叉编译Qt》前言  前... 查看详情

hi3516开发笔记:通过hitools使用网口将ubootkernelroofts烧写进emmc

若该文为原创文章,转载请注明原文出处本文章博客地址:https://hpzwl.blog.csdn.net/article/details/128425000红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、... 查看详情

hi3516开发笔记:通过hitools使用网口将ubootkernelroofts烧写进emmc

若该文为原创文章,转载请注明原文出处本文章博客地址:https://hpzwl.blog.csdn.net/article/details/128425000红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、... 查看详情

nboot,eboot和uboot

...况,nandflash不支持xip,所以必须有一个可以执行的程序将烧写在其中的eboot搬到内存中,nboot就是干这个的。nboot烧写在片内的4ksram中。所以 查看详情

海思hi3519av100emmcflash方式linux系统移植hitool工具烧写(代码片段)

因为我这里的海思文档只有SPINORFlash方式的详细烧写步骤,没有emmc方式的,本文提供一个自己成功的案例仅供参考和记录1.准备SDK、安装交叉编译工具、编译osdrv1.1解压SDK包 将Hi3519AV100_SDK_Vx.x.x.x.tgz文件放入ubuntu系统下ÿ... 查看详情

如何将uboot里面的参数传给recovery或kernel

参考技术A直接把文件系统也列举了吧。烧写uboot、内核及文件系统的方法:1、uboot的烧写下载Uboot分为两个步骤,第一步将uboot下载到系统的扩展RAM并运行,第二步通过内存中运行的uboot把整个uboot下载到内存再烧写到nandflash第一... 查看详情

海思hi3519av100emmcflash方式linux系统移植hitool工具烧写(代码片段)

因为我这里的海思文档只有SPINORFlash方式的详细烧写步骤,没有emmc方式的,本文提供一个自己成功的案例仅供参考和记录1.准备SDK、安装交叉编译工具、编译osdrv1.1解压SDK包 将Hi3519AV100_SDK_Vx.x.x.x.tgz文件放入ubuntu系统下ÿ... 查看详情

fpga中的哪个部分存放烧写的程序

...PGA需要重新烧写才能用。通常可以用把image烧到FPGA外部的spiflash中,上电后自动烧到FPGA中。好像记得spartan系列也有内部带有spiflash了。 参考技术B那个不是程序,可以说是编程,可以说存在整个芯片中。你去看看FPGA的原理吧 参... 查看详情

cc3200底板测试-烧写cc3200-launchxl

...下,带仿真器4.错误的串口驱动,这个应该是FT232外接的SPIflash芯片没有烧写固件,5.烧写SPIflash芯片固件6.用uniflash烧写CC3200程 查看详情

如何通过jlink将uboot烧录到开发板的nand里

...根据你自己的情况选定你的flash芯片,先erase芯片,将要烧写的二进制文件拖入Jflash中,再执行烧写,就可以了。参考技术A你的NAND里面有没有UBOOT啊?如果没有只是个裸板得话要通过并口来烧的,软件叫什么来着,记不清了。自... 查看详情

如何通过uboot烧写rootfs.img到nand

  方法一,利用NORFlash。  这种方法是利用JLink能够烧写程序到NORFlash来完成的,首先利用J-FLASHARM将u-boot.bin烧写进NORFlash(记得烧写到NORFlash的0x0起始地址处),然后设置开发板从NORFlash启动,这时候系统进入U-boot命令行模式... 查看详情