This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LP5569: How can I run LP5569 breath function(dimming function) using

Part Number: LP5569
Other Parts Discussed in Thread: TEST2

Hello, I want to use LP5569 dimming control

I read all of guide but I can't.

Help me!!!

===============================================================================================

below is my code for dimming. only LED_TEST1 is activated for test

void load_SRAM(void)
{
uint8_t t = 0;
uint8_t i, j, tValue = 0;
HAL_StatusTypeDef ret = HAL_OK;

/*Write&Read enable*/
tValue = 0x40; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_CONFIG, &tValue, 1);

I2C_Read_LED_DRIVER(LP5569_ADDR, LP5569_CONFIG, tValue, 1); dprintf("Is LP5569 enable??: 0x%x\r\n", tValue);

//tValue = 0x48; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_MISC, &tValue, 1);

for(i = 0; i < 9; i++)
{
ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_LED0_CNTRL + i, exp11[i], 1);
}

for(i = 0; i < 9; i++)
{
ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_LED0_CURRENT_CNTRL + i, current[i], 1);
}

for(i = 0; i < 9; i++)
{
ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_LED0_PWM + i, pwm[i], 1);
}

/*Run0*/
tValue = 0x48; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_MISC, &tValue, 1);
tValue = 0x54; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE_CNTRL_2, &tValue, 1);
#ifdef LED_TEST0
tValue = 0x09; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE1_PROG_START, &tValue, 1);
tValue = 0x78; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE2_PROG_START, &tValue, 1);
tValue = 0xa8; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE3_PROG_START, &tValue, 1);

for(j = 0; j < 16; j++)
{
tValue = j; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_PROG_MEM_PAGE_SELECT, &tValue, 1);
for(i = 0; i < 32; i++){
tValue = j; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_PROGRAM_MEM_00, table_32[i+j*32], 1);
}
}
#endif

#ifdef LED_TEST1
/*Run1*/
tValue = 0x09; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE1_PROG_START, &tValue, 1);
tValue = 0x7b; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE2_PROG_START, &tValue, 1);
tValue = 0xaa; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE3_PROG_START, &tValue, 1);

for(j = 0; j < 16; j++)
{
tValue = j; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_PROG_MEM_PAGE_SELECT, &tValue, 1);
for(i = 0; i < 32; i++){
tValue = j; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_PROGRAM_MEM_00, table_33[i+j*32], 1);
}
}
#endif

#ifdef LED_TEST2
/*Run2*/
tValue = 0x09; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE1_PROG_START, &tValue, 1);
tValue = 0x7b; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE2_PROG_START, &tValue, 1);
tValue = 0xab; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE3_PROG_START, &tValue, 1);

for(j = 0; j < 16; j++)
{
tValue = j; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_PROG_MEM_PAGE_SELECT, &tValue, 1);
for(i = 0; i < 32; i++){
tValue = j; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_PROGRAM_MEM_00, table_34[i+j*32], 1);
}
}
#endif

#ifdef LED_TEST3
/*Run3*/
tValue = 0x09; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE1_PROG_START, &tValue, 1);
tValue = 0x77; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE2_PROG_START, &tValue, 1);
tValue = 0xa6; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE3_PROG_START, &tValue, 1);

for(j = 0; j < 16; j++)
{
tValue = j; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_PROG_MEM_PAGE_SELECT, &tValue, 1);
for(i = 0; i < 32; i++){
tValue = j; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_PROGRAM_MEM_00, table_35[i+j*32], 1);
}
}
#endif
tValue = 0x49; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_MISC, &tValue, 1);
tValue = 0x08; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_IO_CONTROL, &tValue, 1);

tValue = 0x00; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE_CNTRL_2, &tValue, 1);
tValue = 0xa8; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE_CNTRL_2, &tValue, 1);
tValue = 0xa8; ret = I2C_Write_LED_DRIVER(LP5569_ADDR, LP5569_ENGINE_CNTRL_1, &tValue, 1);
}



