공장 초기화는 어떻게 작동합니까?


18

모든 내장형 장치에는 "초기화"옵션이 포함되어있어 문제가있는 경우 사용자가 장치를 재설정 할 수 있습니다.

STM32 보드에서 펌웨어를 개발 중입니다. 펌웨어에는 UART를 통해 응용 프로그램을 업그레이드 할 수있는 부트 로더가 포함되어 있으며 (새 이미지가 포함 된 이진 파일을 전송하여) 다른 기능을 추가하려고합니다. 공장 초기화. 사용자가이 옵션을 선택하면 보드는 원본 이미지를로드해야합니다.

공장 초기화 란 무엇입니까? 전체 바이너리 파일을 메모리에 다시로드하거나 최종 사용자가 수정 한 변수를 다시 초기화하는 함수를 호출하는 것입니까?

그렇게하는 가장 좋은 방법은 무엇입니까?

원래 FW를 어디에 보관합니까? 내부 또는 외부 플래시에 있습니까?

답변:


20

일반적으로 언급 한 공장 초기화 기능은 저장된 변수 데이터 정보를 기본값으로 다시 복원합니다. 모든 임베디드 장치에이 기능이있는 것은 아닙니다. 일부는 전부는 아닙니다.

장치가 공장 출하시 기본 펌웨어로의 복귀를 지원하도록하려면 해당 이미지를 저장하기 위해 회로에 메모리를 통합해야합니다. 이에 대한 일반적인 구성 요소는 SPI 플래시 칩입니다. 그런 다음 직렬 포트를 통해 이미지를 가져 오는 대신 SPI 플래시 칩에서 펌웨어 이미지를 가져 오는 모드를 지원하도록 부트 로더도 변경해야합니다. 장치가 사용자 교체 가능 펌웨어를 지원하지 않는 경우 일반적으로 공장 기본 펌웨어로 복원하는 수단을 제공 할 필요는 없습니다.


1
실제로 답변이 아니므로 주석으로 남겨 두십시오. 일부 장치는 설정을 기본값으로 되돌 리므로 쉽습니다 (예 : 사용자 설정 지우기). 다른 사람들은 펌웨어를 공장 기본값으로 재설정합니다. 기존 펌웨어를 이전 펌웨어로 교체하는 방법이 필요하므로 더 어렵습니다.
Dithermaster

11

공장 기본값의 가장 일반적인 예를 들면 PC의 UEFI (BIOS)입니다.

플래시 칩과 휘발성 배터리 백업 SRAM 메모리 칩으로 만들어졌습니다. 플래시 칩에는 프로그램이 포함되어 있고 SRAM에는 설정이 포함되어 있습니다.

공장 초기화 , 휘발성 SRAM의 내용이 삭제됩니다. 다음에 부팅 할 때 설정의 체크섬이 유효하지 않음을 감지하고 프로그램에 포함 된 기본값을 복원합니다.

이것은 배터리 백업 SRAM에만 국한되지 않으며 FLASH 또는 EEPROM으로도 수행 할 수 있습니다. 그러나 기기의 전원을 켜지 않고도 배터리 백업 SRAM을 지울 수 있습니다.


공장 복구 라는 또 다른 용어는 기본 프로그램이 두 번 포함되어 있음을 의미합니다. 그러나 사용자는 하나의 사본 만 업그레이드 할 수 있습니다.
이중 BIOS가 그 예입니다.

전화 및 컴퓨터와 같은 고급 시스템에서는 설치 파일을 사용하여 운영 체제를 공장 출하 상태로 복원합니다.


10

공장 재설정 뭐든 당신 이 원하는. 응용 프로그램 및 장치 유형에 따라 다릅니다.

나는 보통 두 가지 일을한다 :

  1. 부트 로더에 들어갈 수있는 확실한 방법 이 항상 있는지 확인하십시오 . 따라서 펌웨어를 부분적으로 또는 잘못 업데이트해도 장치가 손상되지 않습니다.
  2. 사용자가 무언가를 변경하거나 특정 설정 조합으로 인해 응용 프로그램이 중단되는 경우 펌웨어 설정재설정 하는 방법이 있습니다 .

둘 다 버튼 (긴 누름, 짧은 누름), DIP 스위치 또는 기타 통신 수단 (예 : UART, USB)으로 수행 할 수 있습니다.

예를 들어 단일 버튼에 하나의 GPIO를 사용하면 다음과 같은 방법으로 사용할 수 있습니다.

  1. 전원 공급 + 버튼 누름 = 부트 로더 실행
  2. 전원 켜기, 버튼을 누르지 않음 = 3 초 동안 대기, 버튼을 누르고 (창 내) 5 초 동안 유지 한 후 펌웨어 설정을 재설정하면 LED가 깜박임

2

공장 초기화는 초기 공장 이미지를 장치에 다시로드합니다. 사용자가 자신이하는 일을 모르거나 초기 구성으로 돌아 가고자하는 잘못된 구성의 경우에 필요할 수 있습니다. 귀하가 소프트웨어 업데이트를 수행 한 경우 업데이트 중에 특정 실패 시나리오를 다루고 싶을 수 있습니다. 이 경우 공장 출하시 기본 구성을 복원하기 위해 점퍼를 사용하여 선택할 수있는 원래 출고시 이미지가 저장된 전용 플래시 메모리가있을 수도 있습니다. 예를 들어 컴퓨터 메인 보드에서 업데이트가 실패하고 메인 이미지가 손상 될 경우 원래 BIOS 구성을 복원 할 수있었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.