CN103809995A - 单片机及其在线升级方法和在线升级装置 - Google Patents
单片机及其在线升级方法和在线升级装置 Download PDFInfo
- Publication number
- CN103809995A CN103809995A CN201210461903.0A CN201210461903A CN103809995A CN 103809995 A CN103809995 A CN 103809995A CN 201210461903 A CN201210461903 A CN 201210461903A CN 103809995 A CN103809995 A CN 103809995A
- Authority
- CN
- China
- Prior art keywords
- chip microcomputer
- upgrading
- user program
- rompaq
- online upgrading
- 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
本发明涉及一种单片机及其在线升级方法和在线升级装置。在线升级方法包括:步骤一:在单片机的RAM存储器中写入升级程序;步骤二:运行升级程序,得到升级后的用户程序;步骤三:将升级后的用户程序写到单片机的flash存储器中。采用本发明的单片机及其在线升级方法和在线升级装置,可充分利用单片机内的flash存储器,避免存储空间的浪费。
Description
技术领域
本发明涉及一种单片机在线升级技术,特别是一种单片机及其在线升级方法和在线升级装置。
背景技术
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。
单片机程序一般在出厂前进行程序烧写,程序到了用户手中不能再次更改。为了解决该问题,中国专利申请03154290.5提出了一种单片机在线升级方法和装置,其把单片机flash程序分成两部分A程序和B程序,然后用A程序来升级B部分程序。其中A为升级程序,固化在flash中,不变。B为用户程序,由A来升级及写入,可变。然而,该技术方案的缺点是:
第一,A部分是固定不变的,如果A有问题,不能进行A程序的升级;
第二,A部分占用了单片机的固定一部分空间,对于单片机这种资源比较有限的MCU来说是一种极大的浪费。
发明内容
在下文中给出关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
本发明的一个主要目的在于提供一种单片机及其在线升级方法在线升级装置,其可充分利用单片机内的flash存储器,避免存储空间的浪费。
根据本发明的一方面,一种单片机的在线升级方法,包括:
步骤一:在单片机的RAM存储器中写入升级程序;
步骤二:运行所述升级程序,得到升级后的用户程序;
步骤三:将所述升级后的用户程序写到所述单片机的flash存储器中。
根据本发明的另一方面,一种单片机在线升级装置,包括RAM存储器和flash存储器,还包括:
升级程序部,用于在单片机的所述RAM存储器中写入升级程序;
用户程序部,用于运行所述升级程序,得到升级后的用户程序;
用户程序存储部,用于将所述升级后的用户程序存储到单片机的所述flash存储器中。
根据本发明的第三方面,一种单片机,包括单片机在线升级装置。
采用本发明的单片机及其在线升级方法和在线升级装置,可充分利用单片机内的flash存储器,避免存储空间的浪费。
附图说明
参照下面结合附图对本发明实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。附图中的部件只是为了示出本发明的原理。在附图中,相同的或类似的技术特征或部件将采用相同或类似的附图标记来表示。
图1为本发明的单片机的在线升级方法的一种实施方式的流程图;
图2为本发明的单片机的在线升级装置的一种实施方式的结构图;
图3为本发明的单片机的一种实施方式的结构图。
具体实施方式
下面参照附图来说明本发明的实施例。在本发明的一个附图或一种实施方式中描述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。应当注意,为了清楚的目的,附图和说明中省略了与本发明无关的、本领域普通技术人员已知的部件和处理的表示和描述。
参见图1所示,为本发明的单片机的在先升级方法的一种实施方式的流程图。
在该实施方式中,单片机的在线升级方法,包括:
S10:在单片机的RAM存储器中写入升级程序;
S20:运行升级程序,得到升级后的用户程序;
S30:将升级后的用户程序写到单片机的flash存储器中。
例如,升级程序可以存储在升级主机中,升级主机可以通过串行总线,如uart,i2c等连接至单片机,使得单片机能够获取升级主机中存储的升级程序。
通过将升级程序写入单片机的RAM存储器而不写入单片机的flash存储器中,可以将整个flash存储器用于存储用户程序,从而可以更充分的利用单片机的flash存储器。
作为一种优选方案,步骤S30还可以包括:
在将升级后的用户程序写到单片机的flash存储器中之前,擦除存储在单片机的flash存储器中的升级前的用户程序。
作为一种优选方案,在步骤一之前,可由存储在单片机的flash存储器中的升级前的用户程序验证升级程序的合法性。
例如,用户程序可以包括升级部分(即用于获取升级程序的部分)和非升级部分(即用户正常使用时的使用部分)。升级前的用户程序中的升级部分可以包含验证码,如果存储有升级程序的升级主机的验证码与升级前的用户程序的升级部分中的验证码相匹配,则证明该升级主机是合法的,进而可证明该升级程序是合法的、可执行的。参见图2所示,为本发明的单片机在线升级装置的一种实施方式的结构图。
本实施方式的一种单片机在线升级装置10,包括RAM存储器11和flash存储器12,还包括升级程序部13,用于在单片机的所述RAM存储器中写入升级程序。用户程序部14,用于运行升级程序,得到升级后的用户程序。用户程序存储部15,用于将升级后的用户程序存储到单片机的flash存储器12中。
作为一种优选方案,用户程序存储部15还可用于在将升级后的用户程序写到单片机的flash存储器12中之前,擦除存储在单片机的flash存储器12中的升级前的用户程序。
作为一种优选方案,单片机在线升级装置10还可以包括升级程序验证部(图中未示出),用于在升级程序部13在单片机的RAM存储器11中写入升级程序之前,根据存储在flash存储器12中的升级前的用户程序验证升级程序的合法性。
例如,用户程序可以包括升级部分(即用于获取升级程序的部分)和非升级部分(即用户正常使用时的使用部分)。升级前的用户程序中的升级部分可以包含验证码,如果存储有升级程序的升级主机的验证码与升级前的用户程序的升级部分中的验证码相匹配,则证明该升级主机是合法的,进而可证明该升级程序是合法的、可执行的。
如图3所示,为本发明的单片机1的一种实施方式的结构图。本实施方式的单片机包括了单片机在线升级装置10。
采用本发明的单片机及其的在线升级方法和在线升级装置,可充分利用单片机内的flash存储器,避免存储空间的浪费。
上面对本发明的一些实施方式进行了详细的描述。如本领域的普通技术人员所能理解的,本发明的方法和装置的全部或者任何步骤或者部件,可以在任何计算设备(包括处理器、存储介质等)或者计算设备的网络中,以硬件、固件、软件或者它们的组合加以实现,这是本领域普通技术人员在了解本发明的内容的情况下运用他们的基本编程技能就能实现的,因此不需在此具体说明。
此外,显而易见的是,在上面的说明中涉及到可能的外部操作的时候,无疑要使用与任何计算设备相连的任何显示设备和任何输入设备、相应的接口和控制程序。总而言之,计算机、计算机系统或者计算机网络中的相关硬件、软件和实现本发明的前述方法中的各种操作的硬件、固件、软件或者它们的组合,即构成本发明的设备及其各组成部件。
因此,基于上述理解,本发明的目的还可以通过在任何信息处理设备上运行一个程序或者一组程序来实现。所述信息处理设备可以是公知的通用设备。因此,本发明的目的也可以仅仅通过提供包含实现所述方法或者设备的程序代码的程序产品来实现。也就是说,这样的程序产品也构成本发明,并且存储或者传输这样的程序产品的介质也构成本发明。显然,所述存储或者传输介质可以是本领域技术人员已知的,或者将来所开发出来的任何类型的存储或者传输介质,因此也没有必要在此对各种存储或者传输介质一一列举。
在本发明的设备和方法中,显然,各部件或各步骤是可以分解、组合和/或分解后重新组合的。这些分解和/或重新组合应视为本发明的等效方案。还需要指出的是,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行。某些步骤可以并行或彼此独立地执行。同时,在上面对本发明具体实施例的描述中,针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
虽然已经详细说明了本发明及其优点,但是应当理解在不超出由所附的权利要求所限定的本发明的精神和范围的情况下可以进行各种改变、替代和变换。而且,本申请的范围不仅限于说明书所描述的过程、设备、手段、方法和步骤的具体实施例。本领域内的普通技术人员从本发明的公开内容将容易理解,根据本发明可以使用执行与在此所述的相应实施例基本相同的功能或者获得与其基本相同的结果的、现有和将来要被开发的过程、设备、手段、方法或者步骤。因此,所附的权利要求旨在在它们的范围内包括这样的过程、设备、手段、方法或者步骤。
Claims (7)
1.一种单片机的在线升级方法,其特征在于,包括:
步骤一:在单片机的RAM存储器中写入升级程序;
步骤二:运行所述升级程序,得到升级后的用户程序;
步骤三:将所述升级后的用户程序写到所述单片机的flash存储器中。
2.根据权利要求1所述的单片机在线升级方法,其特征在于,所述步骤三还包括:
在将所述升级后的用户程序写到所述单片机的flash存储器中之前,擦除存储在所述单片机的flash存储器中的升级前的用户程序。
3.根据权利要求2所述的单片机在线升级方法,其特征在于,还包括:
在步骤一之前,由存储在所述单片机的flash存储器中的所述升级前的用户程序验证所述升级程序的合法性。
4.一种单片机在线升级装置,包括RAM存储器和flash存储器,其特征在于,还包括:
升级程序部,用于在单片机的所述RAM存储器中写入升级程序;
用户程序部,用于运行所述升级程序,得到升级后的用户程序;
用户程序存储部,用于将所述升级后的用户程序存储到单片机的所述flash存储器中。
5.根据权利要求4所述的单片机在线升级装置,其特征在于:
所述用户程序存储部还用于在将所述升级后的用户程序写到单片机的所述flash存储器中之前,擦除存储在单片机的所述flash存储器中的升级前的用户程序。
6.根据权利要求5所述的单片机在线升级装置,其特征在于,还包括升级程序验证部;
所述升级程序验证部用于在所述升级程序部在单片机的所述RAM存储器中写入升级程序之前,根据存储在所述flash存储器中的所述升级前的用户程序验证所述升级程序的合法性。
7.一种单片机,其特征在于,包括如权利要求4-6任意一项所述的单片机在线升级装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210461903.0A CN103809995A (zh) | 2012-11-15 | 2012-11-15 | 单片机及其在线升级方法和在线升级装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210461903.0A CN103809995A (zh) | 2012-11-15 | 2012-11-15 | 单片机及其在线升级方法和在线升级装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103809995A true CN103809995A (zh) | 2014-05-21 |
Family
ID=50706818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210461903.0A Pending CN103809995A (zh) | 2012-11-15 | 2012-11-15 | 单片机及其在线升级方法和在线升级装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103809995A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106569833A (zh) * | 2016-11-14 | 2017-04-19 | 积成电子股份有限公司 | 一种具有二级boot的dsp程序在线升级方法 |
CN106909418A (zh) * | 2017-02-13 | 2017-06-30 | 深圳市广和通无线股份有限公司 | 单片机系统更新方法和装置 |
CN112199109A (zh) * | 2020-10-16 | 2021-01-08 | 杭州觅睿科技有限公司 | 一种固件升级方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1584844A (zh) * | 2003-08-19 | 2005-02-23 | 华为技术有限公司 | 一种单片机在线升级方法和装置 |
CN1598772A (zh) * | 2004-08-31 | 2005-03-23 | 四川长虹电器股份有限公司 | 单片机程序升级方法 |
CN1804799A (zh) * | 2005-01-12 | 2006-07-19 | 华为技术有限公司 | 单片机在线加载升级方法及系统 |
CN1851645A (zh) * | 2006-01-17 | 2006-10-25 | 华为技术有限公司 | 一种单片机系统在运行中升级的装置和方法 |
CN102651686A (zh) * | 2011-02-23 | 2012-08-29 | 上海华虹集成电路有限责任公司 | 单片机在线可编程的身份认证方法 |
-
2012
- 2012-11-15 CN CN201210461903.0A patent/CN103809995A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1584844A (zh) * | 2003-08-19 | 2005-02-23 | 华为技术有限公司 | 一种单片机在线升级方法和装置 |
CN1598772A (zh) * | 2004-08-31 | 2005-03-23 | 四川长虹电器股份有限公司 | 单片机程序升级方法 |
CN1804799A (zh) * | 2005-01-12 | 2006-07-19 | 华为技术有限公司 | 单片机在线加载升级方法及系统 |
CN1851645A (zh) * | 2006-01-17 | 2006-10-25 | 华为技术有限公司 | 一种单片机系统在运行中升级的装置和方法 |
CN102651686A (zh) * | 2011-02-23 | 2012-08-29 | 上海华虹集成电路有限责任公司 | 单片机在线可编程的身份认证方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106569833A (zh) * | 2016-11-14 | 2017-04-19 | 积成电子股份有限公司 | 一种具有二级boot的dsp程序在线升级方法 |
CN106569833B (zh) * | 2016-11-14 | 2020-04-10 | 积成电子股份有限公司 | 一种具有二级boot的dsp程序在线升级方法 |
CN106909418A (zh) * | 2017-02-13 | 2017-06-30 | 深圳市广和通无线股份有限公司 | 单片机系统更新方法和装置 |
CN112199109A (zh) * | 2020-10-16 | 2021-01-08 | 杭州觅睿科技有限公司 | 一种固件升级方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109284815B (zh) | 神经网络模型算法编译方法、装置及相关产品 | |
CN109543825B (zh) | 神经网络模型算法编译方法、装置及相关产品 | |
CN103777976A (zh) | 单片机及其在线升级方法和在线升级装置 | |
CN103809995A (zh) | 单片机及其在线升级方法和在线升级装置 | |
CN103729219A (zh) | 一种uefi bios架构方法及系统 | |
US8458730B2 (en) | Multi-level driver configuration | |
CN101369258B (zh) | 输入输出控制系统 | |
CN115344292B (zh) | 固件自动升级方法、装置、电子设备及可读存储介质 | |
CN115373826B (zh) | 一种基于云计算的任务调度方法及装置 | |
CN113396403A (zh) | 使用硅资源利用的耐老化系统设计 | |
CN114020414B (zh) | Android系统与底层Linux共生方法、装置、电子设备及存储介质 | |
CN103235921B (zh) | 一种计算机系统 | |
CN113296876B (zh) | 虚拟机的设备直通方法、设备及存储介质 | |
CN110928602B (zh) | Fbd程序的运行方法及装置 | |
CN110377272B (zh) | 一种基于tbox的sdk的实现方法及装置 | |
CN109408407B (zh) | 显示内存的分配方法和装置 | |
CN106886373B (zh) | 物理机的磁盘操作方法、装置和物理机 | |
CN110737983A (zh) | 交通工具的功能试验方法、装置、设备及存储介质 | |
JP2013114483A (ja) | ディジタルシグナルプロセッサシステムおよびディジタルシグナルプロセッサシステムにおける割込み処理方法 | |
CN112637280B (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN111061460B (zh) | 基于嵌入式系统的通用软件开发平台 | |
CN202230353U (zh) | 一种可编程控制器系统 | |
WO2020192587A1 (zh) | 人工智能计算装置及相关产品 | |
KR101554556B1 (ko) | 모니터링장치 및 그 동작 방법 | |
CN105373412A (zh) | 虚拟机图形产生方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20140521 |