Select one of the symbols to view example projects that use it.
 
Outline
#define STM32F4HAL_DSI_HPP
#include <touchgfx/hal/HAL.hpp>
#include <platform/driver/touch/TouchController.hpp>
STM32F4HAL_DSI
Files
loading...
CodeScopeSTM32 Libraries and SamplesTouchGFXGui/target/STM32F4HAL_DSI.hpp
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
/** ****************************************************************************** * This file is part of the TouchGFX 4.10.0 distribution. * * @attention * * Copyright (c) 2018 STMicroelectronics. * All rights reserved. * * This software is licensed under terms that can be found in the LICENSE file * in the root directory of this software component. * If no LICENSE file comes with this software, it is provided AS-IS. * ****************************************************************************** *//* ... */ #ifndef STM32F4HAL_DSI_HPP #define STM32F4HAL_DSI_HPP #include <touchgfx/hal/HAL.hpp> #include <platform/driver/touch/TouchController.hpp> /** * @class STM32F4HAL_DSI STM32F4HAL_DSI.hpp platform/hal/ST/mcu/stm32f4x9/STM32F4HAL_DSI.hpp * * @brief HAL implementation for STM32F4, for DSI displays * * HAL implementation for STM32F4. Based on the ST CubeF4 API. This version uses the DSI display peripheral. * This HAL implementation uses DSI in adapted command mode, and supports both single- and double buffering. * Please refer to the implementation cpp file for details on this implementation. * * @sa HAL *//* ... */ class STM32F4HAL_DSI : public touchgfx::HAL { public: /** * @fn STM32F4HAL_DSI::STM32F4HAL_DSI(touchgfx::DMA_Interface& dma, touchgfx::LCD& display, touchgfx::TouchController& tc, uint16_t width, uint16_t height) : touchgfx::HAL(dma, display, tc, width, height) * * @brief Constructor. * * Constructor. Initializes members. * * @param [in,out] dma Reference to DMA interface. * @param [in,out] display Reference to LCD interface. * @param [in,out] tc Reference to Touch Controller driver. * @param width Width of the display. * @param height Height of the display. *//* ... */ STM32F4HAL_DSI(touchgfx::DMA_Interface& dma, touchgfx::LCD& display, touchgfx::TouchController& tc, uint16_t width, uint16_t height) : touchgfx::HAL(dma, display, tc, width, height) { }{ ... } /** * @fn virtual void STM32F4HAL_DSI::disableInterrupts(); * * @brief Disables the DMA and LCD interrupts. * * Disables the DMA and LCD interrupts. *//* ... */ virtual void disableInterrupts(); /** * @fn virtual void STM32F4HAL_DSI::enableInterrupts(); * * @brief Enables the DMA and LCD interrupts. * * Enables the DMA and LCD interrupts. *//* ... */ virtual void enableInterrupts(); /** * @fn virtual void STM32F4HAL_DSI::configureInterrupts(); * * @brief Sets the DMA and LCD interrupt priorities. * * Sets the DMA and LCD interrupt priorities. *//* ... */ virtual void configureInterrupts(); /** * @fn virtual void STM32F4HAL_DSI::enableLCDControllerInterrupt(); * * @brief Configure the LCD controller to fire interrupts at VSYNC. * * Configure the LCD controller to fire interrupts at VSYNC. Called automatically * once TouchGFX initialization has completed. *//* ... */ virtual void enableLCDControllerInterrupt(); public: protected: /** * @fn virtual uint16_t* STM32F4HAL_DSI::getTFTFrameBuffer() const; * * @brief Gets the frame buffer address used by the TFT controller. * * Gets the frame buffer address used by the TFT controller. * * @return The address of the frame buffer currently being displayed on the TFT. *//* ... */ virtual uint16_t* getTFTFrameBuffer() const; /** * @fn virtual void STM32F4HAL_DSI::setTFTFrameBuffer(uint16_t* adr); * * @brief Sets the frame buffer address used by the TFT controller. * * Sets the frame buffer address used by the TFT controller. * * @param [in,out] adr New frame buffer address. *//* ... */ virtual void setTFTFrameBuffer(uint16_t* adr); /** * @fn virtual void setFrameBufferStartAddress(void* adr, uint16_t depth = 16, bool useDoubleBuffering = true, bool useAnimationStorage = true); * * This function is overridden in order to detect whether it is used in single- or double buffering mode. * @param [in] adr Starting address to use for frame buffers. * @param depth Depth of each pixel in bits, default is 16. * @param useDoubleBuffering If true, reserve memory for an extra frame buffer. * @param useAnimationStorage If true, reserve memory for animation storage. * @note Will also call the base implementation. *//* ... */ virtual void setFrameBufferStartAddress(void* adr, uint16_t depth = 16, bool useDoubleBuffering = true, bool useAnimationStorage = true); /** * This function is overridden to detect whether there are any frame buffer changes in this frame. * @return The value of the base implementation. *//* ... */ virtual bool beginFrame(); /** * This function is overridden to detect whether there are any frame buffer changes in this frame. * @note Will also call the base implementation. *//* ... */ virtual void endFrame();protected: ...}; /* ... */ #endif // STM32F4HAL_DSI_HPP