KR20130006963A - Repairable reprogramming method for microcontroller's software - Google Patents

Repairable reprogramming method for microcontroller's software Download PDF

Info

Publication number
KR20130006963A
KR20130006963A KR1020110062648A KR20110062648A KR20130006963A KR 20130006963 A KR20130006963 A KR 20130006963A KR 1020110062648 A KR1020110062648 A KR 1020110062648A KR 20110062648 A KR20110062648 A KR 20110062648A KR 20130006963 A KR20130006963 A KR 20130006963A
Authority
KR
South Korea
Prior art keywords
area
boot
reprogramming
flash rom
program
Prior art date
Application number
KR1020110062648A
Other languages
Korean (ko)
Other versions
KR101277344B1 (en
Inventor
김상훈
Original Assignee
주식회사 현대케피코
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 주식회사 현대케피코 filed Critical 주식회사 현대케피코
Priority to KR1020110062648A priority Critical patent/KR101277344B1/en
Publication of KR20130006963A publication Critical patent/KR20130006963A/en
Application granted granted Critical
Publication of KR101277344B1 publication Critical patent/KR101277344B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Mechanical Engineering (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE: Reprogramming method of MCU software performs software recovery even if boot software is not valid due to error while reprogramming after releasing the product. CONSTITUTION: ECU(Electronic Control Unit) confirms value of flash ROM area and determines boot mode of the MCU(S301). If value of the flash ROM area is a specific value, the boot mode is set up as default boot mode and the specific value of the flash ROM area is deleted(S305). Program information corresponding to present program is deleted from program area(S308). Reprogram information corresponding to reprogram is written in the program area(S311). The reprogram information is written in the flash ROM area(S312). The program information is deleted in an order of boot area included in the program area, code area and data area. [Reference numerals] (AA) Start; (BB) Particular value; (CC) End; (S301) Checking a flash rom area; (S302) Entry into a can/serial boot mode; (S303) Entry into a basic boot mode; (S304) Requesting re-programming; (S305) Deleting a flash rom area; (S306) Deleting a boot area; (S307) Deleting a code area; (S308) Deleting a data area; (S309) Writing a boot area; (S310) Writing a code area; (S311) Writing a data area; (S312) Writing a flash rom area; (S313) Re-programming error; (S314) Re-programming complete

Description

마이크로컨트롤러 소프트웨어의 리프로그래밍 방법{Repairable reprogramming method for microcontroller's software}Repaired reprogramming method for microcontroller's software

본 발명은 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법에 관한 것이다. 보다 상세하게는 차량의 전자 제어 유닛에 적용하는 마이크로컨트롤러 소프트웨어의 리프로그래밍을 수행하는 경우와 오류로 인하여 부트 소프트웨어가 더 이상 유효하지 않는 경우에도 리프로그래밍을 수행하는 리프로그래밍 방법에 관한 것이다.The present invention relates to a reprogramming method of microcontroller software. More particularly, the present invention relates to a reprogramming method of microcontroller software applied to an electronic control unit of a vehicle, and a reprogramming method of performing reprogramming even when the boot software is no longer valid due to an error.

일반적으로 차량의 각 주행 상태에 따른 정확한 엔진 및 기타 장치의 동작을 제어하기 위하여 엔진 제어기를 포함하여 많은 전자 제어 유닛(ECU, Electric Contol Unit)들이 자동차에 적용되며, 이들의 동작이나 내장되는 데이터를 각각 설정하여 적절한 전자 제어 유닛들의 제어 동작이 이루어질 수 있도록 한다.In general, many electronic control units (ECUs), including an engine controller, are applied to a vehicle to control the operation of the engine and other devices according to each driving state of the vehicle. Each setting is made so that the control operation of the appropriate electronic control units can be made.

따라서, 새로운 차량을 개발할 경우뿐만 아니라 개발 이후 판매되어 사용자에 의해 운행되고 있는 차량의 동작을 알고 필요한 조치를 취하기 위해서는 엔진을 포함하는 전자 제어 유닛들의 동작 사태를 외부 시험자들이 외부 진단 장비를 통하여 확인할 필요가 있다.Therefore, in order not only to develop a new vehicle but also to know the operation of a vehicle sold after the development and operated by a user and to take necessary measures, it is necessary for external testers to check the operation situation of the electronic control units including the engine through external diagnostic equipment. There is.

이와 관련하여, 대부분의 컨트롤러용 전자 제어 장치의 리 프로그래밍(Re-Programming) 방식은 마이크로 프로세서(Micro Processor)에서 지원하는 프로그램 모드를 사용하거나 미리 컨트롤러 안에 프로그램하여 넣어둔 리 프로그램 기능(Reprogram function)을 외부 장비와 커뮤니케이션 라인을 통해 연동함으로써, 기존 데이터를 지우고 새로운 데이터를 다시 넣도록 하는 방식을 사용하고 있다.In this regard, the re-programming method of most electronic controllers for a controller uses a program mode supported by a microprocessor or a reprogram function preprogrammed in a controller. By interworking with external devices through a communication line, the company is erasing existing data and inserting new data again.

일반적으로, 리프로그래밍을 하는 경우 부트 소프트웨어는 리프로그래밍 대상에 포함되지 않는다.In general, when reprogramming, the boot software is not included in the reprogramming target.

그러나, 부트 소프트웨어 자체의 오류로 인하여 부트 소프트웨어까지 리프로그래밍 대상이 되었을 때, 리프로그래밍이 실패하는 경우에는 소프트웨어의 복구가 불가능 하게 되는 문제점이 있다. However, when the reprogramming targets the boot software due to an error of the boot software itself, there is a problem in that the recovery of the software becomes impossible when the reprogramming fails.

또한, 종래의 부트 소프트웨어가 유효하지 않은 경우에는 더 이상의 리프로그래밍이 불가능한 문제점이 있다.
In addition, if the conventional boot software is not valid, there is a problem that further reprogramming is impossible.

본 발명의 목적은, 차량의 전자 제어 유닛에 적용하는 마이크로컨트롤러 소프트웨어의 리프로그래밍을 수행하는 경우와 오류로 인하여 부트 소프트웨어가 더 이상 유효하지 않는 경우에도 리프로그래밍을 수행하는 리프로그래밍 방법을 제공하는 것이다.
It is an object of the present invention to provide a reprogramming method for performing reprogramming of microcontroller software applied to an electronic control unit of a vehicle and reprogramming even when the boot software is no longer valid due to an error. .

상기 과제를 해결하기 위한 본 발명의 실시예에 따른, 차량 내 전자 제어 유닛에 적용하는 마이크로컨트롤러 소프트웨어를 리프로그래밍하는 방법은, 상기 전자 제어 유닛이 특정 플래쉬 롬 영역의 값을 확인하여 상기 마이크로컨트롤러의 부트 모드를 결정하는 단계; 상기 특정 플래쉬 롬 영역의 값이 특정값인 경우, 상기 부트 모드를 기본 부트 모드로 설정하고, 상기 특정 플래쉬 롬 영역에 상기 특정값을 삭제하는 단계; 프로그램 영역에서 기존 프로그램에 해당하는 프로그램 정보를 삭제하는 단계; 상기 프로그램 영역에 리프로그램에 해당하는 리프로그램 정보를 작성하는 단계; 및 상기 특정 플래쉬 롬 영역에 해당하는 리프로그램 정보를 작성하는 단계를 포함한다.According to an embodiment of the present invention for solving the above problems, a method of reprogramming the microcontroller software applied to the electronic control unit in a vehicle, wherein the electronic control unit checks the value of a specific flash ROM area of the microcontroller Determining a boot mode; If the value of the specific flash ROM region is a specific value, setting the boot mode as a default boot mode and deleting the specific value in the specific flash ROM region; Deleting program information corresponding to an existing program from a program area; Creating reprogram information corresponding to a reprogram in the program area; And generating reprogram information corresponding to the specific flash ROM region.

상기 프로그램 정보를 삭제하는 단계는 상기 프로그램 영역이 포함하는 부트 영역, 코드 영역 및 데이터 영역 순서로 삭제하는 것을 특징으로 한다. The deleting of the program information may include deleting a boot area, a code area, and a data area in the program area.

상기 리프로그램에 해당하는 정보를 작성하는 단계는 상기 프로그램 영역이 포함하는 부트 영역, 코드 영역 및 데이터 영역 순서로 작성하는 것을 특징으로 한다.The creating of the information corresponding to the reprogram may be performed in the order of a boot area, a code area, and a data area included in the program area.

마이크로컨트롤러 소프트웨어를 리프로그래밍하는 방법은 상기 특정 플래쉬 롬 영역의 값이 "0"인 경우, 상기 부트 모드를 캔 또는 시리얼 부트 모드로 설정하여 리프로그래밍을 수행하는 단계를 더 포함하는 것을 특징으로 한다. The method of reprogramming the microcontroller software may further include reprogramming by setting the boot mode to the can or serial boot mode when the value of the specific flash ROM area is "0".

상기 프로그램 정보를 삭제하고 상기 리프로그래밍 정보를 작성하는 과정에서 리프로그램이 오류가 발생하는 경우, 다시 상기 마이크로컨트롤러의 부트 모드를 결정하는 것을 특징으로 한다.
When the error occurs during the reprogramming process of deleting the program information and writing the reprogramming information, the boot mode of the microcontroller is determined again.

본 발명의 실시예에 따르면, 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법은 제품이 양산된 후에 리프로그래밍을 수행하는 도중, 오류로 인하여 부트 소프트웨어가 더 이상 유효하지 않을 경우에도 소프트웨어의 복구를 수행할 수 있는 이점이 있다.
According to an embodiment of the present invention, the reprogramming method of the microcontroller software has the advantage of performing the recovery of the software even if the boot software is no longer valid due to an error during the reprogramming after the product is mass produced. There is this.

도 1은 종래의 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법을 나타내는 흐름도이다.
도 2는 일반적으로 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법에 적용하는 프로그램 영역을 나타내는 도면이다.
도 3은 본 발명의 실시예에 따른 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법을 나타내는 흐름도이다.
1 is a flowchart illustrating a reprogramming method of conventional microcontroller software.
FIG. 2 is a diagram generally illustrating a program area applied to a reprogramming method of microcontroller software.
3 is a flow chart illustrating a reprogramming method of microcontroller software in accordance with an embodiment of the present invention.

본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
The present invention will now be described in detail with reference to the accompanying drawings. Hereinafter, a repeated description, a known function that may obscure the gist of the present invention, and a detailed description of the configuration will be omitted. Embodiments of the present invention are provided to more fully describe the present invention to those skilled in the art. Accordingly, the shape and size of elements in the drawings may be exaggerated for clarity.

이하에서는, 본 발명의 실시예에 따른 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법에 대하여 첨부한 도면을 참고로 하여 상세히 설명한다.Hereinafter, a reprogramming method of the microcontroller software according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings.

먼저, 본 발명의 실시예에 따른 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법은 차량의 전자 제어 유닛(electronic control unit, ECU)에 적용하는 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법에 관한 것이지만, 반드시 이에 한정되지는 않는다. First, the reprogramming method of the microcontroller software according to the embodiment of the present invention relates to the reprogramming method of the microcontroller software applied to the electronic control unit (ECU) of the vehicle, but is not necessarily limited thereto.

도 1은 종래의 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법을 나타내는 흐름도이다. 또한, 도 2는 일반적으로 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법에 적용하는 프로그램 영역을 나타내는 도면이다. 1 is a flowchart illustrating a reprogramming method of conventional microcontroller software. 2 is a diagram showing a program area generally applied to the reprogramming method of the microcontroller software.

도 1을 참고하면, 종래의 전자 제어 유닛은 차량 내 점화(lgnition)가 시작되는 경우에 리프로그래밍을 요청한다(S11). 이때, 종래의 전자 제어 유닛은 부트 소프트웨어가 유효한지를 판단한다(S12). Referring to FIG. 1, the conventional electronic control unit requests reprogramming when an in-vehicle ignition starts (S11). At this time, the conventional electronic control unit determines whether the boot software is valid (S12).

부트 소프트웨어가 유효한 경우, 종래의 전자 제어 유닛은 리프로그래밍을 하기 위하여 부트 영역, 코드 영역 및 데이터 영역을 순서대로 삭제한다(S13, S14 및 S15). 여기서, 부트 영역(BOOT)(210), 코드 영역(CODE)(220) 및 데이터 영역(230)은 도 2와 같이, 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법에 적용하는 프로그램 영역(200)에 해당한다. If the boot software is valid, the conventional electronic control unit deletes the boot area, the code area, and the data area in order for reprogramming (S13, S14, and S15). Here, the boot area (BOOT) 210, the code area (CODE) 220, and the data area 230 correspond to the program area 200 applied to the reprogramming method of the microcontroller software, as shown in FIG. 2.

프로그램 영역(200)은 전자 제어 유닛 내 롬(ROM)에 위치하는 영역이다. The program area 200 is an area located in a ROM in the electronic control unit.

다음, 종래의 전자 제어 유닛은 삭제된 프로그램 영역(200)에 리프로그램에 해당하는 정보를 작성한다. Next, the conventional electronic control unit creates information corresponding to the reprogram in the deleted program area 200.

즉, 종래의 전자 제어 유닛은 리프로그램에 해당하는 정보를 부트 영역, 코드 영역 및 데이터 영역을 순서대로 작성한다(S16, S17 및 S18).That is, the conventional electronic control unit creates information corresponding to the reprogram in order of the boot area, the code area, and the data area (S16, S17, and S18).

종래의 전자 제어 유닛은 프로그램 영역(200)에 리프로그램에 해당하는 정보를 모두 작성하면, 리프로그래밍을 완료한다(S19).The conventional electronic control unit completes the reprogramming when all the information corresponding to the reprogram is created in the program area 200 (S19).

이와 같이, 종래의 전자 제어 유닛은 부트 영역(210), 코드 영역(220) 및 데이터 영역(300)내 정보를 삭제하거나 작성함에 있어, 리프로그래밍 오류가 발생하는 경우(S20)에 다시 리프로그래밍을 시작한다. As described above, when the conventional electronic control unit deletes or writes information in the boot area 210, the code area 220, and the data area 300, a reprogramming error occurs (S20). To start.

반면에, 종래의 전자 제어 유닛은 부트 소프트웨어가 불안전한 경우 리프로그래밍이 실패하는 경우(예를 들어, 도 1에서 S13, S14, S15 및 S16에서 리프로그래밍 오류가 발생하는 경우(S20)), 부트 소프트웨어가 유효하지 않으므로 더 이상 리프로그래밍이 불가능하다. On the other hand, the conventional electronic control unit boots when reprogramming fails when the boot software is unstable (for example, when a reprogramming error occurs in S13, S14, S15 and S16 in FIG. 1) (S20). Since the software is not valid, reprogramming is no longer possible.

이와 같이, 종래의 리프로그래밍 방법은 리프로그래밍을 수행하는 중에 오류로 인하여 부트 소프트웨어가 더 이상 유효하지 않을 경우, 리프로그래밍을 수행할 수 없는 문제점이 있다. As described above, the conventional reprogramming method has a problem in that reprogramming cannot be performed when the boot software is no longer valid due to an error during reprogramming.

따라서, 이러한 문제점을 해결할 수 있는 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법을 도 3을 참조하여 상세하게 설명한다. Therefore, the reprogramming method of the microcontroller software that can solve this problem will be described in detail with reference to FIG.

도 3은 본 발명의 실시예에 따른 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법을 나타내는 흐름도이다.3 is a flow chart illustrating a reprogramming method of microcontroller software in accordance with an embodiment of the present invention.

본 발명의 실시예에 따른 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법은 도 2에 도시되어있는 프로그램 영역(200)에 정보의 삭제 및 작성 과정을 통해 리프로그래밍한다. 여기서, 프로그램 영역(200)은 부트 영역(BOOT)(210), 코드 영역(CODE)(220) 및 데이터 영역(DATA)(230)을 포함한다. The reprogramming method of the microcontroller software according to an embodiment of the present invention is reprogrammed by deleting and writing information in the program area 200 shown in FIG. Here, the program area 200 includes a boot area (BOOT) 210, a code area (CODE) 220, and a data area (DATA) 230.

도 3을 참고하면, 전자 제어 유닛은 특정 플래쉬 롬 영역(Flash ROM)의 값을 을 확인하여 마이크로컨트롤러의 부트 모드를 결정한다(S301). 여기서, 특정 플래쉬 롬 영역은 부트 소프트웨어 내에 위치하는 것으로, 예를 들어, "OxO"로 나타낼 수 있다. Referring to FIG. 3, the electronic control unit determines a boot mode of the microcontroller by checking a value of a specific flash ROM area (S301). In this case, the specific flash ROM region is located in the boot software and may be represented as, for example, "OxO".

전자 제어 유닛은 특정 플래쉬 롬 영역의 값이 "0"인 경우, 부트 모드를 캔 또는 시리얼 부트 모드로 설정한다(S302).When the value of the specific flash ROM area is "0", the electronic control unit sets the boot mode to can or serial boot mode (S302).

반면에, 전자 제어 유닛은 특정 플래쉬 롬 영역의 값이 "특정값"인 경우, 부트 모드를 기본 부트 모드로 설정한다(S303).On the other hand, when the value of the specific flash ROM area is a "specific value", the electronic control unit sets the boot mode to the default boot mode (S303).

다음, 전자 제어 유닛은 기본 부트 모드에서 리프로그래밍을 요청한다(S304). Next, the electronic control unit requests reprogramming in the basic boot mode (S304).

전자 제어 유닛은 특정 플래쉬 롬 영역에 해당하는 특정값을 삭제한다(S305).The electronic control unit deletes a specific value corresponding to the specific flash ROM area (S305).

전자 제어 유닛은 부트 영역, 코드 영역 및 데이터 영역의 정보를 순서대로 삭제한다(S306, S307 및 S308).The electronic control unit deletes the information of the boot area, code area and data area in order (S306, S307, and S308).

다음, 전자 제어 유닛은 리프로그램에 해당하는 정보(이하 "리프로그램 정보"라고도 함)를 부트 영역, 코드 영역 및 데이터 영역에 순서대로 작성한다(S309, S310 및 S311).Next, the electronic control unit creates information corresponding to the reprogram (hereinafter also referred to as "reprogram information") in the boot area, the code area, and the data area in order (S309, S310, and S311).

또한, 전자 제어 유닛은 프로그램 영역에 리프로그램 정보를 작성한 다음, 특정 플래쉬 롬 영역에 해당하는 리프로그램 정보를 작성한다(S312).In addition, the electronic control unit creates reprogram information in the program area, and then creates reprogram information corresponding to the specific flash ROM area (S312).

본 발명의 실시예에 따른, 전자 제어 유닛은 특정 플래쉬 롬 영역, 부트 영역, 코드 영역 및 데이터 영역을 삭제하거나 작성함에 있어, 종래와 다르게 부트 소프트웨어가 유효하지 않은 경우에도 리프로그래밍 오류가 발생하는 경우(S313)에 다시 리프로그래밍을 시작한다. According to an embodiment of the present invention, when the electronic control unit deletes or creates a specific flash ROM area, a boot area, a code area, and a data area, a reprogramming error occurs even when the boot software is invalid unlike the conventional method. Reprogramming is started again at S313.

최종적으로, 전자 제어 유닛은 프로그램 영역과 특정 플래쉬 롬 영역에 해당하는 리프로그램 정보를 모두 작성하면, 리프로그래밍을 완료한다(S314).
Finally, the electronic control unit completes reprogramming when both the program area and the reprogram information corresponding to the specific flash ROM area are created (S314).

이와 같이, 본 발명의 실시예에 따른 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법은 리프로그램을 시작하자마자 부트 모드를 결정하는 특정 플래쉬 롬 영역 내 정보를 가장 먼저 지우고, 리프로그래밍 정보를 가장 마지막에 특정 플래쉬 롬 영역에 작성함으로써, 부트 소프트웨어가 유효하지 않은 경우에도 리프로그래밍을 수행할 수 있다.
As such, the reprogramming method of the microcontroller software according to an embodiment of the present invention first erases information in a specific flash ROM area that determines a boot mode as soon as the reprogramming is started, and reprogramming information is lastly erased. By writing to, you can perform reprogramming even if the boot software is not valid.

이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
As described above, the best embodiment has been disclosed in the drawings and the specification. Although specific terms have been employed herein, they are used for purposes of illustration only and are not intended to limit the scope of the invention as defined in the claims or the claims. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible from this. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.

200; 프로그램 영역
210; 부트 영역
220; 코드 영역
230; 데이터 영역
200; Program area
210; Boot area
220; Code area
230; Data area

Claims (5)

차량 내 전자 제어 유닛에 적용하는 마이크로컨트롤러 소프트웨어를 리프로그래밍하는 방법에 있어서,
상기 전자 제어 유닛이 특정 플래쉬 롬 영역의 값을 확인하여 상기 마이크로컨트롤러의 부트 모드를 결정하는 단계;
상기 특정 플래쉬 롬 영역의 값이 특정값인 경우, 상기 부트 모드를 기본 부트 모드로 설정하고, 상기 특정 플래쉬 롬 영역에 상기 특정값을 삭제하는 단계;
프로그램 영역에서 기존 프로그램에 해당하는 프로그램 정보를 삭제하는 단계;
상기 프로그램 영역에 리프로그램에 해당하는 리프로그램 정보를 작성하는 단계; 및
상기 특정 플래쉬 롬 영역에 해당하는 리프로그램 정보를 작성하는 단계를 포함하는 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법.
In a method for reprogramming microcontroller software applied to an in-vehicle electronic control unit,
Determining, by the electronic control unit, a boot mode of the microcontroller by checking a value of a specific flash ROM area;
If the value of the specific flash ROM region is a specific value, setting the boot mode as a default boot mode and deleting the specific value in the specific flash ROM region;
Deleting program information corresponding to an existing program from a program area;
Creating reprogram information corresponding to a reprogram in the program area; And
And reprogramming information corresponding to the particular flash ROM region.
청구항 1에 있어서,
상기 프로그램 정보를 삭제하는 단계는,
상기 프로그램 영역이 포함하는 부트 영역, 코드 영역 및 데이터 영역 순서로 삭제하는 것을 특징으로 하는 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법.
The method according to claim 1,
Deleting the program information,
And deleting the boot region, the code region, and the data region included in the program region.
청구항 1에 있어서,
상기 리프로그램에 해당하는 정보를 작성하는 단계는,
상기 프로그램 영역이 포함하는 부트 영역, 코드 영역 및 데이터 영역 순서로 작성하는 것을 특징으로 하는 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법.
The method according to claim 1,
Creating the information corresponding to the reprogram,
And rewriting the microcontroller software in the order of the boot region, code region, and data region included in the program region.
청구항 1에 있어서,
상기 특정 플래쉬 롬 영역의 값이 "0"인 경우, 상기 부트 모드를 캔 또는 시리얼 부트 모드로 설정하여 리프로그래밍을 수행하는 단계를 더 포함하는 것을 특징으로 하는 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법.
The method according to claim 1,
And reprogramming the boot mode to a can or serial boot mode when the value of the specific flash ROM area is "0".
청구항 1에 있어서,
상기 프로그램 정보를 삭제하고 상기 리프로그래밍 정보를 작성하는 과정에서 리프로그램이 오류가 발생하는 경우, 다시 상기 마이크로컨트롤러의 부트 모드를 결정하는 것을 특징으로 하는 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법.
The method according to claim 1,
And re-determining a boot mode of the microcontroller if an error occurs in the reprogramming process while deleting the program information and writing the reprogramming information.
KR1020110062648A 2011-06-28 2011-06-28 Repairable reprogramming method for microcontroller's software KR101277344B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110062648A KR101277344B1 (en) 2011-06-28 2011-06-28 Repairable reprogramming method for microcontroller's software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110062648A KR101277344B1 (en) 2011-06-28 2011-06-28 Repairable reprogramming method for microcontroller's software

Publications (2)

Publication Number Publication Date
KR20130006963A true KR20130006963A (en) 2013-01-18
KR101277344B1 KR101277344B1 (en) 2013-06-20

Family

ID=47837635

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110062648A KR101277344B1 (en) 2011-06-28 2011-06-28 Repairable reprogramming method for microcontroller's software

Country Status (1)

Country Link
KR (1) KR101277344B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111284450A (en) * 2018-12-07 2020-06-16 奥特润株式会社 Method and apparatus for enhancing safety of vehicle controller

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19917940A1 (en) * 1999-04-21 2000-10-26 Bosch Gmbh Robert Memory component of a computer unit
KR100591813B1 (en) * 2004-11-19 2006-06-20 주식회사 팬택앤큐리텔 Mobile phone had a function of recovery for the firmware download errors and Recovering method for the firmware download errors of a mobile phone
US20070277028A1 (en) * 2006-05-26 2007-11-29 Jamey Cates Method and system for recovery from reprogramming failures in nonvolatile memory
KR100873302B1 (en) * 2006-08-29 2008-12-09 콘티넨탈 오토모티브 시스템 주식회사 Method for reprogramming electric control unit of car

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111284450A (en) * 2018-12-07 2020-06-16 奥特润株式会社 Method and apparatus for enhancing safety of vehicle controller
KR20200070450A (en) * 2018-12-07 2020-06-18 현대오트론 주식회사 Method and apparatus for enhancing security of vehicle controller
CN111284450B (en) * 2018-12-07 2021-12-24 现代奥特奥博株式会社 Method and apparatus for enhancing safety of vehicle controller
US11347837B2 (en) 2018-12-07 2022-05-31 Hyundai Autoever Corp. Method and apparatus for enhancing security of vehicle controller

Also Published As

Publication number Publication date
KR101277344B1 (en) 2013-06-20

Similar Documents

Publication Publication Date Title
CN110231952B (en) ECU program backup and cyclic upgrade control method and device
CN103713932B (en) The update method of application program and device in a kind of electronic control unit
CN112506535A (en) Method for updating Bootloader software by automobile ECU controller
RU2142168C1 (en) Method for complete rewriting of cleared non- volatile memory
CN105608370B (en) A kind of ECU programs write with a brush dipped in Chinese ink and detection method
CN103412561B (en) A kind of method for refreshing of automobile controller
CN101344854B (en) Method for upgrading embedded type Linux equipment through SD card
CN110244966A (en) A kind of BOOTLOADER program online updating method based on UDS
CN109358887B (en) On-line upgrading method, device and system for single chip microcomputer program
JP2006298261A (en) Control unit for automobile
CN110825403A (en) Method and system for flashing ECU (electronic control Unit) of automobile
CN105718281A (en) Touch screen firmware upgrading method and device
WO2019062770A1 (en) System version upgrading method and apparatus
CN108170480A (en) A kind of startup method based on u-boot guiding μ C/OS operating systems
JP4880105B2 (en) Memory function protection method for control device and control device
US11640288B2 (en) System version upgrading method and apparatus
JP4492025B2 (en) Data storage method for electronic control unit
KR101277344B1 (en) Repairable reprogramming method for microcontroller's software
CN113220319A (en) Data updating method and device and vehicle
JP7128763B2 (en) Electronic control unit and control data setting method
CN116431186A (en) Upgrading method, device and medium of vehicle-mounted ECU
CN110688135A (en) Program flashing method, device and medium for controller
JP2005338955A (en) Electronic control device
CN114064077A (en) Automobile ECU cloud software upgrading method based on TC397 microcontroller address mapping
KR100873302B1 (en) Method for reprogramming electric control unit of car

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151223

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 9