CN105204899A - 一种基于网络的单片机固件升级方法的实现 - Google Patents

一种基于网络的单片机固件升级方法的实现 Download PDF

Info

Publication number
CN105204899A
CN105204899A CN201510592122.9A CN201510592122A CN105204899A CN 105204899 A CN105204899 A CN 105204899A CN 201510592122 A CN201510592122 A CN 201510592122A CN 105204899 A CN105204899 A CN 105204899A
Authority
CN
China
Prior art keywords
program
chip microcomputer
user program
bootloader
start address
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
Application number
CN201510592122.9A
Other languages
English (en)
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.)
Inspur Software Group Co Ltd
Original Assignee
Inspur Software Group Co 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 Inspur Software Group Co Ltd filed Critical Inspur Software Group Co Ltd
Priority to CN201510592122.9A priority Critical patent/CN105204899A/zh
Publication of CN105204899A publication Critical patent/CN105204899A/zh
Pending legal-status Critical Current

Links

Abstract

本发明公开了一种基于网络的单片机固件升级方法的实现,其具体实现过程为:首先设计单片机片内存储器中BootLoader程序和用户程序的存储地址空间,利用JTAG接口或仿真器进行BootLoader程序的烧写,该程序具有读写和擦除存储器数据、程序地址跳转、网络数据下载的模块功能,然后在片内Flash中写入BootLoader程序,通过BootLoader程序实现对单片机片内用户程序的擦写,实现对片内Flash中的用户程序进行远端升级和运行。该一种基于网络的单片机固件升级方法的实现与现有技术相比,实现了对单片机系统固件的远端升级,提高了产品固件升级的便捷性,同时能够减少系统的维护费用,能够产生较好的经济效益,具有较高地实际工程应用价值,实用性强,适用范围广泛,易于推广。

Description

