KOKU005 February   2023

 

  1.   요약
  2.   상표
  3. 1BSL 기능 개요
  4. 2용어
  5. 3BSL 아키텍처
    1. 3.1 설계
      1. 3.1.1 타임아웃 기능
        1. 3.1.1.1 인터페이스 자동 감지
        2. 3.1.1.2 명령 수신
    2. 3.2 BSL 호출
      1. 3.2.1 빈 장치
      2. 3.2.2 애플리케이션 요청
      3. 3.2.3 GPIO 기반 호출
      4. 3.2.4 사서함 디버그 명령
      5. 3.2.5 기타
        1. 3.2.5.1 부팅 전 애플리케이션 확인
    3. 3.3 메모리
      1. 3.3.1 SRAM 메모리 사용량
    4. 3.4 BSL 구성
    5. 3.5 BSL 상태
  6. 4부트로더 프로토콜
    1. 4.1 패킷 형식
    2. 4.2 UART 및 I2C BSL 프로토콜
      1. 4.2.1 BSL 승인
      2. 4.2.2 주변 기기 구성
        1. 4.2.2.1 UART
        2. 4.2.2.2 I2C
        3. 4.2.2.3 CRC
    3. 4.3 부트로더 코어 명령
      1. 4.3.1  Connection
      2. 4.3.2  장치 정보 가져오기
      3. 4.3.3  부트로더 잠금 해제
      4. 4.3.4  데이터 프로그래밍
      5. 4.3.5  빠른 데이터 프로그래밍
      6. 4.3.6  데이터 다시 읽기
      7. 4.3.7  플래시 범위 삭제
      8. 4.3.8  대량 삭제
      9. 4.3.9  공장 초기화
      10. 4.3.10 독립 실행형 검증
      11. 4.3.11 애플리케이션 시작
      12. 4.3.12 전송 속도 변경
    4. 4.4 BSL 코어 응답
      1. 4.4.1 BSL 코어 메시지
      2. 4.4.2 자세한 오류
      3. 4.4.3 메모리 다시 읽기
      4. 4.4.4 장치 정보
      5. 4.4.5 독립 실행형 검증
    5. 4.5 부트로더 보안
      1. 4.5.1 암호로 보호된 명령
        1. 4.5.1.1 보안 경고
      2. 4.5.2 BSL 입력
  7. 5부트로더를 사용한 샘플 프로그램 흐름
  8. 6보조 부트로더
    1. 6.1 보조 부트로더 예
  9. 7인터페이스 플러그인
    1. 7.1 구현
      1. 7.1.1 Init
      2. 7.1.2 Receive
      3. 7.1.3 Transmit
      4. 7.1.4 Deinit
      5. 7.1.5 중요 참고
    2. 7.2 플래시 플러그인 유형
    3. 7.3 기존 인터페이스 재정의
      1. 7.3.1 UART 인터페이스 플래시 플러그인 예
  10. 8참고 문헌
  11. 9개정 내역

데이터 프로그래밍

조직

헤더

길이

CMD

주소

데이터

CRC32

0x80

L1

L2

0x20

A1...A4

D1...Dn

C1

C2

C3

C4

설명

프로그램 명령은 A1...A4부터 시작하는 메모리 주소에 데이터 D1~DN을 쓰는 데 사용됩니다. 이 명령어는 차단 쓰기를 수행합니다. 프로그래밍이 완료되면 메시지 응답이 호스트로 전송됩니다.

프로그래밍은 메인 플래시(애플리케이션 메모리), 비 메인 플래시(구성 메모리) 및 SRAM 메모리에 사용할 수 있습니다. 절대 주소 범위에 대한 자세한 내용은 장치별 데이터시트를 참조하십시오.

플래시 메모리는 프로그래밍하기 전에 호스트에 의해 삭제되어야 합니다. 주 플래시 영역 삭제에 대한 자세한 내용은 플래시 범위 삭제, 대량 삭제를 참조하십시오. 비 메인 플래시는 공장 초기화 명령으로만 삭제할 수 있습니다.

플래시 컨트롤러 특성으로 인해 플래시 프로그래밍의 시작 주소와 데이터 길이는 8바이트로 정렬되어야 합니다.

주:

호스트가 SRAM 메모리에 완전히 액세스할 수 없습니다. 자세한 내용은 Topic Link Label3.3.1의 내용을 참조하십시오.

보호

주소

프로그래밍할 메모리 영역의 시작 주소입니다. A1...A4, 여기서 A1은 32비트 주소의 최하위 바이트입니다.

데이터

지정된 주소에 쓸 데이터 바이트입니다. 전송할 수 있는 데이터의 최대 크기는 장치의 버퍼 크기에 의해 제한됩니다. 버퍼 크기는 장치 정보 가져오기 명령으로 알 수 있습니다.

명령 반환

작업 상태에 대한 메시지가 포함된 BSL 승인 및 BSL 코어 응답입니다. 자세한 내용은 Topic Link Label4.4.1 섹션을 참조하십시오.

호스트: 80 0D 00 20 00 00 00 00 00 00 00 04 00 00 00 08 7A DC AE B8

BSL: 00 08 02 00 3B 00 38 02 94 82