The MAX3955 and MAX3956 devices must be initialized properly to guarantee correct operation. This application note describes the recommended initialization procedure for these devices.
The MAX3955 and MAX3956 devices (MAX395X) must be initialized properly to guarantee correct operation. The following is a flow chart and description detailing the recommended initialization sequence for a MAX395X device. This sequence should be performed following a power-on reset (POR) and also to detect and recover from brownout conditions. Following these recommended steps will ensure that the MAX395X operates as expected following a POR or brownout.
- Read the TOPSTAT register. The MAX395X is no longer in POR when this register reads back 010X XXXX.
- The Initialization Required Flag is a firmware flag stating that the MAX395X needs to be initialized. This flag should be set following POR of the microcontroller and whenever the MAX395X is in a POR or brownout state.
- Only continue this initialization routine if the MAX395X needs to be initialized because of POR or brownout.
- Read the TXSTAT1 Register to verify that the VCCT, VCCTO, VOUT, TOUTA, and TOUTC voltages are all in a valid operating range. These voltages are valid when TXSTAT1 = 0XXX 000X.
- The factory-programmed calibration constants MUST be loaded to ensure proper operation of the MAX395X. This is done by writing the data shown in the flow chart.
- Optional Step: Wait for the VCCX, VCCT, and VCCTO voltages read from the MAX395X to be greater than 2.8V. This will help ensure that a possible drop in supply voltage will not produce a brownout condition when the MAX395X is initialized and laser current ramps. If these voltages will be monitored, a wait of at least 40ms must be added while waiting for the first conversions of the DDM parameters to complete.
- Send the Fault Clear command, which is done by writing 68h to the MODECTRL register at address 00h. This will deassert the FAULT pin if a temporary fault occurred during the power-supply ramp.
- Initialize all of the MAX395X registers to their correct application-specific values.
- Clear the Initialization Required Flag since the MAX395X has now been properly initialized.
Note 1: The MAX395X Status Register (including TOPSTAT and TXSTAT1) contain sticky bits, meaning the bits will remain set until they are read. Once read, the bits are reset to zero if the source of the flag has been removed. Because the status bits are sticky bits, multiple register reads may be required before the status bits read back clear.
Note 2: The flow shown is for a routine that will be called once every time the microcontroller’s main processing loop is executed. This allows checking for completion of POR and also for any subsequent brownout condition with the same routine. This flow is designed to not hold the microprocessor while waiting for the flags to clear; instead the microprocessor will check again the next time through the main loop. Similar flows can be developed that will poll the MAX395X flags continuously until they are clear.