一种基于网络的单片机固件升级方法的实现
技术领域
本发明涉及计算机技术领域,具体地说是一种实用性强、基于网络的单片机固件升级方法的实现。
背景技术
随着控制设备不断的复杂化、功能多样化使得系统不再可能只依靠一种控制程序来满足不同的用户,并且同一个用户的需求也不是一成不变。这就要求控制系统能够支持固件程序的升级功能,在售前或售后都能方便的更新固件程序。
单片机硬件产品的软件维护、升级都是需要人工现场进行烧写或更换最新固件的芯片来完成,特别是在工作环境恶劣的情况下,使得对单片机应用系统的升级维护存在很大的困难。
利用单片机等微控制器设计的应用发布后,往往由于应用需求的更新或者设计的不完善,需要不断地对固件程序进行修改和升级。因此,设计一套可以通过远端升级和维护单片机程序的应用方案就显得尤为重要。
基于此,现提供一种基于网络的单片机固件升级方法的实现。
发明内容
本发明的技术任务是针对以上不足之处,提供一种实用性强、基于网络的单片机固件升级方法的实现。
一种基于网络的单片机固件升级方法的实现,其具体实现过程为:
首先设计单片机片内存储器中BootLoader程序和用户程序的存储地址空间,利用JTAG接口或仿真器进行BootLoader程序的烧写,该程序具有读写和擦除存储器数据、程序地址跳转、网络数据下载的模块功能,然后在片内Flash中写入BootLoader程序,通过BootLoader程序实现对单片机片内用户程序的擦写,实现对片内Flash中的用户程序进行远端升级和运行。
所述片内存储器中,BootLoader程序是在单片机上电/复位后首先执行的程序,其用于完成硬件初始化,固件升级操作和跳转至用户程序空间运行,该BootLoader程序包含网络TCP/IP通讯、Flash编程、地址跳转模块,该程序文件通过JTAG接口或仿真器从内部闪存FLASH起始地址开始写入,完成后可以将BootLoader程序区域设置成写保护,以禁止对该区域进行编程或者擦除操作;用户应用程序只需更改编译器的起始地址和设置中断向量表的偏移量,即可保证其写入单片机后正常中断和运行。
所述BootLoader程序的烧写开始前,首先启动单片机,该单片机的启动过程为,在单片机的内部,程序文件从闪存FLASH起始地址开始写入,单片机上电启动或复位后,其PC指针将指向中断向量表起始地址处,读取复位中断函数的起始地址,执行完复位中断函数后,跳转至用户程序主函数main处执行,以完成启动过程。
所述BootLoader程序的烧写过程为:
将单片机内部存储器地址空间分为BootLoader程序区和用户程序区,设置好BootLoader程序空间区的起始地址区间、用户程序空间区的起始地址;
BootLoader程序文件从单片机的内部闪存FLASH起始地址开始写入;
单片机上电启动或复位后,从中断向量表的起始地址取出复位中断向量地址,并跳转至复位中断服务程序,执行完复位中断函数之后跳转到BootLoader程序的main主函数;
在main函数中检测是否需要升级固件,如果固件版本不需要升级,就直接跳转至用户程序空间起始地址运行,如果需要升级固件版本,则利用uIP协议栈从服务器端下载固件二进制数据,校验后存储至片内SRAM,然后擦除现有的用户程序空间区,将SRAM存储器中的固件数据从用户程序空间起始地址开始写入,写入成功后跳转至用户程序空间起始地址执行。
所述BootLoader程序对单片机片内用户程序的擦写过程为:
BootLoader程序烧写执行完毕后,跳转到用户程序空间的起始地址,取出用户程序中的复位中断向量地址,并跳转至用户程序中的复位中断服务程序;
用户程序中的复位中断程序执行后,跳转至用户程序主函数main中执行;
在用户程序main主函数执行过程中,当CPU得到一个中断请求时PC指针强制跳转到地址中断向量表的起始地址处;
根据在用户程序中设置的中断向量表偏移量,跳转至相应用户程序中的中断函数内;
执行完相关用户中断请求后,程序返回用户程序的main主函数的中断处继续运行。
本发明的一种基于网络的单片机固件升级方法的实现,具有以下优点:
该发明的一种基于网络的单片机固件升级方法的实现通过利用单片机等微控制器的启动机制,设计出带BootLoader功能特性的启动,移植TCP/IP协议栈接入网络,实现了对单片机系统固件的远端升级,提高了产品固件升级的便捷性,同时能够减少系统的维护费用,能够产生较好的经济效益,具有较高地实际工程应用价值,实用性强,适用范围广泛,易于推广。
附图说明
附图1为本发明的程序地址空间框图。
附图2为本发明的MCU与以太网芯片接口电路图。
附图3为本发明的uIP协议栈程序框图。
附图4为本发明的系统程序逻辑框图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
本发明的提供一种基于网络的单片机固件升级方法的实现,其实现过程为:
首先设计单片机片内存储器中BootLoader程序和用户程序的存储地址空间,利用JTAG接口或仿真器进行BootLoader程序的烧写,该程序具有读写和擦除存储器数据、程序地址跳转、网络数据下载的模块功能,然后在片内Flash中写入BootLoader程序,通过BootLoader程序实现对单片机片内用户程序的擦写,实现对片内Flash中的用户程序进行远端升级和运行。
所述片内存储器中,BootLoader程序是在单片机上电/复位后首先执行的程序,其用于完成硬件初始化,固件升级操作和跳转至用户程序空间运行,该BootLoader程序包含网络TCP/IP通讯、Flash编程、地址跳转模块,该程序文件通过JTAG接口或仿真器从内部闪存FLASH起始地址开始写入,完成后可以将BootLoader程序区域设置成写保护,以禁止对该区域进行编程或者擦除操作;用户应用程序只需更改编译器的起始地址和设置中断向量表的偏移量,即可保证其写入单片机后正常中断和运行。
所述BootLoader程序的烧写开始前,首先启动单片机,该单片机的启动过程为,在单片机的内部,程序文件从闪存FLASH起始地址开始写入,单片机上电启动或复位后,其PC指针将指向中断向量表起始地址处,读取复位中断函数的起始地址,执行完复位中断函数后,跳转至用户程序主函数main处执行,以完成启动过程。
所述BootLoader程序的烧写过程为:
将单片机内部存储器地址空间分为BootLoader程序区和用户程序区,设置好BootLoader程序空间区的起始地址区间、用户程序空间区的起始地址;
BootLoader程序文件从单片机的内部闪存FLASH起始地址开始写入;
单片机上电启动或复位后,从中断向量表的起始地址取出复位中断向量地址,并跳转至复位中断服务程序,执行完复位中断函数之后跳转到BootLoader程序的main主函数;
在main函数中检测是否需要升级固件,如果固件版本不需要升级,就直接跳转至用户程序空间起始地址运行,如果需要升级固件版本,则利用uIP协议栈从服务器端下载固件二进制数据,校验后存储至片内SRAM,然后擦除现有的用户程序空间区,将SRAM存储器中的固件数据从用户程序空间起始地址开始写入,写入成功后跳转至用户程序空间起始地址执行。
所述BootLoader程序对单片机片内用户程序的擦写过程为:
BootLoader程序烧写执行完毕后,跳转到用户程序空间的起始地址,取出用户程序中的复位中断向量地址,并跳转至用户程序中的复位中断服务程序;
用户程序中的复位中断程序执行后,跳转至用户程序主函数main中执行;
在用户程序main主函数执行过程中,当CPU得到一个中断请求时PC指针强制跳转到地址中断向量表的起始地址处;
根据在用户程序中设置的中断向量表偏移量,跳转至相应用户程序中的中断函数内;
执行完相关用户中断请求后,程序返回用户程序的main主函数的中断处继续运行。
具体实例:
本发明主要采用STM32F103xx系列单片机和ENC28J60以太网控制芯片,设计出具有BootLoader功能,可通过网络接口远程更新固件的方法,并对其设计原理和实现过程进行了详细的描述。
利用STM32F103xx系列单片机自读写片内程序空间的特性,首先在片内Flash中写入BootLoader程序,然后通过BootLoader程序实现对单片机片内用户程序的擦写,而无需通过传统的仿真器和JTAG接口方式做烧写工作。
STM32F103xx系列单片机基于ARMCortex-M3内核,专为高性能、低成本、低功耗的嵌入式应用设计。它具有最高72MHz的时钟频率、片上集成32-512KB的Flash存储器,可用于存储程序和数据、6-64KB的SRAM存储器,可以用时钟速度进行读写,最多高达112个快速IO端口,能从闪存空间执行代码等特点。STM32F103xx系列单片机的内部闪存(FLASH)起始地址为0x08000000,程序文件一般从此地址开始写入,其中“中断向量表”的起始地址是0x08000004。在单片机上电启动或复位后,其PC指针将指向中断向量表起始地址处,读取复位中断函数的起始地址,执行完复位中断函数后,跳转至用户程序主函数main(void)处执行,以完成启动过程。
BootLoader程序是在单片机上电/复位后,首先执行的程序,它的主要作用是完成硬件初始化,固件升级操作和跳转至用户程序空间运行。首先将单片机内部存储器地址空间分为BootLoader程序区和用户程序区,BootLoader程序空间区的起始地址区间设置为:0x08000000—0x0800FFFF(64Kbyte),用户程序空间区的起始地址则为:0x08010000—最大空间地址,即偏移量为0x10000(64Kbyte),BootLoader程序文件从单片机的内部闪存(FLASH)起始地址0x08000000开始写入。单片机上电启动/复位后,仍然是从0x08000004地址取出复位中断向量地址,并跳转至复位中断服务程序,执行完复位中断函数之后跳转到BootLoader程序的主函数main(void)。并在main(void)函数中检测是否需要升级固件,如果固件版本不需要升级,就直接跳转至用户程序空间起始地址运行,如果需要升级固件版本,则利用uIP协议栈从服务器端下载固件二进制数据,校验后存储至片内SRAM,然后擦除现有的用户程序空间区,将SRAM存储器中的固件数据从用户程序空间起始地址0x08010000开始写入,写入成功后跳转至用户程序空间起始地址执行。如图1、图4所示。
单片机上电/复位后,PC指针定位到“中断向量表”处,取出复位中断向量地址,执行复位中断程序,然后跳转至BootLoader的主函数main(void)中,进行固件检测和更新等操作。
BootLoader程序执行完毕后,跳转到用户程序空间的起始地址,取出用户程序中的复位中断向量地址,并跳转至用户程序中的复位中断服务程序。
用户程序中的复位中断程序执行后,跳转至用户程序主函数main(void)中执行。
在用户程序主函数main(void)执行过程中,如果CPU得到一个中断请求PC指针会强制跳转到地址0x08000004中断向量表处。
根据在用户程序中设置的中断向量表偏移量0x10000(64Kbyte),跳转至相应用户程序中的中断函数内。
执行完相关用户中断请求后,程序返回用户程序的主函数main(void)的中断处继续运行。
硬件接口电路设计。
ENC28J60是具有标准串行外设接口(SerialPeripheralInterface,SPI)的以太网控制芯片,它提供一个内部DMA模块,使其具有快速数据吞吐能力,支持硬件的IP校验和计算。通过SPI协议接口与单片机控制器进行数据通信,其以太网物理层器件(PHY)及媒介接入控制器(MAC)可实现10Mbps的传输速率,还具有网络活动状态的LED指示功能。如图2所示,ENC28J60的SO、SI、SCK、分别与STM32F103XX系列单片机SPI串行总线MISO、MOSI、CLK、NSS连接,为中断输出引脚,为器件复位输入,低电平有效。
系统软件设计。
STM32F103xx系列单片机片内存储器程序主要分为两类:BootLoader程序和用户应用程序。其中BootLoader程序包含网络TCP/IP通讯、Flash编程、地址跳转等模块,该程序文件一般通过JTAG接口或仿真器从内部闪存(FLASH)起始地址0x08000000开始写入,完成后可以将BootLoader程序区域设置成写保护,以禁止对该区域进行编程或者擦除操作。用户应用程序只需要简单更改编译器的起始地址和设置中断向量表的偏移量,即可保证其写入单片机后正常中断和运行。
uIP协议栈实现TCP/IP通信。
ENC28J60硬件芯片提供了物理层和MAC层,通过SPI协议进行数据通信,单片机通过SPI接口控制ENC28J60硬件收发数据包,然后通过协议栈实现网络层和传输层协议,将原始的以太网数据包进行数据解析。uIP是专为嵌入式处理器建立TCP/IP协议提供的一种开源代码,其包含ARP、IP、ICMP、TCP、UDP等协议功能,实现了上层应用程序与底层硬件之间的通讯。uIP协议栈是用标准的C语言实现,能使其移植在STM32F103xx系列单片机上运行。如图3所示,主要描述了uIP协议栈在单片机内作为客户端模式接收远程服务器固件数据的执行流程,它通过利用ENC28J60以太网硬件物理层和MAC层,获取以太网数据包,并对数据包进行解析,获取固件数据。
软件模块实现。
用户程序在编译时应设置MDK-ARM等编译器IROM1的起始地址为0x08010000。用户程序的主函数main(void)执行过程中,如果CPU得到一个中断请求,PC指针仍强制跳转到地址0X08000004中断向量表处,因此需要设置中断向量表偏移量0x10000,才会跳转至对应中断源用户程序的中断服务程序中。用户程序主函数中需要添加中断向量表映射:
NVIC_VectTab_FLASH=0X08000004;
NVIC_SetVectorTable(NVIC_VectTab_FLASH,0x10000);
2.BootLoader程序跳转至用户地址空间的实现函数:
#defineApplicationAddress0x08010000
typedefvoid(*pFunction)(void);
pFunctionJump_To_Application;
u32JumpAddress;
voidJumpApplication(void)
{
NVIC_SETFAULTMASK();//关总中断
JumpAddress=*(__IOuint32_t*)(ApplicationAddress+4);
Jump_To_Application=(pFunction)JumpAddress;
__set_MSP(*(__IOuint32_t*)ApplicationAddress);
Jump_To_Application();
}。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的一种基于网络的单片机固件升级方法的实现的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。

