- [touchGFX]응용 프로그램 데이터 화면 출력 목차
1. touchGFX 설정
Text를 출력하기 위해서는 textArea를 선택한 후 위 화면에서 출력할 수 있도록 만들어 주어야 한다
TEXT 영역에서 WILDCARD1을 클릭하면 Initial Value를 넣는 부분과 Buffer Size를 정하라는 부분이 나온다
나는 최대 3자임으로 Buffer size를 4로 하였다
이 부분은 VIEW에서 호출된다
2. 화면을 출력하기 위해 작성해야 하는 부분
Model.hpp
class Model
{
public:
// Function that allow your Presenters to read current each data.
//* 함수 선언한 부분이다
uint16_t getCurrentPM25() const { return currentPM25; }
ModelListener.hpp에
class ModelListener
{
public:
ModelListener() : model(0) {}
virtual ~ModelListener() {}
void bind(Model* m)
{
model = m;
}
// Call this function to notify that temperature has changed.
// Per default, use an empty implementation so that only those
// Presenters interested in this specific event need to
// override this function.
//* 메시지를 수신하여 데이터를 저장 및 처리하기 위한 가상 함수 선언
virtual void notifyPM25Changed(uint16_t currentPM25){}
Model.cpp에
void Model::tick()
{
.....
if (modelListener != 0)
{
modelListener->notifyPM25Changed(currentPM25);
}
.....
}
mainScreenPresenter.hpp에
virtual void notifyPM25Changed(uint16_t currentPM25); 로 실행할 함수를 선언해 준다
mainScreenPresenter.cpp에
void mainScreenPresenter::notifyPM25Changed(uint16_t currentPM25)
{
view.updatePM25InLCD(currentPM25);
}
mainScreenView.hpp에 화면에 출력할 함수를 선언한다
virtual void updatePM25InLCD(uint16_t currentPM25);
mainScreenView.cpp에 화면에 출력할 함수를 만들어 준다
void mainScreenView::updatePM25InLCD(uint16_t currentPM25)
{
Unicode::snprintf(textTimeRxBuffer1, TEXTTIMERXBUFFER1_SIZE, "%02d", uint16_t currentPM25);
textTimeRx.invalidate();
}
2. touchGFX에서 선언된 변수들은 어디에 있을까 ?
작성하고 있는 디렉토리로 부터 "\TouchGFX\generated\gui_generated\include\gui_generated"의
디렉토리 아래에 각 화면별로 선언되어 있다
예) mainScreen같은 경우에는
F:\TouchGFXProjects\aaa-RC-\TouchGFX\generated\gui_generated\include\gui_generated
\mainscreen_screen\mainScreenViewBase.hpp
'STM32' 카테고리의 다른 글
[touGFX]버튼(Button) 색 변경 (0) | 2022.01.06 |
---|---|
[touchGFX]하나의 스크린(Screen)에 많은 버튼(Botton)의 Interaction 설정 (0) | 2022.01.06 |
[touchGFX]프로젝트 디렉토리를 복사하여 사용하는 경우 수정할 내용 (0) | 2022.01.05 |
[STM32] I2C 설정, 사용법 그리고 파형 (0) | 2022.01.04 |
[STM32]타이머 (General Timer TIM7) 사용하기 (2) | 2021.12.31 |