DLPU082C August   2021  – March 2024 DLPC7540

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. Scope
  5. References
  6. Acronyms
  7. System Boot
    1. 4.1 Data In flash
    2. 4.2 Bootloader Application
    3. 4.3 Main Application
    4. 4.4 Commands Supported by Bootloader and Main Applications
    5. 4.5 Debug Terminal
    6. 4.6 HOST_IRQ/SYSTEM_BUSY
    7. 4.7 Heartbeat
    8. 4.8 Low-Level Fault
  8. System Status
  9. Version
  10. Power Modes
  11. Display Modes
  12. Source Detection and Configuration
  13. 10Internal Sources
    1. 10.1 Test Patterns (TPG)
    2. 10.2 Solid Field (SFG) Color
    3. 10.3 Curtain
  14. 11Display Formatting
  15. 12Image Processing
  16. 13Warping
    1. 13.1 Control Point Table
    2. 13.2 Manual Warp Table
    3. 13.3 Table Constraints
    4. 13.4 Example Warp Table
    5. 13.5 Manual Warping Commands
      1. 13.5.1 CMD_SetManualWarpControlPoints [Command ID: 0x35, Destination: 4]
      2. 13.5.2 CMD_GetManualWarpControlPoints [Command ID: 0x35, Destination: 4]
      3. 13.5.3 CMD_WriteManualWarpTable [Opcode: 0x34, Destination: 4]
      4. 13.5.4 CMD_ReadManualWarpTable [Opcode: 0x34, Destination: 4]
      5. 13.5.5 CMD_ConfigureSmoothWarp [Command ID: 0x38, Destination: 4]
      6. 13.5.6 CMD_ApplyManualWarping [Command ID: 0x36, Destination: 4]
    6. 13.6 Optical (Lens) Distortion Correction
  17. 14Introduction to Blending
    1. 14.1  Blend Map Control Points
    2. 14.2  Blend Map Gain Values
    3. 14.3  Blend Map Offset Value
    4. 14.4  Constraints
    5. 14.5  Manual Blending Commands
      1. 14.5.1 CMD_EnableEdgeBlending [Command ID: 0x2F]
      2. 14.5.2 CMD_SetBlendMapControlPoints [Opcode: 0x2E]
      3. 14.5.3 CMD_ GetBlendMapControlPoints [Command ID: 0x2E]
      4. 14.5.4 CMD_SetBlendMapGainValues [Command ID: 0x2B]
      5. 14.5.5 CMD_ GetBlendMapGainValues [Command ID: 0x2B]
      6. 14.5.6 CMD_ SetBlendMapOffsetValues [Command ID: 0x2D]
      7. 14.5.7 CMD_ GetBlendMapOffsetValues [Command ID: 0x2D]
      8. 14.5.8 CMD_ApplyBlendMap [Command ID: 0x2C]
    6. 14.6  Manual Blending Application Commands
      1. 14.6.1 CMD_SetEdgeBlendingSystemParams [Command ID: 0x3D]
      2. 14.6.2 CMD_GetEdgeBlendingSystemParams [Command ID: 0x3D]
      3. 14.6.3 CMD_SetEdgeBlendingConfiguration [Command ID: 0x3E]
      4. 14.6.4 CMD_GetEdgeBlendingConfiguration [Command ID: 0x3E]
    7. 14.7  Cropping of Input Image for Blending Setup
    8. 14.8  Storing Edge Blend Configuration in EEPROM
    9. 14.9  Storing in EEPROM or Secondary Flash
    10. 14.10 Manual Blending GUI in Control Program
  18. 15Illumination Control
  19. 16Peripherals
    1. 16.1 GPIO
    2. 16.2 PWM
  20. 17Interface Protocol
    1. 17.1 Supported Interfaces
    2. 17.2 I2C Target
    3. 17.3 USB
  21. 18Command Protocol
    1. 18.1 Command Packet
    2. 18.2 Response Packet
    3. 18.3 Destination Details
    4. 18.4 Error Handling and Recovery
    5. 18.5 System Busy - I2C scenarios
      1. 18.5.1 GPIO Implementation
      2. 18.5.2 Short Status Response
    6. 18.6 Support for Variable Data Size
  22. 19Auto-Initialization Batch File
  23. 20Command Descriptions
  24. 21System Commands
    1. 21.1  3D
    2. 21.2  Administrative
    3. 21.3  Autolock
    4. 21.4  Bootloader
    5. 21.5  Calibration
    6. 21.6  Blending
    7. 21.7  Debug Internal
    8. 21.8  Debug
    9. 21.9  General Operation
    10. 21.10 Illumination
    11. 21.11 Image Processing
    12. 21.12 Manual WPC
    13. 21.13 Peripherals
    14. 21.14 Vision
    15. 21.15 Warping
  25.   Revision History