Claims (5)

1.一种基于网络的单片机固件升级方法的实现,其特征在于,具体实现过程为:
首先设计单片机片内存储器中BootLoader程序和用户程序的存储地址空间,利用JTAG接口或仿真器进行BootLoader程序的烧写,该程序具有读写和擦除存储器数据、程序地址跳转、网络数据下载的模块功能,然后在片内Flash中写入BootLoader程序,通过BootLoader程序实现对单片机片内用户程序的擦写,实现对片内Flash中的用户程序进行远端升级和运行。
2.根据权利要求1所述的一种基于网络的单片机固件升级方法的实现,其特征在于,所述片内存储器中,BootLoader程序是在单片机上电/复位后首先执行的程序,其用于完成硬件初始化,固件升级操作和跳转至用户程序空间运行,该BootLoader程序包含网络TCP/IP通讯、Flash编程、地址跳转模块,该程序文件通过JTAG接口或仿真器从内部闪存FLASH起始地址开始写入,完成后可以将BootLoader程序区域设置成写保护,以禁止对该区域进行编程或者擦除操作;用户应用程序只需更改编译器的起始地址和设置中断向量表的偏移量,即可保证其写入单片机后正常中断和运行。
3.根据权利要求2所述的一种基于网络的单片机固件升级方法的实现,其特征在于,所述BootLoader程序的烧写开始前,首先启动单片机,该单片机的启动过程为,在单片机的内部,程序文件从闪存FLASH起始地址开始写入,单片机上电启动或复位后,其PC指针将指向中断向量表起始地址处,读取复位中断函数的起始地址,执行完复位中断函数后,跳转至用户程序主函数main处执行,以完成启动过程。
4.根据权利要求2所述的一种基于网络的单片机固件升级方法的实现,其特征在于,所述BootLoader程序的烧写过程为:
将单片机内部存储器地址空间分为BootLoader程序区和用户程序区,设置好BootLoader程序空间区的起始地址区间、用户程序空间区的起始地址;
BootLoader程序文件从单片机的内部闪存FLASH起始地址开始写入;
单片机上电启动或复位后,从中断向量表的起始地址取出复位中断向量地址,并跳转至复位中断服务程序,执行完复位中断函数之后跳转到BootLoader程序的main主函数;
在main函数中检测是否需要升级固件,如果固件版本不需要升级,就直接跳转至用户程序空间起始地址运行,如果需要升级固件版本,则利用uIP协议栈从服务器端下载固件二进制数据,校验后存储至片内SRAM,然后擦除现有的用户程序空间区,将SRAM存储器中的固件数据从用户程序空间起始地址开始写入,写入成功后跳转至用户程序空间起始地址执行。
5.根据权利要求4所述的一种基于网络的单片机固件升级方法的实现,其特征在于,所述BootLoader程序对单片机片内用户程序的擦写过程为:
BootLoader程序烧写执行完毕后,跳转到用户程序空间的起始地址,取出用户程序中的复位中断向量地址,并跳转至用户程序中的复位中断服务程序;
用户程序中的复位中断程序执行后,跳转至用户程序主函数main中执行;
在用户程序main主函数执行过程中,当CPU得到一个中断请求时PC指针强制跳转到地址中断向量表的起始地址处;
根据在用户程序中设置的中断向量表偏移量,跳转至相应用户程序中的中断函数内;
执行完相关用户中断请求后,程序返回用户程序的main主函数的中断处继续运行。
CN201510592122.9A 2015-09-17 2015-09-17 一种基于网络的单片机固件升级方法的实现 Pending CN105204899A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510592122.9A CN105204899A (zh) 2015-09-17 2015-09-17 一种基于网络的单片机固件升级方法的实现

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510592122.9A CN105204899A (zh) 2015-09-17 2015-09-17 一种基于网络的单片机固件升级方法的实现

