주요 내용으로 건너뛰기

7. External flash in block mode

개요​

NAND 플래시 같이 메모리 매핑이 되지 않은 플래시 메모리를 사용할 때는 TouchGFX가 내부에 저장된 자산을 사용할 수 있도록 드라이버를 개발해야 합니다.

이 주제에 대한 자세한 내용은 이미지 저장을 위해 메모리 매핑이 되지 않은 플래시 사용 섹션을 참조하십시오.

Note
주소 지정이 불가능한 외부 플래시가 보드 브링업과 관련이 없다면 이 단계를 건너뛰십시오.

목표​

이 단계의 목표는 매핑이 되지 않은 플래시 메모리의 한 위치에서 다수의 바이트를 읽어온 후 이를 배열에 저장할 수 있는 드라이버를 생성하는 것입니다.

확인​

다음은 이 섹션에서 확인해야 할 사항입니다.

확인사항확인근거
플래시의 내용 확인플래시에서 읽어온 내용이 올바른지 확인합니다.
성능 확인읽기 성능이 MCU 구성을 따르는지 확인합니다.

전제 조건​

  • 플래시 정보(일반적으로 제조사 데이터 시트의 정보)
  • MCU와 외부 플래시 간 연결 정보
  • 플래시 속도

실행​

일반적으로 NAND 플래시는 MCU의 FMC를 통해 구성됩니다.

플래시에 연결되는 GPIO를 구성해야 한다는 점에 유의하십시오.

메모리 매핑이 되지 않은 QSPI 플래시는 메모리 매핑된 QSPI 플래시와 마찬가지로 STM32CubeMX에서 구성됩니다.

코드​

플래시의 특정 주소에서 다수의 바이트를 읽어들이는 코드를 작성합니다. 드라이버의 구현은 플래시 칩에 따라 다릅니다. 이러한 코드의 예시가 아래에 나와 있습니다. 드라이버의 구현은 플래시 칩에 따라 다릅니다.

void readNonaddressableFlash(uint32_t from, uint8_t *into, uint32_t n)
{
...
}

uint8_t bytes[1000];

//read external Flash
readNonaddressableFlash(0xab001212, bytes, 1000);

이 코드는 추후에 TouchGFX 추상화 계층(Al) 을 개발하는데 사용됩니다.