Example using DISCO L4R9I BSP driver files from ST Cube delivery
Dependencies: BSP_DISCO_L4R9I
main.cpp@0:d369fd9b2db2, 2019-11-26 (annotated)
- Committer:
- Jerome Coutant
- Date:
- Tue Nov 26 14:53:03 2019 +0100
- Revision:
- 0:d369fd9b2db2
LCD demo creation for DISCO_L4R9I
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Jerome Coutant
0:d369fd9b2db2
|
1
|
#include "mbed.h"
|
|
Jerome Coutant
0:d369fd9b2db2
|
2
|
#include "stm32l4r9i_discovery_lcd.h"
|
|
Jerome Coutant
0:d369fd9b2db2
|
3
|
#include "stlogo.h"
|
|
Jerome Coutant
0:d369fd9b2db2
|
4
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
5
|
int main()
|
|
Jerome Coutant
0:d369fd9b2db2
|
6
|
{
|
|
Jerome Coutant
0:d369fd9b2db2
|
7
|
char desc[50];
|
|
Jerome Coutant
0:d369fd9b2db2
|
8
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
9
|
printf("\nSTART DISCO-L4R9I LCD EXAMPLE\n");
|
|
Jerome Coutant
0:d369fd9b2db2
|
10
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
11
|
/* Avoid deepsleep */
|
|
Jerome Coutant
0:d369fd9b2db2
|
12
|
sleep_manager_lock_deep_sleep();
|
|
Jerome Coutant
0:d369fd9b2db2
|
13
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
14
|
if (BSP_LCD_Init() != LCD_OK) {
|
|
Jerome Coutant
0:d369fd9b2db2
|
15
|
error("BSP_LCD_Init");
|
|
Jerome Coutant
0:d369fd9b2db2
|
16
|
}
|
|
Jerome Coutant
0:d369fd9b2db2
|
17
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
18
|
while (BSP_LCD_IsFrameBufferAvailable() != LCD_OK);
|
|
Jerome Coutant
0:d369fd9b2db2
|
19
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
20
|
/* Set LCD Foreground Layer */
|
|
Jerome Coutant
0:d369fd9b2db2
|
21
|
BSP_LCD_SelectLayer(LTDC_DEFAULT_ACTIVE_LAYER);
|
|
Jerome Coutant
0:d369fd9b2db2
|
22
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
23
|
BSP_LCD_SetFont(&LCD_DEFAULT_FONT);
|
|
Jerome Coutant
0:d369fd9b2db2
|
24
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
25
|
/* Clear the LCD */
|
|
Jerome Coutant
0:d369fd9b2db2
|
26
|
BSP_LCD_SetBackColor(LCD_COLOR_WHITE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
27
|
BSP_LCD_Clear(LCD_COLOR_WHITE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
28
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
29
|
/* Set the LCD Text Color */
|
|
Jerome Coutant
0:d369fd9b2db2
|
30
|
BSP_LCD_SetTextColor(LCD_COLOR_DARKBLUE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
31
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
32
|
/* Display LCD messages */
|
|
Jerome Coutant
0:d369fd9b2db2
|
33
|
BSP_LCD_DisplayStringAt(0, 50, (uint8_t *)"DISCO_L4R9I BSP", CENTER_MODE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
34
|
BSP_LCD_DisplayStringAt(0, 75, (uint8_t *)"Drivers examples", CENTER_MODE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
35
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
36
|
/* Draw Bitmap */
|
|
Jerome Coutant
0:d369fd9b2db2
|
37
|
BSP_LCD_DrawBitmap((BSP_LCD_GetXSize() - 80) / 2, 105, (uint8_t *)stlogo);
|
|
Jerome Coutant
0:d369fd9b2db2
|
38
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
39
|
BSP_LCD_SetFont(&Font16);
|
|
Jerome Coutant
0:d369fd9b2db2
|
40
|
BSP_LCD_DisplayStringAt(0, BSP_LCD_GetYSize() - 70, (uint8_t *)"Thank you", CENTER_MODE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
41
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
42
|
BSP_LCD_SetFont(&Font16);
|
|
Jerome Coutant
0:d369fd9b2db2
|
43
|
BSP_LCD_SetTextColor(LCD_COLOR_BLUE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
44
|
BSP_LCD_FillRect(0, BSP_LCD_GetYSize() / 2, BSP_LCD_GetXSize(), 80);
|
|
Jerome Coutant
0:d369fd9b2db2
|
45
|
BSP_LCD_SetTextColor(LCD_COLOR_WHITE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
46
|
BSP_LCD_SetBackColor(LCD_COLOR_BLUE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
47
|
BSP_LCD_DisplayStringAt(0, BSP_LCD_GetYSize() / 2 + 10, (uint8_t *)"Check API in", CENTER_MODE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
48
|
BSP_LCD_DisplayStringAt(0, BSP_LCD_GetYSize() / 2 + 25, (uint8_t *)"BSP_DISCO_L4R9I/Drivers/BSP/", CENTER_MODE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
49
|
BSP_LCD_DisplayStringAt(0, BSP_LCD_GetYSize() / 2 + 40, (uint8_t *)"STM32L4R9I-Discovery/", CENTER_MODE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
50
|
BSP_LCD_DisplayStringAt(0, BSP_LCD_GetYSize() / 2 + 55, (uint8_t *)"stm32l4r9i_discovery_lcd.h", CENTER_MODE);
|
|
Jerome Coutant
0:d369fd9b2db2
|
51
|
|
|
Jerome Coutant
0:d369fd9b2db2
|
52
|
/* Refresh display */
|
|
Jerome Coutant
0:d369fd9b2db2
|
53
|
BSP_LCD_Refresh();
|
|
Jerome Coutant
0:d369fd9b2db2
|
54
|
}
|
|