Publications (1)

Publication Number Publication Date
CN105204899A true CN105204899A (zh) 2015-12-30

Family

ID=54952599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510592122.9A Pending CN105204899A (zh) 2015-09-17 2015-09-17 一种基于网络的单片机固件升级方法的实现

Country Status (1)

Country Link
CN (1) CN105204899A (zh)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293531A (zh) * 2016-08-10 2017-01-04 深圳市蜂联科技有限公司 一种基于flash写保护的防止SD使用过程中flash被意外篡改的方法
CN106775853A (zh) * 2016-12-05 2017-05-31 成都瑞科电气有限公司 一种基于以太网更新arm和dsp程序的方法
CN106897090A (zh) * 2017-02-06 2017-06-27 山东鲁能智能技术有限公司 一种嵌入式设备程序升级方法及系统
CN107153613A (zh) * 2017-05-11 2017-09-12 山东鲁能智能技术有限公司 基于HCS12单片机的BootLoader程序调试方法及系统
CN107402776A (zh) * 2016-05-20 2017-11-28 南京阿波罗机器人科技有限公司 一种基于蓝牙4的手机无线升级stm32单片机控制器固件方法
CN107506208A (zh) * 2017-07-14 2017-12-22 广州慧睿思通信息科技有限公司 一种设备防烧死的dsp固件在线升级方法
CN107515799A (zh) * 2016-06-16 2017-12-26 上海奕瑞光电子科技有限公司 一种平板探测器的固件加载方法
CN107729090A (zh) * 2017-11-07 2018-02-23 福建北峰通信科技股份有限公司 一种基于串口传输的用户程序下载方法
CN108694052A (zh) * 2018-06-29 2018-10-23 郑州云海信息技术有限公司 一种固件升级方法、固件升级装置及固件升级系统
CN109445823A (zh) * 2018-11-02 2019-03-08 长虹美菱股份有限公司 一种mcu固件快速升级方法
CN109656608A (zh) * 2019-01-08 2019-04-19 深圳市网心科技有限公司 一种mcu固件升级方法及其相关设备
CN110096293A (zh) * 2019-04-30 2019-08-06 上海睿赛德电子科技有限公司 一种基于STM32具有OTA升级功能的通用Bootloader实现方法
CN110187909A (zh) * 2019-06-03 2019-08-30 山东海格尔信息技术股份有限公司 一种基于安卓系统的单片机固件升级方法
CN110209531A (zh) * 2019-05-23 2019-09-06 湖北三江航天险峰电子信息有限公司 一种基于rs422接口的远程arm在线升级系统及方法
CN110244971A (zh) * 2019-05-28 2019-09-17 湖北三江航天险峰电子信息有限公司 一种基于多重加载的产品在线升级系统及方法
CN110262817A (zh) * 2019-05-17 2019-09-20 福建星云电子股份有限公司 一种基于以太网的单片机程序批量升级方法及系统
CN110262349A (zh) * 2019-06-28 2019-09-20 中国航空工业集团公司雷华电子技术研究所 一种c8051f系列单片机的远程在线编程方法及系统
CN110347417A (zh) * 2019-07-11 2019-10-18 南京沁恒微电子股份有限公司 固定向量表mcu的iap程序升级方法
CN110471675A (zh) * 2019-08-21 2019-11-19 山东比特智能科技股份有限公司 一种程序烧录方法、系统、装置及计算机可读存储介质
CN110895477A (zh) * 2018-09-13 2020-03-20 杭州海康威视数字技术股份有限公司 一种设备启动方法、装置及设备
CN110968330A (zh) * 2019-11-29 2020-04-07 上海商米科技集团股份有限公司 一种基于Android智能设备使用Ymodem协议升级GD32控制器的方法
CN111258604A (zh) * 2020-01-14 2020-06-09 深圳市有为信息技术发展有限公司 Bootloader升级系统和方法
CN111309350A (zh) * 2019-12-31 2020-06-19 浙江零跑科技有限公司 一种更新bootload的方法
CN112346739A (zh) * 2019-08-06 2021-02-09 珠海格力电器股份有限公司 中断向量表的重映射方法、装置、微处理器及电子装置
CN112559014A (zh) * 2020-12-28 2021-03-26 南京立迈胜机器人有限公司 一种基于EtherCAT实时以太网的伺服驱动固件升级方法
CN112860333A (zh) * 2019-11-27 2021-05-28 青岛海尔洗衣机有限公司 控制装置的程序运行方法、装置及衣物处理设备
CN112860301A (zh) * 2021-01-12 2021-05-28 明见(厦门)软件开发有限公司 一种app使用bootloader中断函数的方法及单片机

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103514018A (zh) * 2013-10-08 2014-01-15 上海电力学院 基于stm32f4控制器的程序远程下载的实现方法
CN104572206A (zh) * 2015-01-14 2015-04-29 厦门为那通信科技有限公司 应用程序自更新和备份恢复的方法
CN104809009A (zh) * 2015-03-23 2015-07-29 陕西法士特齿轮有限责任公司 一种汽车电控单元的程序加载引导方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103514018A (zh) * 2013-10-08 2014-01-15 上海电力学院 基于stm32f4控制器的程序远程下载的实现方法
CN104572206A (zh) * 2015-01-14 2015-04-29 厦门为那通信科技有限公司 应用程序自更新和备份恢复的方法
CN104809009A (zh) * 2015-03-23 2015-07-29 陕西法士特齿轮有限责任公司 一种汽车电控单元的程序加载引导方法

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107402776A (zh) * 2016-05-20 2017-11-28 南京阿波罗机器人科技有限公司 一种基于蓝牙4的手机无线升级stm32单片机控制器固件方法
CN107515799A (zh) * 2016-06-16 2017-12-26 上海奕瑞光电子科技有限公司 一种平板探测器的固件加载方法
CN106293531B (zh) * 2016-08-10 2019-09-06 深圳市蜂联科技有限公司 一种基于flash写保护的防止SD使用过程中flash被意外篡改的方法
CN106293531A (zh) * 2016-08-10 2017-01-04 深圳市蜂联科技有限公司 一种基于flash写保护的防止SD使用过程中flash被意外篡改的方法
CN106775853A (zh) * 2016-12-05 2017-05-31 成都瑞科电气有限公司 一种基于以太网更新arm和dsp程序的方法
CN106897090A (zh) * 2017-02-06 2017-06-27 山东鲁能智能技术有限公司 一种嵌入式设备程序升级方法及系统
CN106897090B (zh) * 2017-02-06 2020-09-25 国网智能科技股份有限公司 一种嵌入式设备程序升级方法及系统
CN107153613A (zh) * 2017-05-11 2017-09-12 山东鲁能智能技术有限公司 基于HCS12单片机的BootLoader程序调试方法及系统
CN107153613B (zh) * 2017-05-11 2019-09-24 山东鲁能智能技术有限公司 基于HCS12单片机的BootLoader程序调试方法及系统
CN107506208A (zh) * 2017-07-14 2017-12-22 广州慧睿思通信息科技有限公司 一种设备防烧死的dsp固件在线升级方法
CN107729090A (zh) * 2017-11-07 2018-02-23 福建北峰通信科技股份有限公司 一种基于串口传输的用户程序下载方法
CN108694052A (zh) * 2018-06-29 2018-10-23 郑州云海信息技术有限公司 一种固件升级方法、固件升级装置及固件升级系统
CN108694052B (zh) * 2018-06-29 2021-08-10 郑州云海信息技术有限公司 一种固件升级方法、固件升级装置及固件升级系统
CN110895477A (zh) * 2018-09-13 2020-03-20 杭州海康威视数字技术股份有限公司 一种设备启动方法、装置及设备
CN109445823A (zh) * 2018-11-02 2019-03-08 长虹美菱股份有限公司 一种mcu固件快速升级方法
CN109656608A (zh) * 2019-01-08 2019-04-19 深圳市网心科技有限公司 一种mcu固件升级方法及其相关设备
CN110096293A (zh) * 2019-04-30 2019-08-06 上海睿赛德电子科技有限公司 一种基于STM32具有OTA升级功能的通用Bootloader实现方法
CN110262817A (zh) * 2019-05-17 2019-09-20 福建星云电子股份有限公司 一种基于以太网的单片机程序批量升级方法及系统
CN110262817B (zh) * 2019-05-17 2023-02-28 福建星云电子股份有限公司 一种基于以太网的单片机程序批量升级方法及系统
CN110209531A (zh) * 2019-05-23 2019-09-06 湖北三江航天险峰电子信息有限公司 一种基于rs422接口的远程arm在线升级系统及方法
CN110244971A (zh) * 2019-05-28 2019-09-17 湖北三江航天险峰电子信息有限公司 一种基于多重加载的产品在线升级系统及方法
CN110187909A (zh) * 2019-06-03 2019-08-30 山东海格尔信息技术股份有限公司 一种基于安卓系统的单片机固件升级方法
CN110262349A (zh) * 2019-06-28 2019-09-20 中国航空工业集团公司雷华电子技术研究所 一种c8051f系列单片机的远程在线编程方法及系统
CN110347417A (zh) * 2019-07-11 2019-10-18 南京沁恒微电子股份有限公司 固定向量表mcu的iap程序升级方法
CN110347417B (zh) * 2019-07-11 2023-08-29 南京沁恒微电子股份有限公司 固定向量表mcu的iap程序升级方法
CN112346739A (zh) * 2019-08-06 2021-02-09 珠海格力电器股份有限公司 中断向量表的重映射方法、装置、微处理器及电子装置
CN110471675A (zh) * 2019-08-21 2019-11-19 山东比特智能科技股份有限公司 一种程序烧录方法、系统、装置及计算机可读存储介质
CN112860333A (zh) * 2019-11-27 2021-05-28 青岛海尔洗衣机有限公司 控制装置的程序运行方法、装置及衣物处理设备
CN110968330A (zh) * 2019-11-29 2020-04-07 上海商米科技集团股份有限公司 一种基于Android智能设备使用Ymodem协议升级GD32控制器的方法
CN110968330B (zh) * 2019-11-29 2024-01-09 上海商米科技集团股份有限公司 一种基于Android智能设备使用Ymodem协议升级GD32控制器的方法
CN111309350A (zh) * 2019-12-31 2020-06-19 浙江零跑科技有限公司 一种更新bootload的方法
CN111258604A (zh) * 2020-01-14 2020-06-09 深圳市有为信息技术发展有限公司 Bootloader升级系统和方法
CN112559014A (zh) * 2020-12-28 2021-03-26 南京立迈胜机器人有限公司 一种基于EtherCAT实时以太网的伺服驱动固件升级方法
CN112860301A (zh) * 2021-01-12 2021-05-28 明见(厦门)软件开发有限公司 一种app使用bootloader中断函数的方法及单片机
CN112860301B (zh) * 2021-01-12 2022-08-16 明见(厦门)软件开发有限公司 一种app使用bootloader中断函数的方法及单片机

