I have an Arduino Due and a 2.4" TFT screen shield this one. I'm trying to turn off the backlight to save power but not having any luck. I'm using the super nice MCUFriend library:
#include <Adafruit_GFX.h>
#include <MCUFRIEND_kbv.h>
MCUFRIEND_kbv tft;
It has worked great to make buttons and graphics, it's just the backlight I can't figure out. There's a datasheet for the driver chip and it has the following section to Write CTRL Display
, which is what I imagine I need:
So I have been trying to send 0x00 to register 0x53, but the display stays lit. I've tried using MCUFriend_kbv to set it, then thought maybe I'm doing something wrong so I tried their sample LCD_ID_readreg.ino
and added some lines:
readReg(0x54, 3, "Read CTRL Display");
lcdWriteRegister(0x53, 0x00);
readReg(0x54, 3, "Read CTRL Display after update");
I am not sure if I'm just misunderstanding something but the results show:
reg(0x0054) 00 00 00 Read CTRL Display
reg(0x0054) 00 00 00 Read CTRL Display after update
I guess I was expecting the register to say the backlight was on before I update it, but it says 00
even before I make the update- yet the backlight is clearly on. Any idea what I'm missing? Maybe it's the comment there about "control lines must be low"? I have no idea what that means. If you search the document for "control lines" nothing comes up.
The read above to 0x54 is because that's apparently where you read that register (unlike some where you call the same address to read/write):