离 线 串 行 Flash 烧 录 器
全文导航(9部分):简介、功能、兼容性、特性、制作资源(关于代码)、图片、原理图与PCB、附件下载
一、简介
1.基于航顺HK32F030R8制作
低成本串行Flash烧录器,可以用来烧录常见的【8脚SOP-208封装】的串行Flash,也可对Flash进行功能测试。
2.采用核心板+扩展板分离式设计
一方面方便后续更换治具来适配不同封装的FLASH;另一方面也可以把核心板单独作为一个开发板使用。视频加载中...
二、功能
1.全程离线操作 ,无需上位机;
2.自动识别 Flash型号;
3.方便简单且直观的操作逻辑,没有上手难度 ;
4.Flash编程:
支持从SD卡编程;支持任意格式文件的烧录 (而不只是bin文件);支持从板载Flash进行编程自动对目标Flash进行擦除、编程和校验 ;5.数据转储功能:
将目标Flash中的数据转储至板载Flash中; 此功能可用于复制Flash中的数据 (用于对其他Flash的编程);6.全片擦除功能;
7.空片检查功能。
三、兼容性
目前提供对以下型号Flash的兼容:
已测试——W25Q64、W25Q128、W25X80、GD25Q64、GD25Q16; 未测试——W25Q40、W25Q16、W25Q32、M25P32、M25P80、M25P40、EN25Q32、S25FL216K、S25FL032P、A25L080。四、特性
1.便捷
核心板+扩展板的设计,方便灵活。
2.核心板
核心板资源USB转UART电路;TYPE-C物理接口USB接口供电带有500mA过流保护 ;引出全部GPIO特殊设计的GPIO布局,使其可以很好的,兼容市面上大部分 ,小型LCD/OLED模块;一个128Mbit (16MByte)SPI-Flash,可用于存储固件、字库等数据;一个Micro-SD卡槽;两个RGB灯:一个供用户使用,另一个为电源/通讯指示;4个轻触开关:包含一个复位按键、一个启动选择开关(BOOT0),两个用户按键(其中KEY_UP具有休眠唤醒功能);标准四线SWD调试接口 。3.拓展板
扩展板资源用于SOP8-208MIL封装的小型烧录座 (可自行替换为SOP8-150Mil的烧录座);一个128x36像素的OLED显示屏4个导航按键。五、注意事项
因为采用了核心板和扩展板分离式的设计。
而立创EDA暂时不支持单项目多工程。
所以项目原理图和PCB都是从独立的项目拷贝而来。
这会导致存在元器件编号冲突的情况,忽略即可。
六、制作资源
提供固件,请到附件中下载。通过DAP Link或者串口烧录即可。 代码在FlashProgrammer.zip中,推荐使用GCC环境进行编译。ps:完整源代码已经上传,此项目已完全开源(详情见第九章、附件下载章节)
这是其他爱好者的提问,希望对你有帮助
七、图片
底板
Flash烧录扩展板
工作图片一
工作图片二
八、原理图与PCB
这是BOM表
一套下来大概66块
九、附件下载
可以参考提示或发我【629烧录器】。
如果你喜欢 这个文章或者觉得非常有用 ,欢迎点赞、转发、关注 一下~
更多推荐:
1.10块钱的DIY | 自制充电宝
2.FPGA「自制」便携 示波器
UBIFS 根文件系统制作
1. UBIFS 文件系统简介
传统的flash文件系统如jffs2, yaffs2等是工作在MTD 设备上,而UBIFS则建立在UBI卷层之上,UBI卷层工作在MTD设备层之上,也可以说,UBIFS涉及三个子系统:
MTD 子系统,提供对flash芯片Raw的访问接口。MTD子系统提供了MTD device的概念,比如/dev/mtdX(字符设备)和/dev/mtdblockX(块设备);l UBI Subsystem, 它工作在MTD设备之上,提供了UBI逻辑卷,对上层屏蔽了一些直接使用MTD设备需要处理的问题,如wear-leveling(磨损平衡)和volume management(坏块管理)功能等;l UBIFS 文件系统,工作于UBI之上。它提供文件的open, read, write等操作;系统之间的层级关系
2.根文件系统镜像文件制作
l mkfs.ubifs 参数说明-x lzo 指定使用lzo压缩方法,默认是lzo, 还支持zlib, zlib的压缩率高,但是lzo压缩解压速度快。
-m 2048 Nand Flash的最小读写单元,一般为page size.
-r ./rootfs 指定根文件系统目录树的路径
-o rootfs.ubifs 指定制作出的根文件系统镜像文件名
-e 126976 指定LEB(Logical Erase Block, 逻辑擦除块)大小。Nandflash 读写单位为页,擦除单位为块,以ESMT F59L1G81MB 为例:一个PEB(Physical EraseBlockSize, 物理擦除块)大小就是2048*64=131072,-e 的算法是物理擦除块大小-2*页大小,这里就是131072-2*2048=126976(注:这里的擦除块大小都不包含oob, 有包含子页和不包含子页之分。 )
-c xxx 指定该分区最大逻辑擦除块数量,该值随着根文件系统分区的大小和该分区的坏块数调整。
l ubinize 参数说明-o rootfs-ubifs.bin 指定ubinize处理后输出的image文件名,该文件可以由u-boot的nand write命令直接烧录;
-m 2048 指定minimum input/output unit 大小,为Nandflash的页大小;
-p 131072 指定物理擦除块大小:64 Pages * 2048 Byte/Page = 131072(不包含oob的大小)
-s 512/2048 指定sub-page-szie大小,如果有sub-page, 则配置为512;如果没有sub-page,则配置为2048
n 关于配置文件说明:image=rootfs-ubifs.img 指定mkfs.ubifs 制作成的根文件系统镜像文件路径;
vol_id=0 指定根文件系统树的卷标为0,u-boot的bootargs参数需要根据它来设置;
vol_size=xxx 指定该UBI逻辑卷的大小,该值计算公式一般为 逻辑擦除块大小*逻辑擦除块个数。该值一般不用写,默认值是image大小。写了这个作用是帮助检查image是否超过了分区限制,制作时候就会提示,否则mount会出错。逻辑擦除块个数的值是经过计算的最大值(前面mkfs.ubifs -c 指定的值),不过volume flag autoresize 参数会自适应大小,不会浪费空间,后面Linux 系统内核启动过程中可以看到这个现象。
vol_type=dynamic
vol_name=xxx 指定UBI Volume的名称,u-boot的bootargs参数需要根据它来设置;
vol_flags=autoresize UBI Subsystem 在系统启动时自动调整逻辑擦除块的个数;
经过ubinize 命令处理过后的根文件系统镜像rootfs-ubifs.bin就可以直接在u-boot使用
nand write 命令烧录到相应的根文件系统分区上去了。
关于Minim Flash input/output, sub-pages, UBI Header的说明:http://www.linux-mtd.infradead.org/doc/ubi.html#L_min_io_unit
相关问答
flash烧录 和ic烧录?,烧录IC服务体验如何??[回答]这个是flash制作过程中会出现的问题,只有重新导入或画入新的图形,进行交换了,希望能够帮到你。这个肯定是电路板有漏电,短路现象了要尽早去维修才...
flash烧录 和ic烧录?,IC烧录原理如何选??[回答]一、定义上的区别1、Nand-flash存储器是flash存储器的一种,其内部采用非线性宏单元模式,为固态大容量内存的实现提供了廉价有效的解决方案。2、NORF...
bios 烧录 方法-ZOL问答nini6039927其实只要是芯片,都可以通过加电压的方式,对Flash进行编程。PLCC只是封装的一种形式,只要你知道编程管脚的定义,在对应的编程管脚上接上线,就可以...
gba 烧录 卡怎么使用?我记得需要使用购买烧录卡时候附带的软件驱动使用的。我当时购买的品牌的ez-Flash2的(有烧录卡和烧录器加连接线)要先安装驱动然后可以打开软件往里面烧录G...
液晶电视 flash 芯片怎么 烧录 ?液晶电视的flash芯片可以通过编程器进行烧录。液晶电视的flash芯片需要存储电视程序和相关数据,如果芯片损坏或者需要更新程序,就需要重新烧录芯片。而编程器...
求助 烧录 stm32的spi扩展 flash 的方法?stm32没这个功能呢。nxp的倒是可以,比如LPC43x0系列的单片机内部没有rom,就用spiflash来当存储器,不过这时候运行的速度就降低了很多。stm32没这个功能呢。...
emmc 烧录 器 烧录 原理?emmc烧录器的原理是对能编程的芯片,在许可的时序范围内,把一窜010101的数据,通过对芯片进行加电操作的方式,改变芯片内部的010101结构,从而达到预期的效果。...
单片机可以重新 烧录 么?单片机是可以重新烧录的。重新烧录指的是将单片机中的程序代码进行更改或者更新。这可以通过将新的程序代码通过编程器或者下载器等工具烧录到单片机中来实现...
芯片为什么可以重复 烧录 ?可以不论是什么型号的单片机,都是可以重复烧录程序的,原因就在于,目前的单片机的程序存储器都是flash结构,可以随意改变存储的数据。虽然单片机可以重复烧...
什么叫做 烧录 卡?烧录卡是GBANDS等掌上游戏机用的一种可擦写卡带,通过烧录,让很多游戏或者各种内容能够存储在一个烧录芯片中,然后通过机器对芯片内容的读取,使用卡里的内容...