Similar Documents

Publication Publication Date Title
CN105204899A (zh) 一种基于网络的单片机固件升级方法的实现
Hallinan Embedded Linux primer: a practical real-world approach
CN105793829B (zh) 用于集成组件互连的装置、方法和系统
US8484631B2 (en) Supporting hardware configuration changes in a UEFI firmware component
JP2015501048A5 (zh)
JP2005174307A (ja) 実際のハードウェアベースのデバイスおよび理想化されたハードウェアベースのデバイスにおけるバイモーダルデバイス仮想化のためのシステムおよび方法
WO2015065323A1 (en) Flexible bootstrap code architecture
CN106648758B (zh) 一种多核处理器boot启动系统及方法
US20070168905A1 (en) Networked linux machine and windows software development system
CN101267623A (zh) 一种手机启动引导的构建方法
CN101599040A (zh) 多接口仿真编程器
US20170102924A1 (en) Software architecture for embedded systems
CN103677943A (zh) 一种缝纫机控制器软件升级方法
Lacamera Embedded Systems Architecture: Explore architectural concepts, pragmatic design patterns, and best practices to produce robust systems
Pajankar et al. Introduction to single board computers and raspberry pi
WO2016061016A1 (en) Api versioning independent of product releases
CN104461638A (zh) 一种基于Bootloader的XFP光模块升级方法
CN103729219A (zh) 一种uefi bios架构方法及系统
US20070300054A1 (en) Universal BSP tool for porting on embedded systems and an application thereof
US20150049101A1 (en) Display adaptation system for mipi display serial interface applications
US20080256348A1 (en) Method for configuration of a processing unit
CN114490503A (zh) 一种高性能低功耗的eSIM卡芯片系统
CN109634685A (zh) Pch万兆以太网的pxe功能的启停方法及相关装置
CN113110859B (zh) 一种嵌入式终端远程在线开发系统
Banik et al. Understanding the BIOS and Minimalistic Design

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20151230

WD01 Invention patent application deemed withdrawn after publication