cancel
Showing results for 
Search instead for 
Did you mean: 

I want to minimize LCD current consumption.

JKim.15
Associate II

I want to minimize LCD current consumption.

LCD current consumption is too high.

After updating the LCD status, we immediately enter STOP_MODE to save current. (Keep repeating this)

I would like to reduce the LCD's current consumption by reducing the LCD's current consumption or speeding up the LCD update speed.

 

The LCD settings are now like this.

void MX_LCD_Init(void)
{

/* USER CODE BEGIN LCD_Init 0 */

/* USER CODE END LCD_Init 0 */

/* USER CODE BEGIN LCD_Init 1 */

/* USER CODE END LCD_Init 1 */
hlcd.Instance = LCD;
hlcd.Init.Prescaler = LCD_PRESCALER_8;
hlcd.Init.Divider = LCD_DIVIDER_16;
hlcd.Init.Duty = LCD_DUTY_1_4;
hlcd.Init.Bias = LCD_BIAS_1_3;
hlcd.Init.VoltageSource = LCD_VOLTAGESOURCE_INTERNAL;
hlcd.Init.Contrast = LCD_CONTRASTLEVEL_3;
hlcd.Init.DeadTime = LCD_DEADTIME_0;
hlcd.Init.PulseOnDuration = LCD_PULSEONDURATION_4;
hlcd.Init.MuxSegment = LCD_MUXSEGMENT_DISABLE;
hlcd.Init.BlinkMode = LCD_BLINKMODE_OFF;
hlcd.Init.BlinkFrequency = LCD_BLINKFREQUENCY_DIV128;
hlcd.Init.HighDrive = LCD_HIGHDRIVE_DISABLE;
if (HAL_LCD_Init(&hlcd) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN LCD_Init 2 */

/* USER CODE END LCD_Init 2 */

}

Thank you!

have a good day~!!

1 REPLY 1
QSHAO.1
ST Employee

Normally both buffer mode and deadtime to be considered to reduce power consumption of LCD.