CN109062614A - 一种半导体电机控制器软件升级方法 - Google Patents
一种半导体电机控制器软件升级方法 Download PDFInfo
- Publication number
- CN109062614A CN109062614A CN201710683065.4A CN201710683065A CN109062614A CN 109062614 A CN109062614 A CN 109062614A CN 201710683065 A CN201710683065 A CN 201710683065A CN 109062614 A CN109062614 A CN 109062614A
- Authority
- CN
- China
- Prior art keywords
- program
- user program
- bootloader
- boot section
- boot
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
- G06F9/441—Multiboot arrangements, i.e. selecting an operating system to be loaded
Abstract
本发明提供一种半导体电机控制器软件升级方法,包括:所述控制器具有可与外部进行通信的通信接口,以及两个引导区:用户程序引导区和BootLoader程序引导区,用户程序引导区存储用户程序,BootLoader程序引导区存储BootLoader程序;所述用户程序用于实现电机控制;所述BootLoader程序用于通过所述通信接口接收新的用户程序,并用新的用户程序对用户程序引导区中的用户程序进行更新。本发明采用具有双引导区分别放置BootLoader程序和用户程序,在控制器正常工作时,以存放用户程序的引导区为主引导区,可使控制器上电后快速执行保护功能。
Description
技术领域
本发明涉及起重机电机控制技术领域,特别涉及一种半导体电机控制器软件升级方法。
背景技术
目前市场上的半导体电机控制器一般不带软件在线升级功能,如果半导体电机控制器的功能有更改或升级,半导体电机控制器软件也需相关更改或升级,传统的方法,需对电机控制器开盖,使用专用设备才能对半导体电机控制器软件进行升级,这种方法对大规模升级维护非常不便,对设备本身的电子元器件存在静电击穿的风险。
设计一种不需要开盖,且在升级过程中不会对控制电路以及芯片造成损坏的方法,不仅可以保证该设备的正常的使用,同时还可以缩短升级时间,提高生产效率。
在电机控制器软件中增加BootLoader功能(BootLoader是系统在内核运行之前运行的一段小程序,其功能主要是完成软硬件设备的初始化,建立内存空间映射从而将系统的软硬件环境带到一个合适的状态,或者加载系统映像文件实现系统软件升级),可实现电机控制器软件的在线升级。传统的BootLoader程序,一般由以下两种模式开发的,第一种:应用程序自带BootLoader功能,即BootLoader 程序与应用程序为一个软件工程,一起编译成设备镜像文件,烧入FLASH中,上电运行后,一旦检测到程序更新命令,BootLoader程序便把自身拷贝到RAM中运行,和上位机按照特定的文件传输协议,进行程序更新,这种模式的优点是程序更新较自由,只要设备在运行,随时可以软件更新,缺点是在程序更新时,一旦断电或出错,就会破坏FLASH中的数据为完整,破坏BootLoader程序,且再次上电后程序不能再正常运行:第二种:BootLoader程序与应用程序分别属于两个不同的软件工程,设备上电后,首先运行BootLoader 程序检测相关状态,判断是否进行软件升级或运行主程序,由于需要运行BootLoader程序,上电后需要一段时间后才能进行主程序。
发明内容
本发明所解决的技术问题在于提供一种电机控制器软件升级方法,以解决上述背景技术中的问题。
本发明所解决的技术问题采用以下技术方案来实现:一种电机控制器,包括:所述控制器具有可与外部进行通信的通信接口,以及两个引导区,用户程序引导区和BootLoader程序引导区,用户程序引导区存储用户程序,BootLoader程序引导区存储BootLoader 程序;所述用户程序用于实现电机控制;所述BootLoader程序用于通过所述通信接口接收新的用户程序,并用新的用户程序对用户程序引导区中的用户程序进行更新。
所述BootLoader程序引导区包括闪存单元,所述闪存单元包括 32个保护存储区,所述32个保护存储区堆叠设置。
一种电机控制器软件升级方法,包括以下步骤:用户程序需要更新时,控制器通过通信接口收到外部发送的用户程序更新指令,在当前的用户程序继续运行的同时,引导区1中的第一切换程序开始运行,执行引导区切换功能,将引导区0设置为主引导区,然后重新启动控制器。
与已公开技术相比,本发明存在以下优点:本发明采用具有双引导区分别放置BootLoader程序和用户程序,在控制器正常工作时,以存放用户程序的引导区为主引导区,可使控制器上电后快速执行保护功能。
附图说明
图1为本发明的引导区分配示意图。
图2为本发明的闪存单元结构原理图。
具体实施方式
为了使本发明的技术手段、创作特征、工作流程、使用方法达成目的与功效易于明白了解,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1、图2所示,一种电机控制器,包括:所述控制器具有可与外部进行通信的通信接口,以及两个引导区:用户程序引导区和BootLoader程序引导区,用户程序引导区存储用户程序, BootLoader程序引导区存储BootLoader程序;所述用户程序用于实现电机控制;所述BootLoader程序用于通过所述通信接口接收新的用户程序,并用新的用户程序对用户程序引导区中的用户程序进行更新。
所述BootLoader程序引导区包括闪存单元,所述闪存单元包括 32个保护存储区,所述32个保护存储区堆叠设置。
一种电机控制器软件升级方法,包括以下步骤:用户程序需要更新时,控制器通过通信接口收到外部发送的用户程序更新指令,在当前的用户程序继续运行的同时,引导区1中的第一切换程序开始运行,执行引导区切换功能,将引导区0设置为主引导区,然后重新启动控制器。
假如在BootLoader程序更新用户程序时,由于断电等原因出错,使用户程序更新失败,由于只更新了用户程序,BootLoader程序没有被破坏,则重新上电后,还可继续运行BootLoader程序,再次进行用户程序软件升级功能。因此,本发明不但用户程序的软件升级方便、安全、灵活,并且满足了控制器所需的上电后快速实现保护功能的要求。
以上显示和描述了本发明的基本原理、主要特征及本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明的要求保护范围由所附的权利要求书及其等效物界定。
Claims (3)
1.一种电机控制器,包括:所述控制器具有可与外部进行通信的通信接口,以及两个引导区,其特征在于:用户程序引导区和BootLoader程序引导区,用户程序引导区存储用户程序,BootLoader程序引导区存储BootLoader程序;所述用户程序用于实现电机控制;所述BootLoader程序用于通过所述通信接口接收新的用户程序,并用新的用户程序对用户程序引导区中的用户程序进行更新。
2.根据权利要求1所述的一种电机控制器,其特征在于:所述BootLoader程序引导区包括闪存单元,所述闪存单元包括32个保护存储区,所述32个保护存储区堆叠设置。
3.一种电机控制器软件升级方法,包括以下步骤:用户程序需要更新时,控制器通过通信接口收到外部发送的用户程序更新指令,在当前的用户程序继续运行的同时,引导区1中的第一切换程序开始运行,执行引导区切换功能,将引导区0设置为主引导区,然后重新启动控制器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710683065.4A CN109062614A (zh) | 2017-08-10 | 2017-08-10 | 一种半导体电机控制器软件升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710683065.4A CN109062614A (zh) | 2017-08-10 | 2017-08-10 | 一种半导体电机控制器软件升级方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109062614A true CN109062614A (zh) | 2018-12-21 |
Family
ID=64676047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710683065.4A Pending CN109062614A (zh) | 2017-08-10 | 2017-08-10 | 一种半导体电机控制器软件升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109062614A (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102023876A (zh) * | 2009-09-14 | 2011-04-20 | 漳州科能电器有限公司 | 一种可软件在线升级的嵌入式系统及在线升级方法 |
CN105260212A (zh) * | 2015-10-26 | 2016-01-20 | 常熟开关制造有限公司(原常熟开关厂) | 断路器控制器及其软件升级方法、一种断路器 |
-
2017
- 2017-08-10 CN CN201710683065.4A patent/CN109062614A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102023876A (zh) * | 2009-09-14 | 2011-04-20 | 漳州科能电器有限公司 | 一种可软件在线升级的嵌入式系统及在线升级方法 |
CN105260212A (zh) * | 2015-10-26 | 2016-01-20 | 常熟开关制造有限公司(原常熟开关厂) | 断路器控制器及其软件升级方法、一种断路器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9965367B2 (en) | Automatic hardware recovery system | |
CN109656593B (zh) | 基于zynq芯片实现fpga程序远程升级的方法 | |
CN102609286B (zh) | 一种基于处理器控制的fpga配置程序远程更新系统及其方法 | |
US20160116967A1 (en) | Firmware Update Method and Power System Thereof | |
US9015458B2 (en) | Computer system and method for updating basic input/output system by switching between local mode and bypass mode through baseboard management controller | |
US9910664B2 (en) | System and method of online firmware update for baseboard management controller (BMC) devices | |
US20140208092A1 (en) | Method For Updating Firmware of a Battery Included in a Rechargeable Battery Module, Portable Electronic Device, and Rechargeable Battery Module | |
CN105373407A (zh) | 嵌入式系统dsp和fpga在线升级方法 | |
CN105700970A (zh) | 服务器系统 | |
CN105320531A (zh) | 一种基于MicroBlaze软核的FPGA软件在线升级方法 | |
US10656676B2 (en) | Docking device, electrical device, and MAC address cloning method | |
TWI598815B (zh) | 用以供更新基本輸入輸出系統之橋接模組及其更新方法 | |
US9298371B1 (en) | System and method of reducing write cycles and increasing longevity of non-volatile memory in baseboard management controller (BMC) | |
CN103365696A (zh) | Bios镜像文件获取方法及装置 | |
CN105718281A (zh) | 一种触摸屏固件升级方法及装置 | |
CN101593120A (zh) | 带外升级方法和系统 | |
US20160306634A1 (en) | Electronic device | |
CN101169729A (zh) | 嵌入式系统及其更新应用程序的方法 | |
CN104516800A (zh) | 服务器主板诊断的方法、系统和相关电路系统 | |
CN104199707A (zh) | 对fpga进行升级的系统和方法 | |
CN102253844B (zh) | 一种启动处理器的方法和设备 | |
US20190205109A1 (en) | Computer system, baseboard management controller, and os installation method | |
CN101980159B (zh) | U盘固件的更新装置及更新方法 | |
CN109213570A (zh) | 一种虚拟机迁移方法、装置、设备及可读存储介质 | |
CN104572211A (zh) | 基于arm的fpga程序多镜像加载方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181221 |