TouchGFX___FrameBuffer ( Animation Storage ) 설정 방법
1. 사용버전
>. STM32CubeIDE Ver1.5.0
>. TouchGFX Ver4.16.0
2. LTDC - Layer Setting
3. TouchGFX - Framebuffer
Start Address : LTDC 에서 설정한 Frame Buffer Start Address
Start Address 2 : 480 * 272 * 2 ( RGB565 16Bit ) = 0x3FC00 ( RGB888 format 을 사용 하면 0x5FA00 )
3. 애니메이션 프레임버퍼 설정 ( animationStorage )
위와 같이 설정해도 동작은 한다. 하지만 애니메이션 효과를 주기 위해서는 애니메이션 프레임버퍼를 할당해줘야 한다. 하지만 CubeIDE 에서는 아무리 찾아 봐도 설정? UI 가 없다??( TouchGFX UI 에 있을거 같기도 하다? 확인해보지 않음.. )
위 그림에서 TouchGFXGeneratedHAL.cpp 선택 하여 파일 열기
initialze() 함수 내용 중 setFrameBufferStartsetFrameBufferStartAddressessetFrameBufferStartAddresses(...) 함수 설정 값을 보면 위에서 설정 한 frmaeBuffer ( 0xC0000000 ), doubleBuffer ( 0xC003FC00 ) 값이 설정되어있는것을 볼수 있다. 여기서 마지막 파라메터는 애니메이션 프레임버퍼 이다.
아래 그림 처럼 설정 후 사용 하면 애니메이션이 정상적으로 동작한다.
0xC0074800 = doubleBuffer + 480 * 272 * 2 ( RGB565 16Bit )
* 아래는 settFrameBufferStartsetFrameBufferStartAddressessetFrameBufferStartAddresses(...) 함수 참고