CN103838585A - 基于sd卡实现arm9嵌入式系统自动烧录的方法 - Google Patents
基于sd卡实现arm9嵌入式系统自动烧录的方法 Download PDFInfo
- Publication number
- CN103838585A CN103838585A CN201210470334.6A CN201210470334A CN103838585A CN 103838585 A CN103838585 A CN 103838585A CN 201210470334 A CN201210470334 A CN 201210470334A CN 103838585 A CN103838585 A CN 103838585A
- Authority
- CN
- China
- Prior art keywords
- card
- arm9
- burning
- file
- embedded system
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开一种基于SD卡实现ARM9嵌入式系统自动烧录的方法,包括步骤:配置SD卡;使SD卡与待烧录的ARM9芯片电性连接,并断开ARM9芯片与ARM9芯片上配置的Nandflash存储器的电性连接;上电启动ARM9芯片,ARM9芯片读取SD卡中boot.bin文件进行启动,并读取uboot.bin文件并进入uboot界面;发出提示信号提醒操作人员将ARM9芯片与Nandflash存储器恢复电性连接;对Nandflash存储器进行初始化,读取SD卡上的烧录配置文件,按照配置文件中设定的文件名、偏移地址将对应的固件镜像文件写入到Nandflash存储器相应的偏移地址。本发明操作简单,自动化程度高,可以显著减少烧录操作的工作量,提高了烧录操作的可靠性和效率。
Description
技术领域
本发明涉及一种嵌入式系统自动烧录技术,尤其是涉及一种利用SD卡实现进行ARM9嵌入式系统自动烧录的方法。
背景技术
任何一个嵌入式计算机系统都需要一个存储介质用于存储程序和数据。对于嵌入式系统而言,需要提供某种方式用于把程序写入到系统的存储介质中,以便系统重新上电后可以从自身的存储介质中加载程序(此处程序是泛指,对于一个复杂的嵌入式系统而言,程序可能是分阶段加载的bootloader和操作系统内核)。
ARM9系列处理器常见的存储介质是Nand-flash。不同厂家的ARM9芯片一般都提供类似的烧写方法,例如基于串口、USB口或者JTAG口的在线烧录工具。在开发调试阶段,可以使用此类方法烧写程序数据到nandflash中。此类烧录方式具有的共同特点是:
1、需要通过某种接口以某种方式与PC连接,并在PC上安装驱动程序;
2、需要在PC上运行某种在线烧录工具软件;
3、需要按照特定芯片的特定操作要求进行操作,例如at91sam9g45需要先拔掉板上的某个特定的跳线,待PC识别到板卡后再插上跳线。
由AT91SAM9G45芯片实现的嵌入式系统平台,目前常用的烧录方式时使用USB接口或其他串口或JTAG接口,使用Atmel提供的ISP软件SAM-BA进行烧录,整个烧录过程中需要连接PC并执行ISP工具软件SAM-BA。整个操作过程需要操作人员手动进行相关操作,没有很好地做到自动化批处理,操作人员的干预较多,在批量生产时板卡烧录工艺中,操作效率不够高。
发明内容
本发明提出一种利用SD卡实现进行嵌入式系统自动烧录的方法,以解决目前嵌入式系统在线烧录方式存在效率不够、需要连接PC端执行相应工具软件、操作人员干预较多等缺陷的技术问题。
本发明采用如下技术方案实现:一种基于SD卡实现ARM9嵌入式系统自动烧录的方法,其包括步骤:
A、将烧录配置文件、对应嵌入式系统的固件镜像文件、boot.bin文件和uboot.bin文件配置在SD卡中;
B、使SD卡与待烧录的ARM9芯片电性连接,并断开ARM9芯片与ARM9芯片上配置的Nandflash存储器的电性连接;
C、上电启动ARM9芯片,ARM9芯片读取SD卡中boot.bin文件进行启动,并读取uboot.bin文件并进入uboot界面;
D、发出提示信号提醒操作人员将ARM9芯片与Nandflash存储器恢复电性连接;
E、对Nandflash存储器进行初始化,读取SD卡上的烧录配置文件,按照配置文件中设定的文件名、偏移地址将对应的固件镜像文件写入到Nandflash存储器相应的偏移地址。
其中,步骤D具体包括:读取NandFlash存储器的ID号,若无法读取,则发出提示信号,并由作人员将ARM9芯片与Nandflash存储器恢复电性连接。
其中,使用自动编译系统将嵌入式系统的文件从源码树编译生成用于自动烧录的固件镜像文件,并使用普通压缩打包方式打包,将打包后的固件镜像文件存放在SD卡的根目录下。
其中,烧录配置文件是一种二进制的脚本文件,包含固件镜像文件的文件名及烧录地址。
其中,于自动烧录完成后,uboot界面再次发出提示信号通知操作人员自动烧录过程已经完成。
与现有技术相比,本发明具有如下有益效果:
本发明使用一张预先配置的SD卡可以重复用于自动烧录,自动化程度高,且烧录时不需要连接PC,操作简单,可以显著减少烧录操作的工作量,提高了烧录操作的可靠性和效率。
附图说明
图1是本发明的流程示意图。
具体实施方式
AT91SAM9G45芯片以及Atmel公司的若干ARM9芯片支持SD卡启动烧录,可实现从SD卡启动。
在一个优选实施例中,本发明包括如下实现步骤:
步骤S1、配置用于烧录的SD卡,包括烧录配置文件、固件镜像文件以及boot.bin文件和uboot.bin文件。
使用自动编译系统将嵌入式系统的文件从源码树编译生成用于自动烧录的固件镜像文件,并使用普通压缩打包方式打包,将打包后的固件镜像文件存放在SD卡的根目录下。
并且,在SD卡上配置启动ARM9芯片所需的bootloader和uboot程序。bootloader和uboot程序是两个可执行文件,分别对应为boot.bin文件和uboot.bin文件。
步骤S2、使SD卡与待烧录的ARM9芯片电性连接。
步骤S3、断开ARM9芯片与ARM9芯片上配置的Nandflash存储器的电性连接。
比如,断开ARM9芯片访问Nandflash存储器的Nandflash acess enable跳线。
步骤S4、上电启动ARM9芯片,ARM9芯片读取SD卡中boot.bin文件进行启动,然后读取uboot.bin文件并进入uboot界面。
步骤S5、检测ARM9芯片与Nandflash存储器是否已电性连接,若是,则转入步骤S7,否则转入步骤S6。
uboot实现对Nandflash存储器检测的方法是:尝试去读取NandFlash存储器的ID号,若无法读取则说明当前Nandflash存储器异常,转入步骤S6,否则转入步骤S7。
步骤S6、发出提示信号提醒操作人员恢复ARM9芯片与Nandflash存储器恢复电性连接。比如:插上连接ARM9芯片与Nandflash存储器的Nandflashacess enable跳线。
信号提醒有多种方式:充分利用待烧录板的资源,比如,待烧录板有用于发出警示信号的蜂鸣器,那么,在uboot中增加功能控制语句来实现控制蜂鸣器发出警示。当待烧录板有其它的警示可用时(如:液晶显示等),同样可用其它方式来发出警示。
操作人员恢复ARM9芯片与Nandflash存储器恢复电性连接后,返回步骤S5,Uboot再用同样的办法去检测Nandflash存储器。
步骤S7、检测Nandflash存储器成功,则对Nandflash存储器进行初始化。
步骤S8、读取SD卡上的烧录配置文件,按照配置文件中设定的文件名、偏移地址将对应的固件镜像文件写入到Nandflash存储器相应的偏移地址。
烧录配置文件是一种二进制的脚本文件,其内包含进行烧录的固件镜像文件的文件名及烧录地址(即固件镜像文件写入到Nandflash存储器相应的偏移地址)。比如,需要烧写boot.bin文件到Nandflash存储器的0地址,则烧录配置文件配置如下控制语句:
//从Nandflash存储器的地址0开始擦除,擦除长度0x20000
Nandtlash erase 0 0x80000
//从SD卡读取boot.bin至内存地址0x71000000处
fatload mmc 0:1 0x71000000 boot.bin
//从内存地址0x71000000处读0x20000长度内容,从Nandflash存储器的地址0开始写
nand write 0x71000000 0 0x20000
//重复上述操作,循环写入uboot,kernel,rootfs则整个系统烧写完毕
因此,可以根据实际需要,按照上述实例类似的控制语句,将其中地址、偏移量及烧写的文件名可根据实际需求做相应的更改,以实现将固件镜像文件写入到Nandflash存储器相应的偏移地址。
步骤S9、判断自动烧录是否完毕。若是,转入步骤S10。
步骤S10、自动烧录的批处理过程完成后,uboot界面再次发出提示信号通知操作人员自动烧录过程已经完成。
综上,本发明只使用一张预先配置的SD卡便可以重复用于自动烧录,自动化程度高,且烧录时不需要连接PC,操作简单,可以显著减少烧录操作的工作量,提高了烧录操作的可靠性和效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于SD卡实现ARM9嵌入式系统自动烧录的方法,其特征在于,所述方法包括步骤:
A、将烧录配置文件、对应嵌入式系统的固件镜像文件、boot.bin文件和uboot.bin文件配置在SD卡中;
B、使SD卡与待烧录的ARM9芯片电性连接,并断开ARM9芯片与ARM9芯片上配置的Nandflash存储器的电性连接;
C、上电启动ARM9芯片,ARM9芯片读取SD卡中boot.bin文件进行启动,并读取uboot.bin文件并进入uboot界面;
D、发出提示信号提醒操作人员将ARM9芯片与Nandflash存储器恢复电性连接;
E、对Nandflash存储器进行初始化,读取SD卡上的烧录配置文件,按照配置文件中设定的文件名、偏移地址将对应的固件镜像文件写入到Nandflash存储器相应的偏移地址。
2.根据权利要求1所述基于SD卡实现ARM9嵌入式系统自动烧录的方法,其特征在于,步骤D具体包括:读取NandFlash存储器的ID号,若无法读取,则发出提示信号,并由作人员将ARM9芯片与Nandflash存储器恢复电性连接。
3.根据权利要求1所述基于SD卡实现ARM9嵌入式系统自动烧录的方法,其特征在于,使用自动编译系统将嵌入式系统的文件从源码树编译生成用于自动烧录的固件镜像文件,并使用普通压缩打包方式打包,将打包后的固件镜像文件存放在SD卡的根目录下。
4.根据权利要求1所述基于SD卡实现ARM9嵌入式系统自动烧录的方法,其特征在于,烧录配置文件是一种二进制的脚本文件,包含固件镜像文件的文件名及烧录地址。
5.根据权利要求1所述基于SD卡实现ARM9嵌入式系统自动烧录的方法,其特征在于,还包括步骤:于自动烧录完成后,uboot界面再次发出提示信号通知操作人员自动烧录过程已经完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210470334.6A CN103838585A (zh) | 2012-11-20 | 2012-11-20 | 基于sd卡实现arm9嵌入式系统自动烧录的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210470334.6A CN103838585A (zh) | 2012-11-20 | 2012-11-20 | 基于sd卡实现arm9嵌入式系统自动烧录的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103838585A true CN103838585A (zh) | 2014-06-04 |
Family
ID=50802121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210470334.6A Pending CN103838585A (zh) | 2012-11-20 | 2012-11-20 | 基于sd卡实现arm9嵌入式系统自动烧录的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103838585A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104035801A (zh) * | 2014-06-20 | 2014-09-10 | 万科思自控信息(中国)有限公司 | 烧录方法 |
CN104679565A (zh) * | 2015-03-12 | 2015-06-03 | 烽火通信科技股份有限公司 | 一种光通信设备生产中闪存的烧写系统及方法 |
CN104965725A (zh) * | 2015-01-16 | 2015-10-07 | 北京中电兴发科技有限公司 | 一种基于sd卡的嵌入式设备全自动固件烧写方法 |
CN105095020A (zh) * | 2015-07-21 | 2015-11-25 | 中国船舶重工集团公司第七0九研究所 | 适用于片上系统的系统备份与恢复装置及其方法 |
CN105516806A (zh) * | 2015-12-08 | 2016-04-20 | 广东长虹电子有限公司 | 一种电视芯片自动制作升级固件的方法 |
CN105590072A (zh) * | 2015-12-18 | 2016-05-18 | 上海华测导航技术股份有限公司 | 一种实现嵌入式系统自动烧录的方法 |
CN105653330A (zh) * | 2015-12-30 | 2016-06-08 | 国家电网公司 | 一种基于SD卡的NorFlash烧写系统和方法 |
CN105760191A (zh) * | 2016-02-02 | 2016-07-13 | 西安诺瓦电子科技有限公司 | 嵌入式系统设备程序烧写量产方法 |
CN108228281A (zh) * | 2018-02-07 | 2018-06-29 | 深圳怡化电脑股份有限公司 | 一种软件烧写方法及装置、嵌入式设备 |
CN109284114A (zh) * | 2017-07-20 | 2019-01-29 | 深圳市中兴微电子技术有限公司 | 嵌入式系统中可编程芯片的自动烧录方法 |
CN110928556A (zh) * | 2018-09-19 | 2020-03-27 | 株洲中车时代电气股份有限公司 | 轨道车辆用程序自动烧录方法及装置、测试方法及系统 |
CN111190616A (zh) * | 2020-01-07 | 2020-05-22 | 山东山大新元易通信息科技有限公司 | 一键内核烧录嵌入式系统及内核烧录方法 |
WO2020113382A1 (zh) * | 2018-12-03 | 2020-06-11 | 北京比特大陆科技有限公司 | 硬件升级方法、装置、设备和存储介质 |
CN112157339A (zh) * | 2020-09-23 | 2021-01-01 | 天津七所高科技有限公司 | 一种电阻焊设备数据初始化的方法 |
CN112764767A (zh) * | 2019-10-21 | 2021-05-07 | 深圳君正时代集成电路有限公司 | 一种实现卡启和卡烧录nand的方法 |
CN114327509A (zh) * | 2021-12-23 | 2022-04-12 | 保定飞凌嵌入式技术有限公司 | 一种适用于imx6系列核心板nand的批量烧录方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030088709A1 (en) * | 2001-11-06 | 2003-05-08 | Frank Lin | System and method of composing and decomposing a ROM image |
CN1797336A (zh) * | 2004-12-28 | 2006-07-05 | 光宝科技股份有限公司 | 可自动更新嵌入式系统的系统软件的装置及方法 |
CN102024129A (zh) * | 2009-09-22 | 2011-04-20 | 三星电子株式会社 | 嵌入式设备的数据写入方法 |
CN102779053A (zh) * | 2012-06-18 | 2012-11-14 | 华为终端有限公司 | 一种利用移动存储卡启动手机操作系统的方法和终端 |
CN102841796A (zh) * | 2011-06-24 | 2012-12-26 | 鸿富锦精密工业(深圳)有限公司 | 固件烧录方法 |
-
2012
- 2012-11-20 CN CN201210470334.6A patent/CN103838585A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030088709A1 (en) * | 2001-11-06 | 2003-05-08 | Frank Lin | System and method of composing and decomposing a ROM image |
CN1797336A (zh) * | 2004-12-28 | 2006-07-05 | 光宝科技股份有限公司 | 可自动更新嵌入式系统的系统软件的装置及方法 |
CN102024129A (zh) * | 2009-09-22 | 2011-04-20 | 三星电子株式会社 | 嵌入式设备的数据写入方法 |
CN102841796A (zh) * | 2011-06-24 | 2012-12-26 | 鸿富锦精密工业(深圳)有限公司 | 固件烧录方法 |
CN102779053A (zh) * | 2012-06-18 | 2012-11-14 | 华为终端有限公司 | 一种利用移动存储卡启动手机操作系统的方法和终端 |
Non-Patent Citations (1)
Title |
---|
YISHIPOINT: "Tiny6410刷机指南", 《百度文库:HTTPS://WENKU.BAIDU.COM/VIEW/07F554F1F61FB7360B4C6533.HTML》 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104035801A (zh) * | 2014-06-20 | 2014-09-10 | 万科思自控信息(中国)有限公司 | 烧录方法 |
CN104965725B (zh) * | 2015-01-16 | 2018-06-08 | 北京中电兴发科技有限公司 | 一种基于sd卡的嵌入式设备全自动固件烧写方法 |
CN104965725A (zh) * | 2015-01-16 | 2015-10-07 | 北京中电兴发科技有限公司 | 一种基于sd卡的嵌入式设备全自动固件烧写方法 |
CN104679565A (zh) * | 2015-03-12 | 2015-06-03 | 烽火通信科技股份有限公司 | 一种光通信设备生产中闪存的烧写系统及方法 |
CN105095020A (zh) * | 2015-07-21 | 2015-11-25 | 中国船舶重工集团公司第七0九研究所 | 适用于片上系统的系统备份与恢复装置及其方法 |
CN105516806A (zh) * | 2015-12-08 | 2016-04-20 | 广东长虹电子有限公司 | 一种电视芯片自动制作升级固件的方法 |
CN105590072A (zh) * | 2015-12-18 | 2016-05-18 | 上海华测导航技术股份有限公司 | 一种实现嵌入式系统自动烧录的方法 |
CN105653330A (zh) * | 2015-12-30 | 2016-06-08 | 国家电网公司 | 一种基于SD卡的NorFlash烧写系统和方法 |
CN105760191A (zh) * | 2016-02-02 | 2016-07-13 | 西安诺瓦电子科技有限公司 | 嵌入式系统设备程序烧写量产方法 |
CN109284114A (zh) * | 2017-07-20 | 2019-01-29 | 深圳市中兴微电子技术有限公司 | 嵌入式系统中可编程芯片的自动烧录方法 |
CN108228281A (zh) * | 2018-02-07 | 2018-06-29 | 深圳怡化电脑股份有限公司 | 一种软件烧写方法及装置、嵌入式设备 |
CN110928556A (zh) * | 2018-09-19 | 2020-03-27 | 株洲中车时代电气股份有限公司 | 轨道车辆用程序自动烧录方法及装置、测试方法及系统 |
CN112912841A (zh) * | 2018-12-03 | 2021-06-04 | 北京比特大陆科技有限公司 | 硬件升级方法、装置、设备和存储介质 |
WO2020113382A1 (zh) * | 2018-12-03 | 2020-06-11 | 北京比特大陆科技有限公司 | 硬件升级方法、装置、设备和存储介质 |
CN112764767A (zh) * | 2019-10-21 | 2021-05-07 | 深圳君正时代集成电路有限公司 | 一种实现卡启和卡烧录nand的方法 |
CN111190616A (zh) * | 2020-01-07 | 2020-05-22 | 山东山大新元易通信息科技有限公司 | 一键内核烧录嵌入式系统及内核烧录方法 |
CN112157339A (zh) * | 2020-09-23 | 2021-01-01 | 天津七所高科技有限公司 | 一种电阻焊设备数据初始化的方法 |
CN112157339B (zh) * | 2020-09-23 | 2022-06-03 | 天津七所高科技有限公司 | 一种电阻焊设备数据初始化的方法 |
CN114327509A (zh) * | 2021-12-23 | 2022-04-12 | 保定飞凌嵌入式技术有限公司 | 一种适用于imx6系列核心板nand的批量烧录方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103838585A (zh) | 基于sd卡实现arm9嵌入式系统自动烧录的方法 | |
US9519436B1 (en) | Memory erasing method, memory controller, and memory storage apparatus | |
US20160006620A1 (en) | Hardware management and control of computer components through physical layout diagrams | |
US9448889B2 (en) | BIOS failover update with service processor | |
CN105590072A (zh) | 一种实现嵌入式系统自动烧录的方法 | |
US9448808B2 (en) | BIOS update with service processor without serial peripheral interface (SPI) access | |
CN102819442B (zh) | 一种嵌入式设备程序烧写的方法及系统 | |
CN104200843A (zh) | 闪存烧入器、烧入系统及烧入方法 | |
CN101634960A (zh) | 一种修改bios参数及重新生成校验和的方法 | |
CN105740031B (zh) | 基于开卡套件的开卡方法、开卡套件 | |
CN102890655B (zh) | 存储器储存装置、其存储器控制器与有效数据识别方法 | |
CN105760191A (zh) | 嵌入式系统设备程序烧写量产方法 | |
WO2022037686A1 (zh) | 智能终端的程序下载方法和智能终端 | |
US20130166893A1 (en) | Auxiliary card initialization routine | |
CN102841802A (zh) | 移动终端的软件升级方法 | |
CN102955751A (zh) | 存储器储存装置、存储器控制器与数据写入方法 | |
CN105653330A (zh) | 一种基于SD卡的NorFlash烧写系统和方法 | |
CN102750109A (zh) | 资料同步系统及方法 | |
CN107315607B (zh) | 一种驱动自适应加载系统 | |
CN102736861B (zh) | 存储器配置方法、存储器控制器及存储器储存装置 | |
CN110096882B (zh) | 一种设备运行过程中的安全度量方法 | |
CN102446101A (zh) | 固件强制升级的系统及其固件的强制升级方法 | |
CN102629212A (zh) | 一种基于j-link间接烧写程序到nandflash的方法 | |
CN103389941A (zh) | 存储器格式化方法、存储器控制器及存储器存储装置 | |
CN104765625A (zh) | 休眠模式启动方法、存储器控制电路单元及存储装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140604 |