Mipi.h
Go to the documentation of this file.
1 /****
2  * Mipi.h
3  *
4  * This file is part of the Sming-Graphics Library
5  *
6  * This library is free software: you can redistribute it and/or modify it under the terms of the
7  * GNU General Public License as published by the Free Software Foundation, version 3 or later.
8  *
9  * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
10  * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11  * See the GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License along with this library.
14  * If not, see <https://www.gnu.org/licenses/>.
15  *
16  ****/
17 
18 #pragma once
19 
20 namespace Graphics
21 {
22 namespace Mipi
23 {
24 /* Defines for Mobile Industry Processor Interface (MIPI) */
25 
26 /* MIPI Display Serial Interface (DSI) commands. See: https://en.wikipedia.org/wiki/Display_Serial_Interface */
32 
35 
40 
44 
48 
51 
52  DSI_DCS_READ = 0x06,
54 
56 
61 
64 
68 
72 
77 };
78 
79 /* MIPI DSI Peripheral-to-Processor transaction types */
89 };
90 
91 /* MIPI Display Command Set (DCS).
92  *
93  * The Display Command Set (DCS) is a set of common commands for controlling the display device,
94  * and their format is specified by the DSI standard. It defines registers that can be addressed and what their operation is.
95  * It includes basic commands such as sleep, enable, and invert display.
96  *
97  * See: https://en.wikipedia.org/wiki/Display_Serial_Interface
98  * See: https://www.mipi.org/specifications/display-command-set
99  */
101  DCS_NOP = 0x00,
132  DCS_SET_PARTIAL_ROWS = 0x30, /* MIPI DCS 1.02 - DCS_SET_PARTIAL_AREA before that */
149  DCS_SET_DISPLAY_BRIGHTNESS = 0x51, /* MIPI DCS 1.3 */
150  DCS_GET_DISPLAY_BRIGHTNESS = 0x52, /* MIPI DCS 1.3 */
151  DCS_WRITE_CONTROL_DISPLAY = 0x53, /* MIPI DCS 1.3 */
152  DCS_GET_CONTROL_DISPLAY = 0x54, /* MIPI DCS 1.3 */
153  DCS_WRITE_POWER_SAVE = 0x55, /* MIPI DCS 1.3 */
154  DCS_GET_POWER_SAVE = 0x56, /* MIPI DCS 1.3 */
155  DCS_SET_CABC_MIN_BRIGHTNESS = 0x5E, /* MIPI DCS 1.3 */
156  DCS_GET_CABC_MIN_BRIGHTNESS = 0x5F, /* MIPI DCS 1.3 */
161 };
162 
163 /* MIPI DCS Address Mode bits (also known as MADCTL) */
168  DCS_ADDRESS_MODE_REFRESH_BT = 0x10, // Does not affect image
171  DCS_ADDRESS_MODE_LATCH_RL = 0x04, // Does not affect image
174 };
175 
176 /* MIPI DCS pixel formats */
184 };
185 
186 } // namespace Mipi
187 } // namespace Graphics
SerialTransactionType
Definition: Mipi.h:80
@ DSI_RX_DCS_SHORT_READ_RESPONSE_2BYTE
Definition: Mipi.h:88
@ DSI_RX_ACKNOWLEDGE_AND_ERROR_REPORT
Definition: Mipi.h:81
@ DSI_RX_DCS_LONG_READ_RESPONSE
Definition: Mipi.h:86
@ DSI_RX_GENERIC_LONG_READ_RESPONSE
Definition: Mipi.h:85
@ DSI_RX_GENERIC_SHORT_READ_RESPONSE_1BYTE
Definition: Mipi.h:83
@ DSI_RX_DCS_SHORT_READ_RESPONSE_1BYTE
Definition: Mipi.h:87
@ DSI_RX_END_OF_TRANSMISSION
Definition: Mipi.h:82
@ DSI_RX_GENERIC_SHORT_READ_RESPONSE_2BYTE
Definition: Mipi.h:84
DcsAddressMode
Definition: Mipi.h:164
@ DCS_ADDRESS_MODE_MIRROR_X
Definition: Mipi.h:166
@ DCS_ADDRESS_MODE_RGB
Definition: Mipi.h:170
@ DCS_ADDRESS_MODE_FLIP_Y
Definition: Mipi.h:173
@ DCS_ADDRESS_MODE_FLIP_X
Definition: Mipi.h:172
@ DCS_ADDRESS_MODE_MIRROR_Y
Definition: Mipi.h:165
@ DCS_ADDRESS_MODE_LATCH_RL
Definition: Mipi.h:171
@ DCS_ADDRESS_MODE_SWAP_XY
Definition: Mipi.h:167
@ DCS_ADDRESS_MODE_BGR
Definition: Mipi.h:169
@ DCS_ADDRESS_MODE_REFRESH_BT
Definition: Mipi.h:168
DisplayCommandSet
Definition: Mipi.h:100
@ DCS_SET_PARTIAL_ROWS
Definition: Mipi.h:132
@ DCS_READ_DDB_START
Definition: Mipi.h:157
@ DCS_GET_RED_CHANNEL
Definition: Mipi.h:106
@ DCS_GET_3D_CONTROL
Definition: Mipi.h:145
@ DCS_SET_TEAR_ON
Definition: Mipi.h:136
@ DCS_SET_TEAR_OFF
Definition: Mipi.h:135
@ DCS_GET_GREEN_CHANNEL
Definition: Mipi.h:107
@ DCS_READ_PPS_CONTINUE
Definition: Mipi.h:160
@ DCS_GET_POWER_SAVE
Definition: Mipi.h:154
@ DCS_SET_CABC_MIN_BRIGHTNESS
Definition: Mipi.h:155
@ DCS_GET_BLUE_CHANNEL
Definition: Mipi.h:108
@ DCS_GET_PIXEL_FORMAT
Definition: Mipi.h:112
@ DCS_GET_CABC_MIN_BRIGHTNESS
Definition: Mipi.h:156
@ DCS_READ_MEMORY_CONTINUE
Definition: Mipi.h:144
@ DCS_SET_COLUMN_ADDRESS
Definition: Mipi.h:127
@ DCS_WRITE_MEMORY_CONTINUE
Definition: Mipi.h:142
@ DCS_GET_DISPLAY_MODE
Definition: Mipi.h:113
@ DCS_GET_POWER_MODE
Definition: Mipi.h:110
@ DCS_ENTER_IDLE_MODE
Definition: Mipi.h:140
@ DCS_WRITE_CONTROL_DISPLAY
Definition: Mipi.h:151
@ DCS_SET_VSYNC_TIMING
Definition: Mipi.h:146
@ DCS_ENTER_PARTIAL_MODE
Definition: Mipi.h:118
@ DCS_READ_MEMORY_START
Definition: Mipi.h:131
@ DCS_READ_DDB_CONTINUE
Definition: Mipi.h:159
@ DCS_SET_PAGE_ADDRESS
Definition: Mipi.h:128
@ DCS_ENTER_SLEEP_MODE
Definition: Mipi.h:116
@ DCS_SET_DISPLAY_ON
Definition: Mipi.h:126
@ DCS_EXIT_SLEEP_MODE
Definition: Mipi.h:117
@ DCS_SET_DISPLAY_BRIGHTNESS
Definition: Mipi.h:149
@ DCS_SET_3D_CONTROL
Definition: Mipi.h:143
@ DCS_WRITE_MEMORY_START
Definition: Mipi.h:129
@ DCS_GET_ADDRESS_MODE
Definition: Mipi.h:111
@ DCS_GET_SCANLINE
Definition: Mipi.h:148
@ DCS_GET_DISPLAY_STATUS
Definition: Mipi.h:109
@ DCS_GET_DISPLAY_ID
Definition: Mipi.h:104
@ DCS_EXIT_INVERT_MODE
Definition: Mipi.h:122
@ DCS_GET_DIAGNOSTIC_RESULT
Definition: Mipi.h:115
@ DCS_GET_IMAGE_CHECKSUM_CT
Definition: Mipi.h:121
@ DCS_WRITE_POWER_SAVE
Definition: Mipi.h:153
@ DCS_READ_PPS_START
Definition: Mipi.h:158
@ DCS_GET_COMPRESSION_MODE
Definition: Mipi.h:103
@ DCS_EXIT_IDLE_MODE
Definition: Mipi.h:139
@ DCS_GET_IMAGE_CHECKSUM_RGB
Definition: Mipi.h:120
@ DCS_GET_CONTROL_DISPLAY
Definition: Mipi.h:152
@ DCS_SET_ADDRESS_MODE
Definition: Mipi.h:137
@ DCS_SET_GAMMA_CURVE
Definition: Mipi.h:124
@ DCS_ENTER_NORMAL_MODE
Definition: Mipi.h:119
@ DCS_SET_DISPLAY_OFF
Definition: Mipi.h:125
@ DCS_SET_SCROLL_AREA
Definition: Mipi.h:134
@ DCS_WRITE_LUT
Definition: Mipi.h:130
@ DCS_GET_ERROR_COUNT_ON_DSI
Definition: Mipi.h:105
@ DCS_SET_PIXEL_FORMAT
Definition: Mipi.h:141
@ DCS_ENTER_INVERT_MODE
Definition: Mipi.h:123
@ DCS_NOP
Definition: Mipi.h:101
@ DCS_SET_PARTIAL_COLUMNS
Definition: Mipi.h:133
@ DCS_GET_SIGNAL_MODE
Definition: Mipi.h:114
@ DCS_SOFT_RESET
Definition: Mipi.h:102
@ DCS_GET_DISPLAY_BRIGHTNESS
Definition: Mipi.h:150
@ DCS_SET_SCROLL_START
Definition: Mipi.h:138
@ DCS_SET_TEAR_SCANLINE
Definition: Mipi.h:147
SerialInterfaceCommand
Definition: Mipi.h:27
@ DSI_PACKED_PIXEL_STREAM_36
Definition: Mipi.h:70
@ DSI_PICTURE_PARAMETER_SET
Definition: Mipi.h:62
@ DSI_PIXEL_STREAM_3BYTE_18
Definition: Mipi.h:75
@ DSI_GENERIC_SHORT_WRITE_1_PARAM
Definition: Mipi.h:42
@ DSI_LOOSELY_PACKED_PIXEL_STREAM_YCBCR20
Definition: Mipi.h:65
@ DSI_DCS_SHORT_WRITE_PARAM
Definition: Mipi.h:50
@ DSI_PACKED_PIXEL_STREAM_YCBCR16
Definition: Mipi.h:67
@ DSI_H_SYNC_END
Definition: Mipi.h:31
@ DSI_EXECUTE_QUEUE
Definition: Mipi.h:53
@ DSI_DCS_SHORT_WRITE
Definition: Mipi.h:49
@ DSI_GENERIC_SHORT_WRITE_2_PARAM
Definition: Mipi.h:43
@ DSI_V_SYNC_END
Definition: Mipi.h:29
@ DSI_COMPRESSION_MODE
Definition: Mipi.h:33
@ DSI_GENERIC_READ_REQUEST_2_PARAM
Definition: Mipi.h:47
@ DSI_V_SYNC_START
Definition: Mipi.h:28
@ DSI_PACKED_PIXEL_STREAM_18
Definition: Mipi.h:74
@ DSI_BLANKING_PACKET
Definition: Mipi.h:58
@ DSI_H_SYNC_START
Definition: Mipi.h:30
@ DSI_COMPRESSED_PIXEL_STREAM
Definition: Mipi.h:63
@ DSI_PACKED_PIXEL_STREAM_16
Definition: Mipi.h:73
@ DSI_GENERIC_SHORT_WRITE_0_PARAM
Definition: Mipi.h:41
@ DSI_PACKED_PIXEL_STREAM_30
Definition: Mipi.h:69
@ DSI_PACKED_PIXEL_STREAM_YCBCR24
Definition: Mipi.h:66
@ DSI_DCS_READ
Definition: Mipi.h:52
@ DSI_GENERIC_LONG_WRITE
Definition: Mipi.h:59
@ DSI_PACKED_PIXEL_STREAM_YCBCR12
Definition: Mipi.h:71
@ DSI_GENERIC_READ_REQUEST_1_PARAM
Definition: Mipi.h:46
@ DSI_SET_MAXIMUM_RETURN_PACKET_SIZE
Definition: Mipi.h:55
@ DSI_PACKED_PIXEL_STREAM_24
Definition: Mipi.h:76
@ DSI_NULL_PACKET
Definition: Mipi.h:57
@ DSI_COLOR_MODE_OFF
Definition: Mipi.h:36
@ DSI_END_OF_TRANSMISSION
Definition: Mipi.h:34
@ DSI_COLOR_MODE_ON
Definition: Mipi.h:37
@ DSI_SHUTDOWN_PERIPHERAL
Definition: Mipi.h:38
@ DSI_DCS_LONG_WRITE
Definition: Mipi.h:60
@ DSI_GENERIC_READ_REQUEST_0_PARAM
Definition: Mipi.h:45
@ DSI_TURN_ON_PERIPHERAL
Definition: Mipi.h:39
DcsPixelFormat
Definition: Mipi.h:177
@ DCS_PIXEL_FMT_24BIT
Definition: Mipi.h:178
@ DCS_PIXEL_FMT_18BIT
Definition: Mipi.h:179
@ DCS_PIXEL_FMT_12BIT
Definition: Mipi.h:181
@ DCS_PIXEL_FMT_16BIT
Definition: Mipi.h:180
@ DCS_PIXEL_FMT_8BIT
Definition: Mipi.h:182
@ DCS_PIXEL_FMT_3BIT
Definition: Mipi.h:183
Definition: Virtual.h:31