CN109614118B - 一种SPI Flash固件烧录方法及装置 - Google Patents

一种SPI Flash固件烧录方法及装置 Download PDF

Info

Publication number
CN109614118B
CN109614118B CN201811410001.8A CN201811410001A CN109614118B CN 109614118 B CN109614118 B CN 109614118B CN 201811410001 A CN201811410001 A CN 201811410001A CN 109614118 B CN109614118 B CN 109614118B
Authority
CN
China
Prior art keywords
firmware
burned
burning
spi flash
lower computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811410001.8A
Other languages
English (en)
Other versions
CN109614118A (zh
Inventor
陈建生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Truly Opto Electronics Ltd
Original Assignee
Truly Opto Electronics Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Truly Opto Electronics Ltd filed Critical Truly Opto Electronics Ltd
Priority to CN201811410001.8A priority Critical patent/CN109614118B/zh
Publication of CN109614118A publication Critical patent/CN109614118A/zh
Application granted granted Critical
Publication of CN109614118B publication Critical patent/CN109614118B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种SPI Flash固件烧录方法及装置。该固件烧录方法包括:步骤1:上位机向下位机发出烧录指令;步骤2:下位机检测待烧录固件的大小;步骤3:下位机擦除SPI Flash内与待烧录固件大小相同的存储空间;步骤4:下位机将待烧录固件写入至SPI Flash内被擦除的存储空间内。该固件烧录方法能够节省更多的烧录时间,提高烧录效率。

Description

一种SPI Flash固件烧录方法及装置
技术领域
本发明涉及固件烧录技术,尤其涉及一种SPI Flash固件烧录方法及装置。
背景技术
大多数电子系统,都需要使用SPI Flash来储存程序固件。在烧录固件的过程中,进行写入操作之前,需要先进行擦除操作,以将SPI Flash进行擦除,而现有的SPI Flash烧录器一般都是整片擦除SPI Flash,尽管待烧录固件的大小可能只有SPI Flash容量的一半,甚至几分之一,多余的擦除操作带来了不必要的时间浪费,擦除时间甚至是写入时间的十几倍,而且SPI Flash的存储空间越大,所需的擦除时间也越长。
另外,现在的烧录器需要手动选择待烧录固件,而烧录器无法判断待烧录固件是否正确,比如要烧录的固件是A版本,生产线的操作人员如果误选择了B版本,甚至选择了其他不是固件的文件,而这些烧录器是无法识别的。
发明内容
为了解决上述现有技术的不足,本发明提供一种SPI Flash固件烧录方法及装置,能够节省更多的烧录时间,提高烧录效率。
本发明所要解决的技术问题通过以下技术方案予以实现:
一种SPI Flash固件烧录方法,包括:
步骤1:上位机向下位机发出烧录指令;
步骤2:下位机检测待烧录固件的大小;
步骤3:下位机擦除SPI Flash内与待烧录固件大小相同的存储空间;
步骤4:下位机将待烧录固件写入至SPI Flash内被擦除的存储空间内。
进一步地,下位机的内置存储单元里储存有待烧录固件,下位机从其内置存储单元里读取待烧录固件。
进一步地,在步骤1中,上位机在发出烧录指令前,还包括:检测待烧录固件的烧录次数,若烧录次数为0,则将其储存的待烧录固件传输至下位机,以将待烧录固件储存在下位机的内置存储单元里。
进一步地,在步骤4中,下位机将待烧录固件写入SPI Flash内后,检测SPI Flash内的已写入固件,若已写入固件与其储存的待烧录固件不一致,则重复步骤2-4。
进一步地,在进行步骤4之后,还包括:
步骤5:下位机向上位机发送一反馈信号;
步骤6:上位机将待烧录固件的烧录次数+1。
进一步地,上位机每次开机后,均将待烧录固件的烧录次数重置为0。
进一步地,上位机每次开机后,均通过互联网检测其储存的待烧录固件与服务器上的新发布固件是否一致,若不一致则将其储存的待烧录固件更新为服务器上的新发布固件。
进一步地,下位机将烧录进程和结果实时反馈至上位机。
一种SPI Flash固件烧录装置,包括依次电连接的上位机、下位机和存储器,其中,所述下位机电连接至SPI Flash以进行烧录;所述存储器用于储存供所述下位机执行的烧录程序。
进一步地,所述下位机具有内置存储单元,用于储存待烧录固件。
本发明具有如下有益效果:该SPI Flash固件烧录方法在写入固件前的擦除操作中,仅擦除SPI Flash内与待烧录固件大小相同的部分存储空间,相较于现有烧录器需擦除整片SPI Flash内的全部存储空间,能够节省更多的烧录时间,提高烧录效率。
附图说明
图1为本发明提供的固件烧录方法的步骤框图;
图2为本发明提供的固件烧录方法中上位机在步骤1的步骤框图;
图3为本发明提供的固件烧录方法中上位机开机后的步骤框图;
图4为本发明提供的固件烧录装置的原理框图。
具体实施方式
下面结合附图和实施例对本发明进行详细的说明。
实施例一
如图1所示,一种SPI Flash固件烧录方法,包括:
步骤1:上位机向下位机发出烧录指令;
在该步骤1中,生产线的操作人员将SPI Flash电连接至下位机后,通过操作上位机里的烧录程序,以对下位机发出烧录指令,启动对SPI Flash的固件烧录。
下位机的内置存储单元里储存的待烧录固件时从上位机处接收的,因此,在启动对SPI Flash的固件烧录后,在步骤1中,上位机在发出烧录指令前,如图2所示,还包括:检测待烧录固件的烧录次数,若烧录次数为0,则将其储存的待烧录固件传输至下位机,以将待烧录固件储存在下位机的内置存储单元里。
该SPI Flash固件烧录方法在第一次烧录待烧录固件时,上位机都先将待烧录固件传输并储存至下位机的内置存储单元里。
步骤2:下位机检测待烧录固件的大小;
步骤3:下位机擦除SPI Flash内与待烧录固件大小相同的存储空间;
步骤4:下位机将待烧录固件写入至SPI Flash内被擦除的存储空间内。
该SPI Flash固件烧录方法在写入固件前的擦除操作中,仅擦除SPI Flash内与待烧录固件大小相同的部分存储空间,相较于现有烧录器需擦除整片SPI Flash内的全部存储空间,能够节省更多的烧录时间,提高烧录效率。
其中,下位机具有一内置存储单元,内置存储单元里储存有待烧录固件,在固件烧录过程中,下位机从其内置存储单元里读取待烧录固件。
该SPI Flash固件烧录方法将待烧录固件储存在下位机的内置存储单元里,在固件烧录过程中,下位机直接从其内置存储单元里读取待烧录固件,可避免在烧录多片SPIFlash时,下位机频繁从上位机里读取待烧录固件,以节省数据传输时间。
同时,为了保证上位机传输给下位机的带烧录固件是最新版本,优选地,如图3所示,上位机每次开机后,均通过互联网检测其储存的待烧录固件与服务器上的新发布固件是否一致,若不一致则将其储存的待烧录固件更新为服务器上的新发布固件。
同时,上位机每次开机后,均将待烧录固件的烧录次数重置为0。
其中,上位机在检测其储存的待烧录固件与服务器上的新发布固件是否一致时,包括:
读取服务器上的新发布固件的检验码;
将新固件的校验码与其储存的待烧录固件的校验码进行比对,若不一致则判定新固件和待烧录固件不一致。
本实施例中,每个固件的头部上都被增设了一个两字节的CRC16校验码,不同固件信息的固件上具有不同的CRC16校验码,也就是说,若两个固件的CRC16校验码是相同的话,则说明这两个固件里面的固件信息相同,是同一版固件。
另外,在步骤4中,下位机将待烧录固件写入SPI Flash内后,检测SPI Flash内的已写入固件,若已写入固件与其储存的待烧录固件不一致,则重复步骤2-4。
该SPI Flash固件烧录方法可自动识别已写入固件是否为需进行烧录的待烧录固件,防止下位机将其他版本的固件或一些非固件文件错误写入到SPI Flash内,只有写入正确的待烧录固件才算完成一片SPI Flash的烧录。
其中,下位机在检测其储存的待烧录固件与SPI Flash内的已写入固件是否一致时,具体步骤包括:
读取SPI Flash内的已写入固件的检验码;
将已写入固件的校验码与其储存的待烧录固件的校验码进行比对,若不一致则判定已写入固件和待烧录固件不一致。
另外,在进行步骤4之后,还包括:
步骤5:下位机向上位机发送一反馈信号;
步骤6:上位机将待烧录固件的烧录次数+1。
该SPI Flash固件烧录方法具有自动统计固件烧录次数的功能,生产线的操作人员通过上位机显示的烧录次数可得知已完成固件烧录的SPI Flash的数量。
同时,下位机将烧录进程和结果实时反馈至上位机,以方便生产线的操作人员实时了解烧录进程和结果。
实施例二
如图4所示,一种SPI Flash固件烧录装置,用于实施例一中所述的SPI Flash固件烧录方法,包括依次电连接的上位机、下位机和存储器,其中,所述下位机电连接至SPIFlash以进行烧录;所述存储器用于储存供所述下位机执行的烧录程序。
本实施例中,所述上位机采用个人电脑,所述下位机采用型号为N32905的单片机,所述存储器采用Flash闪存;所述上位机和下位机之间通过USB线进行通讯连接,所述下位机和存储器之间通过总线进行通讯连接。
所述下位机具有内置存储单元,用于储存待烧录固件;本实施例中,型号为N32905的单片机具有内置DDR单元。
以上所述实施例仅表达了本发明的实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制,但凡采用等同替换或等效变换的形式所获得的技术方案,均应落在本发明的保护范围之内。

Claims (8)

1.一种SPI Flash固件烧录方法,其特征在于,包括:
步骤1:上位机向下位机发出烧录指令;
步骤2:下位机检测待烧录固件的大小;
步骤3:下位机擦除SPI Flash内与待烧录固件大小相同的存储空间;
步骤4:下位机将待烧录固件写入至SPI Flash内被擦除的存储空间内;
在步骤4中,下位机检测SPI Flash内的已写入固件,若已写入固件与其储存的待烧录固件不一致,则重复步骤2-4;
上位机每次开机后,均通过互联网检测其储存的待烧录固件与服务器上的新发布固件是否一致,若不一致则将其储存的待烧录固件更新为服务器上的新发布固件;
其中,上位机在检测其储存的待烧录固件与服务器上的新发布固件是否一致时,包括:
读取服务器上的新发布固件的检验码;
将新固件的校验码与其储存的待烧录固件的校验码进行比对,若不一致则判定新固件和待烧录固件不一致;
每个固件的头部上都被增设了一个两字节的CRC16校验码,不同固件信息的固件上具有不同的CRC16校验码,若两个固件的CRC16校验码是相同的话,则说明这两个固件里面的固件信息相同,是同一版固件。
2.根据权利要求1所述的SPI Flash固件烧录方法,其特征在于,下位机的内置存储单元里储存有待烧录固件,下位机从其内置存储单元里读取待烧录固件。
3.根据权利要求2所述的SPI Flash固件烧录方法,其特征在于,在步骤1中,上位机在发出烧录指令前,还包括:检测待烧录固件的烧录次数,若烧录次数为0,则将其储存的待烧录固件传输至下位机,以将待烧录固件储存在下位机的内置存储单元里。
4.根据权利要求1-3中任一所述的SPI Flash固件烧录方法,其特征在于,在进行步骤4之后,还包括:
步骤5:下位机向上位机发送一反馈信号;
步骤6:上位机将待烧录固件的烧录次数+1。
5.根据权利要求4所述的SPI Flash固件烧录方法,其特征在于,上位机每次开机后,均将待烧录固件的烧录次数重置为0。
6.根据权利要求1-3中任一所述的SPI Flash固件烧录方法,其特征在于,下位机将烧录进程和结果实时反馈至上位机。
7.一种SPI Flash固件烧录装置,其特征在于,用于实现权利要求1-6中任一所述的SPIFlash固件烧录方法;包括依次电连接的上位机、下位机和存储器,其中,所述下位机电连接至SPI Flash以进行烧录;所述存储器用于储存供所述下位机执行的烧录程序。
8.根据权利要求7所述的SPI Flash固件烧录装置,其特征在于,所述下位机具有内置存储单元,用于储存待烧录固件。
CN201811410001.8A 2018-11-23 2018-11-23 一种SPI Flash固件烧录方法及装置 Active CN109614118B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811410001.8A CN109614118B (zh) 2018-11-23 2018-11-23 一种SPI Flash固件烧录方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811410001.8A CN109614118B (zh) 2018-11-23 2018-11-23 一种SPI Flash固件烧录方法及装置

Publications (2)

Publication Number Publication Date
CN109614118A CN109614118A (zh) 2019-04-12
CN109614118B true CN109614118B (zh) 2022-05-06

Family

ID=66003852

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811410001.8A Active CN109614118B (zh) 2018-11-23 2018-11-23 一种SPI Flash固件烧录方法及装置

Country Status (1)

Country Link
CN (1) CN109614118B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309361A (zh) * 2020-02-13 2020-06-19 北京集创北方科技股份有限公司 数据读写方法及装置、电子设备、存储介质
CN111459744A (zh) * 2020-03-20 2020-07-28 江苏集萃智能集成电路设计技术研究所有限公司 视频处理芯片的固件烧录方法和固件调试方法
CN115827032A (zh) * 2022-12-12 2023-03-21 深微光电科技(深圳)有限公司 存储器的烧录方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101778378A (zh) * 2009-01-14 2010-07-14 英华达(上海)电子有限公司 一种固件节点更新方法、装置和系统
CN102543193A (zh) * 2011-12-31 2012-07-04 深圳创维数字技术股份有限公司 一种闪存烧录方法、烧录设备及烧录系统
CN202956753U (zh) * 2012-11-05 2013-05-29 汕尾芯灵电子科技有限公司 一种嵌入式系统中闪存芯片的编程装置及系统
CN103412781A (zh) * 2013-08-27 2013-11-27 信利光电股份有限公司 一次性可编程芯片的烧录方法
CN104598408A (zh) * 2015-02-05 2015-05-06 深圳芯邦科技股份有限公司 一种一次性可编程只读存储器数据烧录方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103310842A (zh) * 2012-03-06 2013-09-18 富泰华工业(深圳)有限公司 烧录系统及烧录方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101778378A (zh) * 2009-01-14 2010-07-14 英华达(上海)电子有限公司 一种固件节点更新方法、装置和系统
CN102543193A (zh) * 2011-12-31 2012-07-04 深圳创维数字技术股份有限公司 一种闪存烧录方法、烧录设备及烧录系统
CN202956753U (zh) * 2012-11-05 2013-05-29 汕尾芯灵电子科技有限公司 一种嵌入式系统中闪存芯片的编程装置及系统
CN103412781A (zh) * 2013-08-27 2013-11-27 信利光电股份有限公司 一次性可编程芯片的烧录方法
CN104598408A (zh) * 2015-02-05 2015-05-06 深圳芯邦科技股份有限公司 一种一次性可编程只读存储器数据烧录方法

Also Published As

Publication number Publication date
CN109614118A (zh) 2019-04-12

Similar Documents

Publication Publication Date Title
CN109614118B (zh) 一种SPI Flash固件烧录方法及装置
CN101452745B (zh) 一种编程器及其编程方法
US10475516B2 (en) Data storage device and data erasing method wherein after erasing process, predetermined value is written to indicate completion of said erasing method
TWI451248B (zh) 資料保護方法、記憶體控制器與記憶體儲存裝置
CN102543193B (zh) 一种闪存烧录方法、烧录设备及烧录系统
WO2021248786A1 (zh) key码数据烧录方法、装置、终端设备和可读存储介质
US20060047994A1 (en) Method for burning BIOS
CN111444030B (zh) 数据储存装置及避免固件失效的方法
CN116880782B (zh) 一种内嵌式存储器及其测试方法
KR20150096782A (ko) 판독-기록 메모리 디바이스의 데이터 이미지에서 가상 경계 코드들
CN105740031B (zh) 基于开卡套件的开卡方法、开卡套件
US10635874B2 (en) Burning control system and method
CN102622190A (zh) 产品识别信息在线写入方法及电子产品
CN112445670B (zh) 一种eMMC测试方法和装置
CN103389941A (zh) 存储器格式化方法、存储器控制器及存储器存储装置
TWI396090B (zh) 快閃記憶裝置、資料儲存系統、以及傳送特殊命令至快閃記憶裝置之方法
CN103218319A (zh) 数据保护方法、存储器控制器与存储器储存装置
CN113434179B (zh) 一种可编程电源的在线升级方法、装置、设备及存储介质
JP3028055B2 (ja) Pcカードシステム及びプログラム書き換え方法
CN110888656B (zh) 一种多功能烧写器及烧写方法
CN110781031B (zh) 控制器数据恢复方法、装置、控制器及汽车
CN110737483B (zh) 一种基于Windows USB MassStorage类的信令、数据传输方法
CN114356806B (zh) 快速开卡方法、设备及计算机可读存储介质
JP6864228B2 (ja) 記憶装置および記憶装置のデータ管理方法
CN112579545B (zh) 一种Linux文件系统挂载方法及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant