本文记录了制作基于ZYNQ等含有PL端(FPGA)和PS端(ARM)的bin文件,用于烧写flash以上电自启动程序。这里将不叙述基于单一的PL端(FPGA)的bin文件制作,有需要的读者可以自行寻找。

1、首先在Vivado编写完自己的PL端程序,完成“综合(Synthesis)”,“实现(Implementation)”和“生成比特流(Generate Bitstream)”之后,在vivado左上角点击File->Export->Export Hardware,在随后的界面中勾选“Include bitstream”选项,点击“OK”即可。如下图a和b所示。然后在图a界面中点击“Launch SDK”打开SDK编辑软件。

2、若在Xilinx SDK的Project Explorer窗口中为自己所需工程,则等待自动编译完成,跳到第3步。若不是自己所需的工程,则全部删除;若没有工程,则不需要管。如图c所示。然后点击软件左上角File->New->Application Project,输入Project name(可随意名称),点击next,如图d、e所示;选择Hello World并点击finish创建一个新的hello world工程,如图f所示。此时如果读者需要烧入自己的PS端程序,可以自行编写自己的程序;如果不需要,则跳到第3步。

3、根据图d再建一个工程,根据图e输入工程名字为FSBL,根据图f选择最后一项“Zynq FSBL”,点击完成即可,等待两个工程编译完成。

4、右击新建好的FSBL工程,选择“Create Boot Image”选项。如图g所示。在弹出的界面中,选择Create new BIF file(默认),在下边的Boot image partition界面中,可以看到已经自动加载了bootloader文件,此时点击“Add”,按图h、i 添加工程bit文件和hello world工程elf文件。得到最终的配置图如图j 所示,然后点击Create Image即可。生成完成后便可在目标路径中得到bin文件。

5、将制作好的bin文件烧写到flash。按图k选择XiIinx SDK工具栏的Xilinx->Program Flash,并按图 l 配置各选项,点击Program即可将生成的bin文件烧写到FPGA的flash中。其中Device为仿真器连接的开发板,默认Auto Detect即可;Image File为第4步生成的bin文件;Offset为地址偏移量,这里选择0即可;FSBL File即FSBL工程编译后生成的elf文件。

到这里,bin文件便制作完成并烧写到flash中,若有哪里写的不对的地方,欢迎各位留言讨论。

征战FPGA之制作FLASH烧写用的bin文件相关推荐

  1. 32要烧写3个bin文件_入门教程3:如何给ESP8266烧录Gagent固件,快速接入机智云实现透传功能...

    上两文说到在机智云上创建自己的第一个设备和使用MCU代码自动生成器生成MCU代码包和修改的注意事项后,今天我们来谈谈如何快速从零开始接入机智云,实现简单的透传功能,以及常见的配网失败问题排查,这里主要 ...

  2. FLASH烧写(简单概括)

    第一次烧写flash,烧写成功还是有些兴奋. 昨天给今天定的任务就是弄会如何烧写flash,今天算是完成任务了. 程序在ram里仿真成功后,就要烧到flash里. 首先要修改cmd文件. MEMORY ...

  3. Porting:telnet远程登录开发板、制作并烧写cramfs和ext4和ramdisk三种格式根文件系统镜像

    1.安装卸载模块不成功的问题     #:'insmod led_drv.ko     #:'lsmod     #:'rmmod led_drv     出现的问题:    // rmmod: ca ...

  4. STM32片内FLASH烧写错误导致ST-LINK烧录不进程序的问题解决过程

    STM32片内FLASH烧写错误导致ST-LINK烧不进程序的问题解决过程 项目及配置描述 这个问题是在做bootloader OTA测试时出现的,其中bootloader由http://iot.rt ...

  5. 怎么重写MDK(KEIL)Flash烧写程序

    MDK提供了Flash烧写程序接口,位于文件夹C:\Keil\ARM\Flash (不同的安装目录参考相对路径).KEIL提供了各种的demo,打开_Template文件夹 有个NewDevice的工 ...

  6. 【Linux】制作U-Boot烧写镜像到SD卡的过程(中篇:LDS文件)

    上一篇文章,讲述了制作U-Boot烧写镜像到SD卡的过程,其中运用make的方式来进行将.s文件编译成.bin文件,那make是什么意思?它主要实现了什么? 先讲一下,如果不采用make的方式该怎样实 ...

  7. 理解ESP32 Flash烧写的DOUT/DIO/QOUT/QIO配置

    一.目的 刚接触ESP32开发的同学如果不是使用Ubuntu进行烧写的话,可能在使用乐鑫的Flash烧写工具时可能会有这样的疑问 Flash工具下载地址 工具 | 乐鑫科技 (espressif.co ...

  8. 嵌入式系统 - Nand Flash 烧写问题排查

    问题背景 板卡:SOM-TL437x-A1 事件:生产了 410 PCS 需要测试.烧写系统,部分板卡烧写出货系统异常. 现象:其中 78 PCS 由于 BTB 问题未测试.332 PCS 功能测试后 ...

  9. F2812 Flash烧写总结

    <!--一个博主专栏付费入口结束--><link rel="stylesheet" href="https://csdnimg.cn/release/p ...

  10. 《iBoard 电子学堂》SPI Flash烧写方法

    <iBoard 电子学堂>通过外部串行FLASH 存储完整的汉字字库和开机画面:本文介绍通过软件 iBoard ToolBox 利用USB (标准 HID 驱动)接口,烧写汉字字库以及开机 ...

最新文章

  1. c++ :: 用法一
  2. html css外接修改无效,HTML外部引用CSS文件为什么会不生效
  3. 学好Linux决心书
  4. Initialization failed for ‘https://start.spring.io‘ Please check URL, network and proxy settings.
  5. python 日记 day4。
  6. docker -v 覆盖了容器中的文件_「安定坊」安全卫士-容器漏洞评估
  7. 取消管理员取得所有权_苏州即将全面取消房迁落户!有房就能落户的时代结束了!...
  8. java中properties类_Java中的Properties类详解
  9. MySql 存储过程 光标只循环一次
  10. 【离散数学】集合论 第三章 集合与关系(4) 集合的归纳定义、归纳证明、数学归纳法第一/二原理
  11. arcgis建立拓扑关系
  12. Nginx安全配置手册
  13. java Web api接入讯飞aiui(1)
  14. css3如何实现字体放大缩小动画
  15. DOP Dilution Of Precision;多点定位 Multilateration;测向交叉定位 三角定位;DAE;无人机
  16. 高可用服务设计之二:Rate limiting 限流与降级
  17. c语言栈的实现和表示
  18. Seata 极简入门
  19. php自动适应屏幕大小,如何解决js获取屏幕大小并且让图片自适应的方法
  20. 【养生】第一步-----筑基

热门文章

  1. Ubuntu GitHub操作——使用仓库
  2. ActiveMQ入门系列三:发布/订阅模式
  3. 二十九 Python分布式爬虫打造搜索引擎Scrapy精讲—selenium模块是一个python操作浏览器软件的一个模块,可以实现js动态网页请求...
  4. Android HandlerThread 消息循环机制之源代码解析
  5. Ubuntu 手动更新firefox的flash插件
  6. 解决php截取文字乱码问题
  7. 时间数值缺失产生的字符串NaT处理
  8. logistics regression 线性不可分转换成线性可分
  9. Linux kernel SMP 中断机制
  10. 使用svnadmin对VisualSVN进行项目迁移