【mt8735】LCD螢幕顯示180°旋轉
阿新 • • 發佈:2019-01-10
我司“自動稱重掃描分揀系統”使用我司自己的工業平板,取代了原來的PC機,大大降低了成本。
由於“自動稱重分揀系統”產品的特殊要求,工業平板的掃碼頭是需要朝下,這樣 一來,我們所看到的畫面就是倒的,根本不可使用,因此,需要將LCD顯示180°旋轉。
將LCD顯示180°旋轉,需要做系統底層的修改,具體實現方法如下(以實際專案為例):
1. 更改MTK_LCM_PHYSICAL_ROTATION的值
MTK_LCM_PHYSICAL_ROTATION = 180
所涉及到的檔案有:
bootable/bootloader/lk/project/xxxxxx.mk
device/raindi/xxxxxx/ProjectConfig.mk
kernel-3.10/arch/arm64/configs/xxxxx_defconfig
kernel-3.10/arch/arm64/configs/xxxxxx_debug_defconfig
2. 開機動畫的旋轉
涉及到的檔案:
frameworks/native/services/surfaceflinger/DisplayDevice.cpp
將setProjection(DisplayState::eOrientationDefault, mViewport, mFrame);修改為:setProjection(DisplayState::eOrientation180, mViewport, mFrame);
修改的引數是:eOrientationDefault 改為 eOrientation180
3. 觸控式螢幕座標的修改
顯示屏旋轉了180°,那麼觸控式螢幕也要旋轉180°,這樣才能方便使用。
涉及到的檔案:
kernel-3.10/drivers/input/touchscreen/mediatek/GT9XX/gt9xx_driver.c
涉及的函式:tpd_down、tpd_up
修改方法:x = LCM_WIDTH - x 、 y = LCM_HEIGHT - y
因為我們已經更改了LCD原來的顯示方式,因此將上述修改做好之後,需要clean之後,全部重新編譯。
結合“自動稱重分揀系統”產品來看,我們的工業平板可以適應多種需求,甚至在某些方面取代笨重的PC機。
由於“自動稱重分揀系統”產品的特殊要求,工業平板的掃碼頭是需要朝下,這樣 一來,我們所看到的畫面就是倒的,根本不可使用,因此,需要將LCD顯示180°旋轉。
將LCD顯示180°旋轉,需要做系統底層的修改,具體實現方法如下(以實際專案為例):
1. 更改MTK_LCM_PHYSICAL_ROTATION的值
MTK_LCM_PHYSICAL_ROTATION = 180
所涉及到的檔案有:
bootable/bootloader/lk/project/xxxxxx.mk
device/raindi/xxxxxx/ProjectConfig.mk
kernel-3.10/arch/arm64/configs/xxxxx_defconfig
kernel-3.10/arch/arm64/configs/xxxxxx_debug_defconfig
2. 開機動畫的旋轉
涉及到的檔案:
frameworks/native/services/surfaceflinger/DisplayDevice.cpp
將setProjection(DisplayState::eOrientationDefault, mViewport, mFrame);修改為:setProjection(DisplayState::eOrientation180, mViewport, mFrame);
修改的引數是:eOrientationDefault 改為 eOrientation180
3. 觸控式螢幕座標的修改
顯示屏旋轉了180°,那麼觸控式螢幕也要旋轉180°,這樣才能方便使用。
涉及到的檔案:
kernel-3.10/drivers/input/touchscreen/mediatek/GT9XX/gt9xx_driver.c
涉及的函式:tpd_down、tpd_up
修改方法:x = LCM_WIDTH - x 、 y = LCM_HEIGHT - y
- // 修改例項,LCM_WIDTH = 1024, LCM_HEIGHT = 600
- static void tpd_down(s32 x, s32 y, s32 size, s32 id)
- {
- x = 1024-x;
- y = 600-y;
- ......
- }
- static void tpd_up(s32 x, s32 y, s32 id)
- {
- x = 1024-x;
- y = 600-y;
- ......
- }
因為我們已經更改了LCD原來的顯示方式,因此將上述修改做好之後,需要clean之後,全部重新編譯。
結合“自動稱重分揀系統”產品來看,我們的工業平板可以適應多種需求,甚至在某些方面取代笨重的PC機。