📄 tianma.c
字号:
#include "ssd192X.h"#include "lcd_hw.h"int LCD_WIDTH=320;int LCD_HEIGHT=240;void lcd_hw_init(void){ int i=0; INT32 lcd_hw_init[][2]= { {REG_PCLK_FREQ_RATIO_0 ,0xf0},//0x158 0xff {REG_PCLK_FREQ_RATIO_1 ,0xff},//0x159 0xff {REG_PCLK_FREQ_RATIO_2 ,0x00},//0x15a 0x00 {REG_PANEL_TYPE ,0x72},//0x10 /*serial tft*/ {REG_MOD_RATE ,0x00},//0x11 {REG_HORIZ_TOTAL_0 ,0x18},//0x12 {REG_HORIZ_TOTAL_1 ,0x07},//0x13 {REG_HDP ,0x15},//0x14 {REG_HDP_START_POS0 ,0x0a},//0x16 {REG_HDP_START_POS1 ,0x00},//0x17 {REG_VERT_TOTAL0 ,0xef},//0x18 {REG_VERT_TOTAL1 ,0x00},//0x19 {REG_VDP0 ,0xdb},//0x1C {REG_VDP1 ,0x00},//0x1D {REG_VDP_START_POS0 ,0x03},//0x1e {REG_VDP_START_POS1 ,0x00},//0x1f {REG_HSYNC_PULSE_WIDTH ,0x81},//0x20 {REG_HSYNC_PULSE_START_POS0 ,0x00},//0x22 {REG_HSYNC_PULSE_START_POS1 ,0x00},//0x23 {REG_VSYNC_PULSE_WIDTH ,0x80},//0x24 {REG_VSYNC_PULSE_START_POS0 ,0x00},//0x26 {REG_VSYNC_PULSE_START_POS1 ,0x00},//0x27 {REG_GPIO_STATUS_CONTROL1 ,0x00},//0xac {REG_HRTFT_SPECIAL_OUTPUT ,0x00},//0x38 {REG_DISPLAY_MODE ,0xC4},//0x70//default off {REG_HORIZ_TOTAL_0 ,0x15},//0x12 {REG_HORIZ_TOTAL_1 ,0x07},//0x13 {REG_HDP ,0x13},//0x14 {REG_HDP_START_POS0 ,0x04},//0x16 {REG_VERT_TOTAL0 ,240},//0x18 {REG_VDP0 ,239},//0x1c {REG_VDP_START_POS0 ,0},//0x1e {REG_FPFRAME_START_OFFSET0 ,1},//0x30 {REG_HSYNC_PULSE_START_POS0 ,1},//0x22// {REG_MAIN_WIN_ADDR_OFFSET0 ,0x50},//0x78// {REG_MAIN_WIN_DISP_START_ADDR0 ,0x00},//0x74 {REG_SPECIAL_EFFECTS ,0x40},//0x71 {REG_DV_FRAME_SAMPLING, 0x01},//0x161 {REG_LLINE_PULSE_START_SUBPIXEL_POS, 0x03},//0x21=3pixels {REG_LCD_SUBPIXEL_ALIGNMENT, 0x04},//0x42=BRG/RGB {REG_DV_SUBPIXEL_MODE, 0x02}, //bit 0 -> 1 pal mode#if 1//def __AU030 {REG_HDP ,0x27},//x14 {REG_HORIZ_TOTAL_0 ,0x2a},//0x12 {REG_VERT_TOTAL0 ,0x0f},//0x18 {REG_VERT_TOTAL1 ,0x01},//0x19 {REG_HDP_START_POS0 ,0x0a},//0x16 {REG_VDP_START_POS0 ,0x14},//0x1e {REG_HSYNC_PULSE_WIDTH ,0x01},//0x20 {REG_VSYNC_PULSE_WIDTH ,0x00},//0x24 {REG_MAIN_WIN_ADDR_OFFSET0 ,0xa0},//0x78 {REG_LCD_SUBPIXEL_ALIGNMENT, 0x00},//x03},//0x42=BRG/RGB {REG_HDP ,0x27},//0x78 {REG_HORIZ_TOTAL_0, 0x2a},//x03},//0x42=BRG/RGB {REG_VERT_TOTAL0 ,0x0f},//0x78 {REG_VERT_TOTAL1, 0x01},//x03},//0x42=BRG/RGB {REG_HSYNC_PULSE_WIDTH ,0x01},//0x78 {REG_VSYNC_PULSE_WIDTH, 0x00},//x03},//0x42=BRG/RGB {REG_MAIN_WIN_ADDR_OFFSET0 ,0xa0},//0x78 {REG_LLINE_PULSE_START_SUBPIXEL_POS ,0x0},//0x78 {REG_HSYNC_PULSE_START_POS0, 0x60},//x03},//0x42=BRG/RGB {REG_HSYNC_PULSE_START_POS1 ,0x0},//0x78 {REG_HDP_START_POS0, 0x72},//x03},//0x42=BRG/RGB {REG_HDP_START_POS1 ,0x0},//0x78 {REG_VDP_START_POS0, 0x15},//x03},//0x42=BRG/RGB#endif {REG_DEFINE_END ,0x00}//0xFFFF };#if 1 //def __AU030 //Use GPIO to send SPI command to AUO 3" Panel//display off SSD_REGWB(REG_POWER_SAVE_CONFIG,0x01);//set gpio to output SSD_REGWB( REG_GPIO_CONFIG0,0x07);// GPIO0 = CS//GPIO1 = SDA// GPIO2 = SCL//#R5 SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);// set spi address SSD_REGWB(REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06);// set spi data SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);#ifdef TEST_ROTATE//#R4 SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);// set spi address SSD_REGWB(REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04);// set spi data SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);#endif//#R7 SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);// set spi address SSD_REGWB(REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06);// set spi data SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);#if 0 //#R1 SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);// set spi address SSD_REGWB(REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06);// set spi data SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);#endif#if 0 //#R0 SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);// set spi address SSD_REGWB(REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04);// set spi data SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);#endif//#R5 SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x07);// set spi address SSD_REGWB(REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06);// set spi data SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x02); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x06); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x00); SSD_REGWB( REG_GPIO_STATUS_CONTROL0,0x04);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -