三、Driver input system



1.如何添加新的kernel模塊:

參考 [FAQ08517]

(1)create new folder

alps\mediatek\custom\common\kernel\newdevice\device_a

-->notice need create 2 folder: newdevice\device_a

(2) copy your code in device_a(code can not include makefile file)

(3) Add CUSTOM_KERNEL_NEWDEVICE=device_a to projectconfig.mk

(4) compiling kernel

2.時鐘週期和時鐘頻率的換算問題

F代表頻率,單位是Hz; T代表週期,單位是s

頻率等於一除以週期, 寫成公式就是: F (Hz) = 1 / T (s) ,

所以倒過來就有周期等於一除以頻率,寫成公式就是:T = 1 / F

120MHZ = 120x10^6HZ

所以 T = 1/(120x10^6) = 8.3 x 10^(-9) s = 8.3ns

執行時間/時鐘週期 = 週期數

執行時間*時鐘頻率 = 週期數

時鐘週期 = 1/時鐘頻率

舉例說明:

dws中的Keypress_Perio是消抖週期,基準時鐘是32K。如果是1024個週期,則消抖時間是32ms;

即:消抖時間 =(1/32000)*1024 s =0.032s =32ms

3.觸摸屏的供電配置

VDD VGP 供電區別

4.TP上實現虛擬按鍵功能:

參考[FAQ02518]

添加tp的virtual key,需在tp對應的頭文件中添加如下設置:

1.定義宏TPD_HAVE_BUTTON;

2.定義TPD_BUTTON_HEIGHT,TPD_KEY_COUNT,TPD_KEYS和TPD_KEYS_DIM,分別用於定義button被識 別的縱向座標,button的個數,對應的功能鍵,和每個功能鍵的座標。

配置示例:

#define TPD_HAVE_BUTTON

#define TPD_BUTTON_HEIGHT 480 //這個不小於LCD的分辨率的height

#define TPD_KEY_COUNT 4

#define TPD_KEYS {KEY_MENU, KEY_HOME, KEY_BACK, KEY_SEARCH}

#define TPD_KEYS_DIM {{40,500,40,60},{120,500,40,60},{200,500,40,60},{280,500,40,60}}

其中,{40,500,40,60}對應了KEY_MENU的座標, (40,50)是該key center的座標,40是該鍵的寬度 ,60是該鍵的高度

3.button定義初始化成功後,通過adb shell,可以在/sys/board_properties/virtualkeys.mtk- tpd中看到這些button的定義

5.TP虛擬按鍵背光燈時間控制:

adjust powermanagerservice.java define LONG_KEYLIGHT_DELAY value

6.I2C傳輸數據速率設定方式:

在進行i2c 傳輸前設置,i2c_client->timing = timing_number;

備註:

1.當設備不支持快速mode timing_number <= 100;

2.當設備支持快速mode timing_number <= 400;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章