Вс мар 20, 2022 13:14:59
Вс мар 20, 2022 13:40:34
Вс мар 20, 2022 16:11:05
Пн мар 21, 2022 11:52:22
Пн мар 21, 2022 17:58:49
Пн мар 21, 2022 18:32:08
Пн мар 21, 2022 21:33:49
#define ST7735_MADCTL_MY 0x80
#define ST7735_MADCTL_MX 0x40
#define ST7735_MADCTL_MV 0x20
#define ST7735_MADCTL_RGB 0x00
#define ST7735_MADCTL_BGR 0x08
#define ST7735_MADCTL_ML 0x10
#define ST7735_MADCTL_MH 0x04
#define ST7735_RGB444 0x03
#define ST7735_RGB565 0x05
#define ST7735_RGB666 0x06
#define ST7735_NOP 0x00
#define ST7735_SWRESET 0x01
//#define ST7735_RDDID 0x04
//#define ST7735_RDDST 0x09
#define ST7735_SLPIN 0x10
#define ST7735_SLPOUT 0x11
#define ST7735_PTLON 0x12
#define ST7735_NORON 0x13
#define ST7735_INVOFF 0x20
#define ST7735_INVON 0x21
#define ST7735_DISPOFF 0x28
#define ST7735_DISPON 0x29
#define ST7735_CASET 0x2A
#define ST7735_RASET 0x2B
#define ST7735_RAMWR 0x2C
#define ST7735_RGBSET 0x2D
//#define ST7735_RAMRD 0x2E
#define ST7735_PTLAR 0x30
#define ST7735_COLMOD 0x3A
#define ST7735_MADCTL 0x36
// инициализация
void initDisplayST7735(void){
setResetPinST7735(0);
_delay_ms(50);
setResetPinST7735(1);
_delay_ms(10);
sendCommandST7735(ST7735_SWRESET);
_delay_ms(120);
sleepModeST7735(0); // ST7735_SLPOUT
_delay_ms(120);
powerModeST7735(1); // ST7735_DISPON
_delay_us(150);
// ali seller's init
//--- ST7735S Frame Rate
sendCommandST7735(0xB1);
sendDataST7735(0x05);
sendDataST7735(0x3C);
sendDataST7735(0x3C);
sendCommandST7735(0xB2);
sendDataST7735(0x05);
sendDataST7735(0x3C);
sendDataST7735(0x3C);
sendCommandST7735(0xB3);
sendDataST7735(0x05);
sendDataST7735(0x3C);
sendDataST7735(0x3C);
sendDataST7735(0x05);
sendDataST7735(0x3C);
sendDataST7735(0x3C);
//--- End ST7735S Frame Rate
sendCommandST7735(0xB4); //Dot inversion
sendDataST7735(0x03);
//--- ST7735S Power Sequence
sendCommandST7735(0xC0);
sendDataST7735(0x28);
sendDataST7735(0x08);
sendDataST7735(0x04);
sendCommandST7735(0xC1);
sendDataST7735(0XC0);
sendCommandST7735(0xC2);
sendDataST7735(0x0D);
sendDataST7735(0x00);
sendCommandST7735(0xC3);
sendDataST7735(0x8D);
sendDataST7735(0x2A);
sendCommandST7735(0xC4);
sendDataST7735(0x8D);
sendDataST7735(0xEE);
//--- End ST7735S Power Sequence
sendCommandST7735(0xC5); //VCOM
sendDataST7735(0x12);
//--- ST7735S Gamma Sequence
sendCommandST7735(0xE0);
sendDataST7735(0x04);
sendDataST7735(0x22);
sendDataST7735(0x07);
sendDataST7735(0x0A);
sendDataST7735(0x2E);
sendDataST7735(0x30);
sendDataST7735(0x25);
sendDataST7735(0x2A);
sendDataST7735(0x28);
sendDataST7735(0x26);
sendDataST7735(0x2E);
sendDataST7735(0x3A);
sendDataST7735(0x00);
sendDataST7735(0x01);
sendDataST7735(0x03);
sendDataST7735(0x13);
sendCommandST7735(0xE1);
sendDataST7735(0x04);
sendDataST7735(0x16);
sendDataST7735(0x06);
sendDataST7735(0x0D);
sendDataST7735(0x2D);
sendDataST7735(0x26);
sendDataST7735(0x23);
sendDataST7735(0x27);
sendDataST7735(0x27);
sendDataST7735(0x25);
sendDataST7735(0x2D);
sendDataST7735(0x3B);
sendDataST7735(0x00);
sendDataST7735(0x01);
sendDataST7735(0x04);
sendDataST7735(0x13);
//--- End ST7735S Gamma Sequence
sendCommandST7735(ST7735_COLMOD);
sendDataST7735(ST7735_RGB565);
setMemoryWriteModeST7735(ST7735_MADCTL_RGB); // ST7735_MADCTL
unsigned char i=0;
sendCommandST7735(ST7735_RGBSET); //Look up table
for(i=0;i<32;i++)
sendDataST7735(2*i); //Red
for(i=0;i<64;i++)
sendDataST7735(1*i); //Green
for(i=0;i<32;i++)
sendDataST7735(2*i); //Blue
}
Пн мар 21, 2022 21:51:21