Tool/software:
Hi, TI expert
There is an inquiry from a customer regarding an abnormality in operation during review of LM36011.
- Application: Oral scanner
- The LED at the output terminal is an OSRAM Compact Light Source LED (KW CSLNM1.TG) applied to DLP.
- R139 in the circuit is applied as 0 ohm.
[Abnormal operation details]
1) Flash Mode does not work: According to the customer's F/W manager, the light does not turn on when operating in Flash mode.
The following is the FW init code.
This is the Flash mode setting.
-------------------------------------------------------------------------------------------
int8_t lm36011_initialize(lm36011_Regs_t* p_lm36011_Regs)
{
int8_t ret = 0;
// get current settings information
ret |= lm36011_get_Reg(LM36011_ENABLE, &p_lm36011_Regs->Enable.byte);
ret |= lm36011_get_Reg(LM36011_CONFIGURATION, &p_lm36011_Regs->Configuration.byte);
ret |= lm36011_get_Reg(LM36011_LED_FLASH_BRIGHTNESS, &p_lm36011_Regs->Led_Flash_Brighness.byte);
ret |= lm36011_get_Reg(LM36011_LED_TORCH_BRIGHTNESS, &p_lm36011_Regs->Led_Torch_Brighness.byte);
ret |= lm36011_get_Reg(LM36011_FLAG, &p_lm36011_Regs->Flag.byte);
ret |= lm36011_get_Reg(LM36011_DEVICE_ID, &p_lm36011_Regs->Device_Id.byte);
// lm36011 Enable Register Setting
p_lm36011_Regs->Enable.bit.Mode = 3; // Flash Mode (M0=1, M1=1)
p_lm36011_Regs->Enable.bit.Strobe_Enable = 1; // Enable: Strobe
p_lm36011_Regs->Enable.bit.Strobe_Type = 0; // Strobe Type: Level Triggered
p_lm36011_Regs->Enable.bit.IVFM_Enable = 0; // Disable: Input Voltage Flash Monitor (IVFM)
// lm36011 Configuration Register Setting
p_lm36011_Regs->Configuration.bit.Torch_Ramp = 0; // Disable: Torch Ramp 1ms
p_lm36011_Regs->Configuration.bit.Flash_Timeout_Duration = 15; // Flash Time-out Duration: 1600 msec
p_lm36011_Regs->Configuration.bit.IVFM_Levels = 0; // IVFM Levels: 2.9V
// lm36011 Led_Flash_Brighness & Led_Torch_Brighness Register Setting
p_lm36011_Regs->Led_Flash_Brighness.bit.Thermal_Current_ScaleBack = 1; // Enable: If enabled, the LED current shifts to torch current level if TJ reaches 125 °C
p_lm36011_Regs->Led_Flash_Brighness.bit.LED_Flash_Brightness_Level = 0; // LED Flash Brightness Level - minimum : 11 mA (default)
p_lm36011_Regs->Led_Torch_Brighness.bit.LED_Torch_Brightness_Level = 0; // LED Torch Brightness Level - minimum : 2.4 mA (default)
// set initialize settings information
ret |= lm36011_set_Reg(LM36011_ENABLE, p_lm36011_Regs->Enable.byte);
ret |= lm36011_set_Reg(LM36011_CONFIGURATION, p_lm36011_Regs->Configuration.byte);
ret |= lm36011_set_Reg(LM36011_LED_FLASH_BRIGHTNESS, p_lm36011_Regs->Led_Flash_Brighness.byte);
ret |= lm36011_set_Reg(LM36011_LED_TORCH_BRIGHTNESS, p_lm36011_Regs->Led_Torch_Brighness.byte);
return ret;
}
-------------------------------------------------------------------------------------------------------
Q1) Does it not work with an external Strobe signal when operating in Flash mode and Level trigger?
The desired operation is to output the LED current only when the Strobe signal is High in Flash mode.
Q2) The datasheet states that the strobe is 1ms or longer, but is it correct that the LED output does not come out when it is shorter than that?
2) IR LED Mode – Abnormal operation
When setting to initial IR LED and giving pulse to Strobe, LED current is synchronized to Strobe and outputs normally.
After a few seconds, as shown below, Rising starts with delay from Strobe signal and does not reach the desired current.
Regarding the above mentioned problem, I would like to request review to see if there is a design error.
Please check. Thank you.