1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
31
38
39
40
41
42
43
44
49
50
51
52
53
54
55
56
57
58
71
72
73
74
75
76
77
78
79
80
81
85
86
87
88
89
90
91
92
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
123
124
128
129
130
131
132
135
136
/* ... */
#include "main.h"
#include "lcd_log.h"
/* ... */
/* ... */
Includes
typedef enum {
TS_ACT_NONE = 0,
TS_ACT_SCROLL_UP,
TS_ACT_SCROLL_DOWN
...}TS_ActionTypeDef;
Private typedef
/* ... */
void Log_demo(void)
{
TS_ActionTypeDef ts_action = TS_ACT_NONE;
uint8_t ts_status = TS_OK;
uint8_t i = 0;
while (CheckForUserInput() == 0);
if (TouchScreen_IsCalibrationDone() == 0)
{
ts_status = Touchscreen_Calibration();
if(ts_status == TS_OK)
{
BSP_LCD_DisplayStringAt(0, BSP_LCD_GetYSize() - 65, (uint8_t *)"Touchscreen calibration success.", CENTER_MODE);
}if (ts_status == TS_OK) { ... }
else
{
BSP_LCD_DisplayStringAt(0, BSP_LCD_GetYSize() - 65, (uint8_t *)"ERROR : touchscreen not yet calibrated.", CENTER_MODE);
ts_status = TS_ERROR;
}else { ... }
}if (TouchScreen_IsCalibrationDone() == 0) { ... }
LCD_LOG_Init();
LCD_LOG_SetHeader((uint8_t *)"Log Example");
LCD_LOG_SetFooter((uint8_t *)"Use touch up/down to scroll");
for (i = 0; i < 10; i++)
{
LCD_UsrLog ("This is Line %d \n", i);
}for (i = 0; i < 10; i++) { ... }
HAL_Delay(1000);
LCD_LOG_ClearTextZone();
for (i = 0; i < 30; i++)
{
LCD_UsrLog ("This is Line %d \n", i);
}for (i = 0; i < 30; i++) { ... }
if(ts_status == TS_OK)
{
ts_status = BSP_TS_ITConfig();
BSP_TEST_APPLI_ASSERT(ts_status != TS_OK);
Touchscreen_DrawBackground_Circle_Buttons(32);
BSP_LCD_SetFont(&Font12);
}if (ts_status == TS_OK) { ... }
while (1)
{
ts_action = (TS_ActionTypeDef) TouchScreen_GetTouchPosition();
switch (ts_action)
{
case TS_ACT_SCROLL_UP:
LCD_LOG_ScrollBack();
break;case TS_ACT_SCROLL_UP:
case TS_ACT_SCROLL_DOWN:
LCD_LOG_ScrollForward();
break;
case TS_ACT_SCROLL_DOWN:
default:
break;default
}switch (ts_action) { ... }
if (CheckForUserInput() > 0)
{
return;
}if (CheckForUserInput() > 0) { ... }
HAL_Delay (10);
}while (1) { ... }
}{ ... }
/* ... */
/* ... */