|
void LCD_X_Config(void) {
GUI_DEVICE * pDevice;
CONFIG_FLEXCOLOR Config = {0};
GUI_PORT_API PortAPI = {0};
//
// Set display driver and color conversion
//
pDevice = GUI_DEVICE_CreateAndLink(GUIDRV_FLEXCOLOR, GUICC_565, 0, 0);
//
// Display driver configuration, required for Lin-driver
//
LCD_SetSizeEx (0, XSIZE_PHYS , YSIZE_PHYS);
LCD_SetVSizeEx(0, VXSIZE_PHYS, VYSIZE_PHYS);
//
// Orientation
//
Config.FirstCOM = 0; //modify by fire
Config.FirstSEG = 0; //modify by fire
// Config.Orientation = GUI_MIRROR_Y|GUI_MIRROR_X; //modify by fire 竖屏
Config.Orientation = GUI_SWAP_XY | GUI_MIRROR_Y; //modify by fire 横屏
Config.NumDummyReads = 2; //modify by fire 读取的第二个数据才是真实数据
GUIDRV_FlexColor_Config(pDevice, &Config);
//
// Set controller and operation mode
//
PortAPI.pfWrite16_A0 = LcdWriteReg;
PortAPI.pfWrite16_A1 = LcdWriteData;
PortAPI.pfWriteM16_A1 = LcdWriteDataMultiple;
PortAPI.pfReadM16_A1 = LcdReadDataMultiple;
GUIDRV_FlexColor_SetFunc(pDevice, & ortAPI, GUIDRV_FLEXCOLOR_F66709, GUIDRV_FLEXCOLOR_M16C0B16); //modify by fire ԭGUIDRV_FLEXCOLOR_F66708
/*设置触摸原点 */
GUI_TOUCH_SetOrientation((GUI_MIRROR_X * LCD_GetMirrorXEx(0)) |
(GUI_MIRROR_Y * LCD_GetMirrorYEx(0)) |
(GUI_SWAP_XY * LCD_GetSwapXYEx (0)));
/*设置触摸校准 */
GUI_TOUCH_Calibrate(GUI_COORD_X, 0, 240-1, TOUCH_AD_RIGHT ,TOUCH_AD_LEFT );
GUI_TOUCH_Calibrate(GUI_COORD_Y, 0, 320-1,TOUCH_AD_BOTTOM ,TOUCH_AD_TOP );
}
横屏时,你向上下滑,显示屏的有游标就向左右滑动,触摸配置如上,在5.22里都正常。 |
|