DLPU110B April   2021  – August 2022 DLPC6540

 

  1.   Programmer's Guide
  2.   Trademarks
  3. Scope
  4. References
  5. Acronyms
  6. 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
  7. System Status
  8. Version
  9. Power Modes
  10. Display Modes
  11. Source Detection and Configuration
  12. 10Internal sources
    1. 10.1 Test Patterns (TPG)
    2. 10.2 Solid Field (SFG) Color
    3. 10.3 Curtain
  13. 11Display Formatting
  14. 12Image Processing
  15. 13Illumination Control
  16. 14Peripherals
    1. 14.1 GPIO
  17. 15Interface Protocol
    1. 15.1 Supported Interfaces
    2. 15.2 I2C Target
    3. 15.3 USB
  18. 16Command Protocol
    1. 16.1 Command Packet
    2. 16.2 Response Packet
    3. 16.3 Destination Details
    4. 16.4 Error Handling and Recovery
    5. 16.5 System Busy - I2C scenarios
      1. 16.5.1 GPIO implementation
      2. 16.5.2 Short Status response
    6. 16.6 Support for Variable Data Size
  19. 17Auto-Initilization Batch File
  20. 18Command Descriptions
  21. 19 System Commands
    1. 19.1  3D
    2. 19.2  Administrative
    3. 19.3  Autolock
    4. 19.4  Blending
    5. 19.5  Bootloader
    6. 19.6  Calibration
    7. 19.7  Debug Internal
    8. 19.8  Debug
    9. 19.9  General Operation
    10. 19.10 Illumination
    11. 19.11 Image Processing
    12. 19.12 Peripherals
    13. 19.13 Warping
    14. 19.14 Manual WPC
  22. 20Revision History

Bootloader Application

The bootloader is the first application that runs from the flash memory when the system is turned on or reset. The bootloader application copies itself from flash to internal RAM for execution. This application performs flash update (erase, program). It also identifies a valid main application in the flash and only then begins to run the main application. This application reads the GPIO_64 (HOLD_BOOTZ) signal at the startup and if the signal reads 0, the application remains in the boot application mode. This useful option forces the firmware to update in case the main application on the flash is corrupted. Use the DLP Control Program to update the flash firmware.

Table 4-1 lists all commands supported by the booloader application for flash update. Figure 4-1 depicts the example usage of bootloader commands for updating the flash contents.

Table 4-1 Supported Flash Update Commands
CommandDescription
Boot Hold Reason

Reason for controller to be in Boot Application mode.

Get Flash ID

Returns the Flash ID

Get Flash Sector Info

Retrieve flash number of sectors and sector size information

Flash Lock/Unlock

User must send this command to unlock the flash for erase/program access. This is to prevent accidental erase/programming of flash data.

Erase Sector

Command to erase sector – user to provide sector address as input

Initialize Flash Read/Write

Command to specify start address on the flash along with # of bytes to be written or readback

Get Checksum

Command to compute checksum and return it. Command takes flash address and number of bytes to compute the checksum.

GUID-C5967DDE-CABB-474A-8B30-167C22F37772-low.gifFigure 4-1 Flash Update Flow Diagram