#define LP5569_CONFIG (HWREG8(0x00))
#define LP5569_ENGINE_CNTRL_1 (HWREG8(0x01))
#define LP5569_ENGINE_CNTRL_2 (HWREG8(0x02))
#define LP5569_LED0_CNTRL (HWREG8(0x07))
#define LP5569_LED1_CNTRL (HWREG8(0x08))
#define LP5569_LED2_CNTRL (HWREG8(0x09))
#define LP5569_LED3_CNTRL (HWREG8(0x0A))
#define LP5569_LED4_CNTRL (HWREG8(0x0B))
#define LP5569_LED5_CNTRL (HWREG8(0x0C))
#define LP5569_LED6_CNTRL (HWREG8(0x0D))
#define LP5569_LED7_CNTRL (HWREG8(0x0E))
#define LP5569_LED8_CNTRL (HWREG8(0x0F))
#define LP5569_LED0_PWM (HWREG8(0x16))
#define LP5569_LED1_PWM (HWREG8(0x17))
#define LP5569_LED2_PWM (HWREG8(0x18))
#define LP5569_LED3_PWM (HWREG8(0x19))
#define LP5569_LED4_PWM (HWREG8(0x1A))
#define LP5569_LED5_PWM (HWREG8(0x1B))
#define LP5569_LED6_PWM (HWREG8(0x1C))
#define LP5569_LED7_PWM (HWREG8(0x1D))
#define LP5569_LED8_PWM (HWREG8(0x1E))
#define LP5569_LED0_CURRENT_CNTRL (HWREG8(0x22))
#define LP5569_MISC (HWREG8(0x2F))
#define LP5569_ENGINE1_PC (HWREG8(0x30))
#define LP5569_ENGINE2_PC (HWREG8(0x31))
#define LP5569_ENGINE3_PC (HWREG8(0x32))
#define LP5569_MISC2 (HWREG8(0x33))
#define LP5569_ENGINE_STATUS (HWREG8(0x3C))
#define LP5569_IO_CONTROL (HWREG8(0x3D))
#define LP5569_VARIABLE_D (HWREG8(0x3E))
#define LP5569_RESET (HWREG8(0x3F))
#define LP5569_ENGINE1_VARIABLE_A (HWREG8(0x42))
#define LP5569_ENGINE2_VARIABLE_A (HWREG8(0x43))
#define LP5569_ENGINE3_VARIABLE_A (HWREG8(0x44))
#define LP5569_MASTER_FADER_1 (HWREG8(0x46))
#define LP5569_MASTER_FADER_2 (HWREG8(0x47))
#define LP5569_MASTER_FADER_3 (HWREG8(0x48))
#define LP5569_MASTER_FADER_PWM (HWREG8(0x4A))
#define LP5569_ENGINE1_PROG_START (HWREG8(0x4B))
#define LP5569_ENGINE2_PROG_START (HWREG8(0x4C))
#define LP5569_ENGINE3_PROG_START (HWREG8(0x4D))
#define LP5569_PROG_MEM_PAGE_SELECT (HWREG8(0x4F))
#define LP5569_PROGRAM_MEM_00 (HWREG8(0x50))
#define LP5569_ENGINE1_MAPPING1 (HWREG8(0x70))
#define LP5569_ENGINE1_MAPPING2 (HWREG8(0x71))
#define LP5569_ENGINE2_MAPPING1 (HWREG8(0x72))
#define LP5569_ENGINE2_MAPPING2 (HWREG8(0x73))
#define LP5569_ENGINE3_MAPPING1 (HWREG8(0x74))
#define LP5569_ENGINE3_MAPPING2 (HWREG8(0x75))
#define LP5569_PWM_CONFIG (HWREG8(0x80))
#define LP5569_LED_FAULT1 (HWREG8(0x81))
#define LP5569_LED_FAULT2 (HWREG8(0x82))
#define LP5569_GENERAL_FAULT (HWREG8(0x83))

  • additional code 

    void LP5569_Init(void)
    {
    	enum lp_err_code LP5569_Error = LP_OK;
    
    
    	LED_EN_CTRL(ON);
    	Delayms(10);						// Absolutely Necessary
    
    	/*	Step 1 : LP5569 Reset	*/
    	LP5569_Error = LP5569_Reset();
    	Delayms(10);						// Absolutely Necessary
    
    	/*	Step 2 : LP5569 Chip Enable	*/
    	LP5569_Error |= LP5569_Enable();
    
    	/*	Step 3 : LP5569 Charger Pump & Internal Clock Setting	*/
    	LP5569_Error |= LP5569_Charge_Pump_Set();
    
    
    	if(LP5569_Error == LP_OK)
    	{
    		gLp5569InitStatus = 1;
    		dprintf("LP5569 Initial : OK !!\r\n");
    	}
    	else
    	{
    		gLp5569InitStatus = 0;
    		dprintf("LP5569 Initial : Fail !!\r\n");
    	}
    }
    
    /*
     * @briefload_SRAM
     * @param channel: None
     * @param value: None
     * @retval Status
    */
    #ifdef LED_TEST0
    unsigned char table_32[]={
    	0x00,0x49,0x00,0x92,0x01,0x24,0x00,0xDB,0x01,0xB6,0x01,0x6D,0x01,0xFF,0x00,0x49,
    	0x00,0x92,0x9C,0x00,0x9C,0x86,0x28,0xC8,0x21,0xFF,0x74,0x00,0x28,0xC8,0x21,0xFF,
    	0x74,0x00,0x9D,0x80,0xA3,0x02,0x9F,0x87,0x1E,0xC8,0x74,0x00,0x74,0x00,0x9F,0x88,
    	0x3E,0xC8,0x31,0xFF,0x3E,0xC8,0x31,0xFF,0x9F,0x87,0x19,0xFF,0x74,0x00,0x90,0x4B,
    	0x9D,0x07,0x84,0x60,0x9D,0x04,0x92,0x14,0x84,0x60,0x9D,0x01,0x92,0x14,0x84,0x60,
    	0x91,0x14,0x44,0x00,0xBF,0x97,0xA1,0x97,0x4C,0x00,0x9F,0x86,0x40,0x00,0x74,0x00,
    	0x90,0x4B,0x9F,0x87,0x14,0xC8,0x74,0x00,0x9D,0x08,0x84,0x60,0x9D,0x05,0x92,0x14,
    	0x84,0x60,0x9D,0x02,0x92,0x14,0x84,0x60,0x91,0x14,0x44,0x00,0xBF,0xAB,0xA1,0xAB,
    	0x4C,0x00,0x9F,0x86,0x40,0x00,0x9F,0x87,0x14,0xC8,0x46,0x00,0x9D,0x02,0x40,0xC8,
    	0x46,0x00,0x9D,0x05,0x40,0xC8,0x46,0x00,0x9D,0x08,0x40,0xC8,0x46,0x00,0x9D,0x02,
    	0x40,0x00,0x46,0x00,0x9D,0x05,0x40,0x00,0x46,0x00,0x9D,0x08,0x40,0x00,0x46,0x00,
    	0xA3,0x4E,0xA8,0x3D,0x9F,0x86,0x40,0x00,0x46,0x00,0xA4,0x53,0x74,0x00,0x9D,0x01,
    	0x40,0xC8,0x46,0x00,0x9D,0x04,0x40,0xC8,0x46,0x00,0x9D,0x07,0x40,0xC8,0x46,0x00,
    	0xA3,0x5E,0x74,0x00,0x9D,0x07,0x40,0x00,0x46,0x00,0x9D,0x04,0x40,0x00,0x46,0x00,
    	0x9D,0x01,0x40,0x00,0x46,0x00,0xA2,0x55,0x9D,0x00,0xE0,0x04,0xE2,0x00,0x00,0x00,
    	0xE0,0x80,0x9F,0x87,0x14,0xC8,0x4A,0x00,0x9D,0x02,0x40,0xC8,0x4A,0x00,0x9D,0x05,
    	0x40,0xC8,0x4A,0x00,0x9D,0x08,0x40,0xC8,0x4A,0x00,0x9D,0x02,0x40,0x00,0x4A,0x00,
    	0x9D,0x05,0x40,0x00,0x4A,0x00,0x9D,0x08,0x40,0x00,0x4A,0x00,0x9D,0x03,0x40,0xC8,
    	0x4A,0x00,0x9D,0x06,0x40,0xC8,0x4A,0x00,0x9D,0x09,0x40,0xC8,0x4A,0x00,0x9D,0x03,
    	0x40,0x00,0x4A,0x00,0x9D,0x06,0x40,0x00,0x4A,0x00,0x9D,0x09,0x40,0x00,0x4A,0x00,
    	0xA5,0x04,0x9F,0x86,0x40,0x00,0x4A,0x00,0xA1,0x2B,0x9D,0x00,0xE0,0x08,0x00,0x00,
    	0xE1,0x00,0x9D,0x03,0x40,0x23,0x46,0x00,0x9D,0x06,0x40,0x37,0x46,0x00,0x9D,0x09,
    	0x40,0x4B,0x46,0x00,0xA9,0x09,0x9D,0x09,0x40,0x00,0x46,0x00,0x9D,0x06,0x40,0x00,
    	0x46,0x00,0x9D,0x03,0x40,0x00,0x46,0x00,0xA2,0x01,0x9D,0x00,0xE0,0x02,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
    };
    #endif
    
    #ifdef LED_TEST1
    unsigned char table_33[]={
    	0x00,0x49,0x00,0x92,0x01,0x24,0x00,0xDB,0x01,0xB6,0x01,0x6D,0x01,0xFF,0x00,0x49,
    	0x00,0x92,0x9C,0x00,0x9C,0x86,0x28,0xC8,0x21,0xFF,0x74,0x00,0x28,0xC8,0x21,0xFF,
    	0x74,0x00,0x9D,0x80,0xA3,0x02,0x9F,0x87,0x1E,0xC8,0x74,0x00,0x74,0x00,0x9F,0x88,
    	0x3E,0xC8,0x31,0xFF,0x3E,0xC8,0x31,0xFF,0x9F,0x87,0x19,0xFF,0x74,0x00,0x90,0x87,
    	0x9D,0x07,0x84,0x60,0x9D,0x04,0x92,0x14,0x84,0x60,0x9D,0x01,0x92,0x14,0x84,0x60,
    	0x91,0x14,0x44,0x00,0xBF,0x97,0xA1,0x97,0x4C,0x00,0x9F,0x86,0x40,0x00,0x74,0x00,
    	0x90,0x87,0x9F,0x87,0x14,0xC8,0x74,0x00,0x9D,0x08,0x84,0x60,0x9D,0x05,0x92,0x14,
    	0x84,0x60,0x9D,0x02,0x92,0x14,0x84,0x60,0x91,0x14,0x44,0x00,0xBF,0xAB,0xA1,0xAB,
    	0x4C,0x00,0x9F,0x86,0x40,0x00,0x9F,0x87,0x14,0xC8,0x46,0x00,0xA1,0xBC,0x9D,0x02,
    	0x40,0xC8,0x46,0x00,0x9D,0x05,0x40,0xC8,0x46,0x00,0x9D,0x08,0x40,0xC8,0x46,0x00,
    	0x9D,0x02,0x40,0x00,0x46,0x00,0x9D,0x05,0x40,0x00,0x46,0x00,0x9D,0x08,0x40,0x00,
    	0x46,0x00,0xA3,0x4F,0xA8,0x3E,0x9F,0x86,0x40,0x00,0x46,0x00,0xA2,0xD4,0x74,0x00,
    	0x46,0x00,0xA1,0x57,0x9D,0x01,0x40,0xC8,0x46,0x00,0x9D,0x04,0x40,0xC8,0x46,0x00,
    	0x9D,0x07,0x40,0xC8,0x46,0x00,0x74,0x00,0x9D,0x07,0x40,0x00,0x46,0x00,0x9D,0x04,
    	0x40,0x00,0x46,0x00,0x9D,0x01,0x40,0x00,0x46,0x00,0xA1,0xEB,0xA2,0x56,0x9D,0x00,
    	0xE0,0x04,0xE2,0x00,0x00,0x00,0xE0,0x80,0x9F,0x87,0x14,0xC8,0x4A,0x00,0xA1,0x83,
    	0x9D,0x02,0x40,0xC8,0x4A,0x00,0x9D,0x05,0x40,0xC8,0x4A,0x00,0x9D,0x08,0x40,0xC8,
    	0x4A,0x00,0x9D,0x02,0x40,0x00,0x4A,0x00,0x9D,0x05,0x40,0x00,0x4A,0x00,0x9D,0x08,
    	0x40,0x00,0x4A,0x00,0x9D,0x03,0x40,0xC8,0x4A,0x00,0x9D,0x06,0x40,0xC8,0x4A,0x00,
    	0x9D,0x09,0x40,0xC8,0x4A,0x00,0x9D,0x03,0x40,0x00,0x4A,0x00,0x9D,0x06,0x40,0x00,
    	0x4A,0x00,0x9D,0x09,0x40,0x00,0x4A,0x00,0xA5,0x05,0x9F,0x86,0x40,0x00,0x9D,0x00,
    	0xE0,0x08,0x00,0x00,0xE1,0x00,0x46,0x00,0xA1,0x01,0x9D,0x03,0x40,0x5F,0x46,0x00,
    	0x9D,0x06,0x40,0x73,0x46,0x00,0x9D,0x09,0x40,0x87,0x46,0x00,0xA6,0x0B,0x9D,0x09,
    	0x40,0x00,0x46,0x00,0x9D,0x06,0x40,0x00,0x46,0x00,0x9D,0x03,0x40,0x00,0x46,0x00,
    	0xA1,0x95,0xA2,0x01,0x9D,0x00,0xE0,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
    };
    #endif
    
    #ifdef LED_TEST2
    unsigned char table_34[]={
    	0x00,0x49,0x00,0x92,0x01,0x24,0x00,0xDB,0x01,0xB6,0x01,0x6D,0x01,0xFF,0x00,0x49,
    	0x00,0x92,0x9C,0x00,0x9C,0x86,0x28,0xC8,0x21,0xFF,0x74,0x00,0x28,0xC8,0x21,0xFF,
    	0x74,0x00,0x9D,0x80,0xA3,0x02,0x9F,0x87,0x1E,0xC8,0x74,0x00,0x74,0x00,0x9F,0x88,
    	0x3E,0xC8,0x31,0xFF,0x3E,0xC8,0x31,0xFF,0x9F,0x87,0x19,0xFF,0x74,0x00,0x90,0xC3,
    	0x9D,0x07,0x84,0x60,0x9D,0x04,0x92,0x14,0x84,0x60,0x9D,0x01,0x92,0x14,0x84,0x60,
    	0x91,0x14,0x44,0x00,0xBF,0x97,0xA1,0x97,0x4C,0x00,0x9F,0x86,0x40,0x00,0x74,0x00,
    	0x90,0xC3,0x9F,0x87,0x14,0xC8,0x74,0x00,0x9D,0x08,0x84,0x60,0x9D,0x05,0x92,0x14,
    	0x84,0x60,0x9D,0x02,0x92,0x14,0x84,0x60,0x91,0x14,0x44,0x00,0xBF,0xAB,0xA1,0xAB,
    	0x4C,0x00,0x9F,0x86,0x40,0x00,0x9F,0x87,0x14,0xC8,0x46,0x00,0xA3,0x3C,0x9D,0x02,
    	0x40,0xC8,0x46,0x00,0x9D,0x05,0x40,0xC8,0x46,0x00,0x9D,0x08,0x40,0xC8,0x46,0x00,
    	0x9D,0x02,0x40,0x00,0x46,0x00,0x9D,0x05,0x40,0x00,0x46,0x00,0x9D,0x08,0x40,0x00,
    	0x46,0x00,0xA3,0x4F,0xA8,0x3E,0x9F,0x86,0x40,0x00,0x46,0x00,0xA1,0x54,0x74,0x00,
    	0x46,0x00,0xA1,0x57,0x9D,0x07,0x40,0xC8,0x46,0x00,0x9D,0x04,0x40,0xC8,0x46,0x00,
    	0x9D,0x01,0x40,0xC8,0x46,0x00,0x74,0x00,0x9D,0x01,0x40,0x00,0x46,0x00,0x9D,0x04,
    	0x40,0x00,0x46,0x00,0x9D,0x07,0x40,0x00,0x46,0x00,0xA1,0xEB,0xA2,0x56,0x9D,0x00,
    	0xE0,0x04,0xE2,0x00,0x00,0x00,0xE0,0x80,0x9F,0x87,0x14,0xC8,0x4A,0x00,0x9D,0x03,
    	0x40,0xC8,0x4A,0x00,0x9D,0x06,0x40,0xC8,0x4A,0x00,0x9D,0x09,0x40,0xC8,0x4A,0x00,
    	0x9D,0x03,0x40,0x00,0x4A,0x00,0x9D,0x06,0x40,0x00,0x4A,0x00,0x9D,0x09,0x40,0x00,
    	0x4A,0x00,0x9D,0x02,0x40,0xC8,0x4A,0x00,0x9D,0x05,0x40,0xC8,0x4A,0x00,0x9D,0x08,
    	0x40,0xC8,0x4A,0x00,0x9D,0x02,0x40,0x00,0x4A,0x00,0x9D,0x05,0x40,0x00,0x4A,0x00,
    	0x9D,0x08,0x40,0x00,0x4A,0x00,0xA5,0x04,0x9F,0x86,0x40,0x00,0x4A,0x00,0xA1,0x2B,
    	0x9D,0x00,0xE0,0x08,0x00,0x00,0xE1,0x00,0x46,0x00,0xA2,0x81,0x9D,0x03,0x40,0x9B,
    	0x46,0x00,0x9D,0x06,0x40,0xAF,0x46,0x00,0x9D,0x09,0x40,0xC3,0x46,0x00,0xA3,0x0B,
    	0x9D,0x09,0x40,0x00,0x46,0x00,0x9D,0x06,0x40,0x00,0x46,0x00,0x9D,0x03,0x40,0x00,
    	0x46,0x00,0xA3,0x15,0xA2,0x01,0x9D,0x00,0xE0,0x02,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
    };
    #endif
    
    #ifdef LED_TEST3
    unsigned char table_35[]={
    	0x00,0x49,0x00,0x92,0x01,0x24,0x00,0xDB,0x01,0xB6,0x01,0x6D,0x01,0xFF,0x00,0x49,
    	0x00,0x92,0x9C,0x00,0x9C,0x86,0x28,0xC8,0x21,0xFF,0x74,0x00,0x28,0xC8,0x21,0xFF,
    	0x74,0x00,0x9D,0x80,0xA3,0x02,0x9F,0x87,0x1E,0xC8,0x74,0x00,0x74,0x00,0x9F,0x88,
    	0x3E,0xC8,0x31,0xFF,0x3E,0xC8,0x31,0xFF,0x9F,0x87,0x19,0xFF,0x74,0x00,0x90,0xFF,
    	0x9D,0x07,0x84,0x60,0x9D,0x04,0x92,0x14,0x84,0x60,0x9D,0x01,0x92,0x14,0x84,0x60,
    	0x91,0x14,0x44,0x00,0xBF,0x97,0xA1,0x97,0x4C,0x00,0x9F,0x86,0x40,0x00,0x74,0x00,
    	0x90,0xFF,0x9F,0x87,0x14,0xC8,0x74,0x00,0x9D,0x08,0x84,0x60,0x9D,0x05,0x92,0x14,
    	0x84,0x60,0x9D,0x02,0x92,0x14,0x84,0x60,0x91,0x14,0x44,0x00,0xBF,0xAB,0xA1,0xAB,
    	0x4C,0x00,0x9F,0x86,0x40,0x00,0x9F,0x87,0x14,0xC8,0x46,0x00,0xA4,0xBC,0x9D,0x02,
    	0x40,0xC8,0x46,0x00,0x9D,0x05,0x40,0xC8,0x46,0x00,0x9D,0x08,0x40,0xC8,0x46,0x00,
    	0x9D,0x02,0x40,0x00,0x46,0x00,0x9D,0x05,0x40,0x00,0x46,0x00,0x9D,0x08,0x40,0x00,
    	0x46,0x00,0xA3,0x4F,0xA8,0x3E,0x9F,0x86,0x40,0x00,0x74,0x00,0x9D,0x07,0x40,0xC8,
    	0x46,0x00,0x9D,0x04,0x40,0xC8,0x46,0x00,0x9D,0x01,0x40,0xC8,0x46,0x00,0xA3,0x5D,
    	0x74,0x00,0x9D,0x01,0x40,0x00,0x46,0x00,0x9D,0x04,0x40,0x00,0x46,0x00,0x9D,0x07,
    	0x40,0x00,0x46,0x00,0xA2,0x54,0x9D,0x00,0xE0,0x04,0xE2,0x00,0x00,0x00,0xE0,0x80,
    	0x9F,0x87,0x14,0xC8,0x4A,0x00,0xA1,0x83,0x9D,0x03,0x40,0xC8,0x4A,0x00,0x9D,0x06,
    	0x40,0xC8,0x4A,0x00,0x9D,0x09,0x40,0xC8,0x4A,0x00,0x9D,0x03,0x40,0x00,0x4A,0x00,
    	0x9D,0x06,0x40,0x00,0x4A,0x00,0x9D,0x09,0x40,0x00,0x4A,0x00,0x9D,0x02,0x40,0xC8,
    	0x4A,0x00,0x9D,0x05,0x40,0xC8,0x4A,0x00,0x9D,0x08,0x40,0xC8,0x4A,0x00,0x9D,0x02,
    	0x40,0x00,0x4A,0x00,0x9D,0x05,0x40,0x00,0x4A,0x00,0x9D,0x08,0x40,0x00,0x4A,0x00,
    	0xA5,0x05,0x9F,0x86,0x40,0x00,0x9D,0x00,0xE0,0x08,0x00,0x00,0xE1,0x00,0x46,0x00,
    	0xA4,0x01,0x9D,0x03,0x40,0xD7,0x46,0x00,0x9D,0x06,0x40,0xEB,0x46,0x00,0x9D,0x09,
    	0x40,0xFF,0x46,0x00,0x9D,0x09,0x40,0x00,0x46,0x00,0x9D,0x06,0x40,0x00,0x46,0x00,
    	0x9D,0x03,0x40,0x00,0x46,0x00,0xA4,0x94,0xA2,0x01,0x9D,0x00,0xE0,0x02,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
    };
    #endif
    
    unsigned char exp11[]={0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38};
    unsigned char current[]={0x32,0x32,0x32,0x32,0x32,0x32,0x32,0x32,0x32};
    unsigned char pwm[]={0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30};
    unsigned char pwm_0[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};

  • Hi Lee,

    I will check it and get back to you ASAP.

    BR, Jared

  • Hi Lee,

    Since I haven't received the LP5569EVM yet, I just reviewed your code, please refer the comments below:

    1. Please make sure that you use the external clock.


    2. Please try to write the page for the SRAM Memory one by one and refer the below order to load SRAM Memory:

    • Set enginex_mode to "load"
    • Load program to enginex_load
    • Set enginex_mode to "run"
    • At this point, the intended LED pulses as programmed.


    Please refer the below code:

    	# Enable chip
    	Read 00 from 00
    	Write 40 to 00
    	
    	# Wait for startup done
    	Read c0 from 3c
    	Read 80 from 3c
    	
    	# Set engine 1 to Hold / Load Program
    	Read 00 from 01
    	Write 00 to 01
    	Read 00 from 02
    	Write 40 to 02
    	
    	# Set engine 2 to Hold / Load Program
    	Read 00 from 01
    	Write 00 to 01
    	Read 40 from 02
    	Write 50 to 02
    	
    	# Set engine 3 to Hold / Load Program
    	Read 00 from 01
    	Write 00 to 01
    	Read 50 from 02
    	Write 54 to 02
    	
    	# Make sure that engines are ready before writing program data
    	Read 80 from 3c
    	
    	# Select SRAM page 0
    	Read 00 from 4f
    	Write 00 to 4f
    	
    	# Write program data
    	Write 00 to 4f
    	Write 9d to 50
    	Write 01 to 51
    	Write 40 to 52
    	Write 64 to 53
    	Write c0 to 54
    	Write 00 to 55
    	Write 00 to 56
    	Write 00 to 57
    	Write 00 to 58
    	Write 00 to 59
    	Write 00 to 5a
    	Write 00 to 5b
    	Write 00 to 5c
    	Write 00 to 5d
    	Write 00 to 5e
    	Write 00 to 5f
    	Write 00 to 60
    	Write 00 to 61
    	Write 00 to 62
    	Write 00 to 63
    	Write 00 to 64
    	Write 00 to 65
    	Write 00 to 66
    	Write 00 to 67
    	Write 00 to 68
    	Write 00 to 69
    	Write 00 to 6a
    	Write 00 to 6b
    	Write 00 to 6c
    	Write 00 to 6d
    	Write 00 to 6e
    	Write 00 to 6f
    	
    	# Select SRAM page 1
    	Read 00 from 4f
    	Write 01 to 4f
    	
    	# Write program data
    	Write 00 to 50
    	Write 00 to 51
    	Write 00 to 52
    	Write 00 to 53
    	Write 00 to 54
    	Write 00 to 55
    	Write 00 to 56
    	Write 00 to 57
    	Write 00 to 58
    	Write 00 to 59
    	Write 00 to 5a
    	Write 00 to 5b
    	Write 00 to 5c
    	Write 00 to 5d
    	Write 00 to 5e
    	Write 00 to 5f
    	Write 00 to 60
    	Write 00 to 61
    	Write 00 to 62
    	Write 00 to 63
    	Write 00 to 64
    	Write 00 to 65
    	Write 00 to 66
    	Write 00 to 67
    	Write 00 to 68
    	Write 00 to 69
    	Write 00 to 6a
    	Write 00 to 6b
    	Write 00 to 6c
    	Write 00 to 6d
    	Write 00 to 6e
    	Write 00 to 6f
    
    	# Set engine 1 to Free run / Run program
    	Read 00 from 01
    	Write 80 to 01
    	Read 54 from 02
    	Write 94 to 02
    

    If there are any questions else, please free to contact me via email: jared-zhou@ti.com

    BR, Jared