1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SPI液晶 ILI9341をTouchGFXで使おう2

Last updated at Posted at 2024-01-27

SPI液晶 ILI9341をTouchGFXで使おう1 の続きです。

次に、ソフトウェアの設定を行います。
手順は TouchGFX Button Mode を参考にします。
https://github.com/maudeve-it/ILI9XXX-XPT2046-STM32/blob/main/3A-TOUCHGFX/README.md

プログラムのコピー

最初に、Github から以下のファイルをダウンロードし、IncSRC にコピーします。

image.png

Inc

  • z_displ_ILI9XXX.h
  • z_touch_XPT2046.h

SRC

  • z_displ_ILI9XXX.c

  • z_touch_XPT2046.c
    image.png
    main.hinclude文 を追加します。

    #include "z_displ_ILI9XXX.h"
    #include "z_touch_XPT2046.h"
    

image.png

z_displ_ILI9XXX.hの設定

使用する液晶パネルILI9341を z_displ_ILI9XXX.h にします。
image.png

TouchGFXの設定

次に TouchGFX にて画面を作ります。
ApplicationTemplate.touchgfx.part をクリックすることで TouchGFX が起動します。
TouchGFX がインストールされていない方はインストールします。

image.png
画面を作り終わったら右下の </> をクリックします。
image.png
左下に Generate Code|Done と表示されればプログラム完成です。
image.png

STM32TouchController.cppの修正

STM32CudeIDE に戻り、プログラムを完成させます。
image.png
STM32TouchController.cpp に以下2文を追加します。

#include "main.h"
return ((bool) Touch_TouchGFXSampleTouch(&x, &y));

main.cの設定

main.cUSER CODE BEGIN 2、USER CODE BEGIN WHILE に以下を追加します。

/* USER CODE BEGIN 2 */			// "USER CODE BEGIN 2" is after all system initializations and before entering the main loop. Good place to initialize display
Displ_Init(Displ_Orientat_0);		// initialize the display and set the initial display orientation (here is orientaton: 0°) - THIS FUNCTION MUST PRECEED ANY OTHER DISPLAY FUNCTION CALL.  
touchgfxSignalVSync();		// asks TouchGFX to start initial display drawing
Displ_BackLight('I');  			// initialize backlight and turn it on at init level
/* USER CODE END 2 */
/* USER CODE BEGIN WHILE */
while (1) 			// into the main loop you can add the test functions
{
  if (Touch_GotATouch(2))
  	touchgfxSignalVSync();		// asks TouchGFX to handle touch and redraw screen
  if ("other events needing a display update")
  	touchgfxSignalVSync();		// asks TouchGFX to get events and redraw screen
/* USER CODE END WHILE */

image.png

問題なくコンパイルされると画面が表示されると思います。

SPI液晶 ILI9341をTouchGFXで使おう3~キャリブレーションをする~

1
0
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?