Additional Features
프로젝트 구성에서 추가 기능을 사용할 수 있는 경우 Additional Features 그룹이 나타납니다.
External Data Reader
RGB565 Framebuffer Pixel Format의 경우 TouchGFX는 개발자가 메모리에서 버퍼의 추가 비용이 발생하는 캐싱 대신에 메모리 매핑되지 않은 직렬 플래시에서 직접 데이터를 읽을 수 있게 해주는 Data Reader 인터페이스를 지원합니다. 메모리 매핑되지 않은 플래시 칩에서 애플리케이션 애셋을 검색하기 위해 DataReader를 구현하는 방법에 대한 예제는 SerialFlash 문서를 참조하시기 바랍니다.
Data Reader 옵션은 일반적으로 추가 버퍼용 메모리가 충분하지 않은 저가 솔루션(예: STM32G0)에서 사용됩니다.
개발자는 다음 구성을 만들 수 있습니다.
- External Data Reader: 이 기능을 활성화 또는 비활성화하십시오. 활성화하면 TouchGFX가 생성된 인터페이스를 통해 직접 애셋에 대한 데이터를 검색합니다. 비활성화된 경우에는 개발자가 대신에 메모리의 버퍼에 이미지를 캐싱해야 합니다.
- External Data Reader: Memory base address: 외부 data raeder 메모리의 시작 주소를지정합니다.
- External Data Reader: Memory size: 외부 data reader 메모리의 크기를 지정합니다.
- External Data Reader: Line Buffer Size: 이미지 또는 텍스트를 프레임 버퍼에 블렌딩할 수 있도록 두 개의 버퍼를 생성합니다. ARGB8888 픽셀 형식에서 전체 크기 이미지를 지원할 수 있도록 1 화면 너비 4바이트*가 기본 값이 됩니다.
- External Data Reader: Minimum DMA transfer size: DMA 전송을 시작하는 데 필요한 최소 바이트를 설정합니다. 더 적은 바이트가 요청되면 DMA가 사용되지 않습니다.
External Data Reader가 활성화된 상태에서 코드를 생성한 후에는 TouchGFX Generator에서 다음과 같은 추가 파일이 생성되어 비메모리 매핑 플래시에서 직접 애셋 검색을 지원합니다.
TouchGFX/target/generated/TouchGFXGeneratedDataReader.cpp
TouchGFX/target/generated/TouchGFXGeneratedDataReader.hpp
TouchGFX/target/TouchGFXDataReader.cpp
TouchGFX/target/TouchGFXDataReader.hpp
TouchGFX Generator에서 생성된 AL 아키텍처에서 흔히 그러하듯, TouchGFXGeneratedDataReader
는 읽기 전용이며 TouchGFXDataReader
클래스 내에서 사용자 수정이 이루어져야 합니다. TouchGFXGeneratedDataReader
의 유형은 touchgfx::FlashDataReader
입니다.
DataReader
를 사용하기 위해 TouchGFX HAL을 구성할 수 있도록 다음 파일이 수정됩니다.
TouchGFX/target/generated/TouchGFXConfiguration.cpp
TouchGFX/target/generated/TouchGFXGeneratedHAL.cpp
TouchGFX/target/generated/TouchGFXGeneratedHAL.hpp
Note
벡터 렌더링
TouchGFX Generator에서 벡터 렌더링을 구성하려면 프레임 버퍼 픽셀 형식이 RGB565 또는 RGB888이어야 합니다. 벡터 렌더링 기능과 관련해 개발자에게 두 가지 옵션이 제공됩니다.
- Enabled - 애플리케이션에 대한 벡터 렌더링 지원을 활성화합니다. SVGImage 위젯이 TouchGFX Designer에서 사용되는 경우에 필요합니다.
- Disabled - 애플리케이션에 대한 벡터 렌더링 지원을 비활성화합니다.
Caution
Tip
Further reading
8비트 LTDC CLUT(Color Look Up Table)
LTDC가 L8 형식의 프레임 버퍼를 읽도록 구성되고 TouchGFX가 ABRG2222, ARGB222, BGRA2222 또는 RGBA2222로 렌더링되는 경우, TouchGFX Generator는 TouchGFXHAL::initialize()
동안 LTDC에 로드되는 CLUT를 제공합니다. LTDC 및 CLUT 사용에 대한 자세한 내용은 STM32 MCU 참조 매뉴얼을 참고하시기 바랍니다.