CMD_SetManualWarpControlPoints [Command ID: 0x35, Destination: 4]

This command configures the warping engine control points. According to these parameters the warp table is interpreted as a 2D warp map. The manual warp table should be configured using WriteManualWarpTable command after this operation. Warp Table is always assumed have the number of warp points same as the control points set-up using this command.

Note 1: If ‘Control Points Defined By Array’ is set to True, provide all 62 horizontal and 32 vertical points. If set to false, the number of control points is per number of columns and rows specified and the points are distributed evenly (equidistant) from each other.

Note 2: For use cases where it is desired to avoid any interpolation errors (that is, where user-defined control points are used in the controller hardware without any modification), TI recommends to use the exact control point values as shown in the example in the table below. This is because those are the control points that the API uses internally for scaling the warp map that is eventually merged with user-provided manual warp map. Using any other control point values can result in interpolation errors while merging the user-provided map with the API internal scaling map.

Example Command Packet

Table 13-2 Control Points NOT Defined By Array
ByteIndex Value Description
0 0x44 Command packet header (destination 4 , response required)
1 0x35 Command opcode
2 0x0 Control points defined by array = 0
3 0x0004 Number of equidistant horizontal control points
5 0x0003 Number of equidistant vertical control points
Table 13-3 Control Points Defined By Array
ByteIndex Value Description
0 0x44 Command packet header (destination 4, response required)
1 0x35 Command opcode
2 0x1 Control points defined by array = 1
Horizontal control points
3 0x0000 0
5 0x0040 64
7 0x0080 128
9 0x00BF 191
11 0x00FF 255
13 0x013E 318
15 0x017E 382
17 0x01BD 445
19 0x01FC 508
21 0x023C 572
23 0x027B 635
25 0x02BB 699
27 0x02FA 762
29 0x033A 826
31 0x0379 889
33 0x03B9 953
35 0x03F8 1016
37 0x0437 1079
39 0x0477 1143
41 0x04B6 1206
43 0x04F6 1270
45 0x0535 1333
47 0x0575 1397
49 0x05B4 1460
51 0x05F3 1523
53 0x0633 1587
55 0x0672 1650
57 0x06B2 1714
59 0x06F1 1777
61 0x0731 1841
63 0x0771 1905
65 0x0790 1936
67 0x07D0 2000
69 0x0810 2064
71 0x084F 2127
73 0x088F 2191
75 0x08CE 2254
77 0x090E 2318
79 0x094D 2381
81 0x098C 2444
83 0x09CC 2508
85 0x0AOB 2571
87 0x0A4B 2635
89 0x0A8A 2698
91 0x0ACA 2762
93 0x0B09 2825
95 0x0B48 2888
97 0x0B88 2952
99 0x0BC7 3015
101 0x0C07 3079
103 0x0C46 3142
105 0x0C86 3206
107 0x0CC5 3269
109 0x0D05 3333
111 0x0D44 3396
113 0x0D83 3459
115 0x0DC3 3523
117 0x0E02 3586
119 0x0E42 3650
121 0x0E81 3713
123 0x0EC1 3777
125 0x0EFF 3839
127 0x0EC1 3777
129 0xOEFF 3839
Vertical control points
131 0x0000 0
133 0x0046 70
135 0x008B 139
137 0x00D1 209
139 0x0117 279
141 0x015C 348
143 0x01A2 418
145 0x01E8 488
147 0x022D 557
149 0x0273 627
151 Ox02B8 696
153 0x02FE 766
155 0x0344 836
157 0x0389 905
159 0x03CF 975
161 0x0415 1045
163 0x045A 1114
165 0x04A0 1184
167 0x04E6 1254
169 0x052B 1323
171 0x0571 1393
173 0x05B7 1463
175 0x05FC 1532
177 0x0642 1602
179 0x0687 1671
181 0x06CD 1741
183 0x0713 1811
185 0x0758 1880
187 0x079E 1950
189 0x07E4 2020
191 0x0829 2089
193 0x086F 2159