gt911寄存器配置
本帖最后由 薪火相传 于 2022-11-1 15:09 编辑液晶屏像素800x480,触摸IC为gt911,i2c通信是正常的,但是配置完寄存器参数,中断后读取的坐标相差太多,有些地方触摸都没有中断,崩溃:L,哪位大佬帮忙看一下
寄存器配置表是参考论坛里gt811的(https://www.armbbs.cn/forum.php? ... 166&highlight=gt911),只是修改了一些参数,写完配置后读取的数据是一样,说明是修改成功的
寄存器配置
static uint8_t gt9x_cfg_tab[] = {
0X00, //0x8047 版本号
0x20,0x03, //0x8048/8049 X坐标输出最大值800(0x320)
0xe0,0x01, //0x804a/804b Y坐标输出最大值480 (0x1e0)
0x01, //0x804c 输出触点个数上限
0x01, //0x804d XY不交换坐标 下降沿触发
0x00, //0x804e reserved
0x02, //0x804f 手指按下去抖动次数
0x08, //0x8050 原始坐标窗口滤波值
0x28, //0x8051 大面积触点个数
0x0A, //0x8052 噪声消除值
0x5A, //0x8053 屏上触摸点从无到有的阈值
0x46, //0x8054 屏上触摸点从有到无的阈值
0x03, //0x8055 进低功耗时间 s
0x05, //0x8056 坐标上报率
0x00, //0x8057 X坐标输出门上限
0x00, //0x8058 Y坐标输出门上限
0x00,0X00, //0x8059-0x805a reserved
0x00, //0x805b reserved
0x00, //0x805c reserved
0x00, //0x805d 划线过程中小filter设置
0x18, //0x805e 拉伸区间 1 系数
0x1A, //0x805f 拉伸区间 2 系数
0x1E, //0x8060 拉伸区间 3 系数
0x14, //0x8061 各拉伸区间基数
0x8C, //0x8062 、、
0x28, //0x8063 、、
0x0C, //0x8064 、、
0x71, //0x8065 驱动组A的驱动频率倍频系数
0x73, //0x8066 驱动组B的驱动频率倍频系数
0xB2, //0x8067 驱动组A、B的基频
0x04, //0x8068
0x00, //0x8069 相邻两次驱动信号输出时间间隔
0x00, //0x806a
0x00, //0x806b 、、
0x02, //0x806c 、、
0x03, //0x806d 原始值放大系数
0x1D, //0x806e 、、
0x00, //0x806f reserved
0x01, //0x8070 、、
0x00,0x00, //reserved
0x00, //0x8073 、、
0x00,0x00,0x00,
0x00,0x00,0x00, //0x8071 - 0x8079 reserved
0x50, //0x807a 跳频范围的起点频率
0xA0, //0x807b 跳频范围的终点频率
0x94, //0x807c 多次噪声检测后确定噪声量,1-63有效
0xD5, //0x807d 噪声检测超时时间
0x02, //0x807e 、、
0x07, //0x807f 判别有干扰的门限
0x00,0x00, //0x8081 reserved
0x04, //0x8082 跳频检测区间频段1中心点基频(适用于驱动A、B)
0xA4, //0x8083
0x55, //0x8084 跳频检测区间频段1中心点倍频系数
0x00, //0x8085 跳频检测区间频段2中心点基频(驱动A、B在此基础上换算)
0x91, //0x8086
0x62, //0x8087 跳频检测区间频段2中心点倍频系数
0x00, //0x8088 跳频检测区间频段3中心点基频(适用于驱动A、B)
0x80, //0x8089
0x71, //0x808a 跳频检测区间频段3中心点倍频系数
0x00, //0x808b 跳频检测区间频段4中心点基频(适用于驱动A、B)
0x71, //0x808c
0x82, //0x808d 跳频检测区间频段4中心点倍频系数
0x00, //0x808e 跳频检测区间频段5中心点基频(适用于驱动A、B)
0x65, //0x808f
0x95, //0x8090 跳频检测区间频段5中心点倍频系数
0x00, 0x65, //reserved
0x00, //0x8093 key1位置 0:无按键
0x00, //0x8094 key2位置 0:无按键
0x00, //0x8095 key3位置 0:无按键
0x00, //0x8096 key4位置 0:无按键
0x00, //0x8097 reserved
0x00, //0x8098 reserved
0x00, //0x8099 reserved
0x00, //0x809a reserved
0x00, //0x809b reserved
0x00, //0x809c reserved
0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00, //0x809d-0x80b2 reserved
0x00, //0x80b3 合框距离
0x00, //0x80b4
0x00,0x00, //0x80b6 reserved
0x06, //0x80b7
0x08, //0x80b8
0x0A, //0x80b9
0x0C, //0x80ba
0x0E, //0x80bb
0x10, //0x80bc
0x12, //0x80bd
0x14, //0x80be
0x16, //0x80bf
0x18, //0x80c0
0x1A, //0x80c1
0x1C, //0x80c2
0xFF, //0x80c3
0xFF, //0x80c4
0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,
0x00,0x00,0x00 ,
0x00, //0x80c5-0x80d4 reserved
0x00, //0x80d5
0x02, //0x80d6
0x04, //0x80d7
0x06, //0x80d8
0x08, //0x80d9
0x0A, //0x80da
0x0C, //0x80db
0x0F, //0x80dc
0x10, //0x80dd
0x12, //0x80de
0x13, //0x80df
0x14, //0x80e0
0x16, //0x80e1
0x18, //0x80e2
0x1C, //0x80e3
0x1D, //0x80e4
0x1E, //0x80e5
0x1F, //0x80e6
0x20, //0x80e7
0x21, //0x80e8
0xFF, //0x80e9
0xFF, //0x80ea
0xFF, //0x80eb
0xFF, //0x80ec
0xFF, //0x80ed
0xFF, //0x80ee
0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00, //0x80ef-0x80fe reserved
// 0x0B, //0x80ff 配置信息校验
// 0x01 //0x8100 配置以更新标记
};
更新参数
static bool gt9x_update_cfg(void)
{
uint8_t buf;
uint8_t i = 0;
bool ret;
ret = gt9x_write_regs(GT9x_CFGS, gt9x_cfg_tab, sizeof(gt9x_cfg_tab));
if (ret == false) /* send config */
{
gt9x_debug("send config failed\n");
return false;
}
buf = 0;
for (i = 0; i < sizeof(gt9x_cfg_tab); i++)
buf += gt9x_cfg_tab;
buf = (~buf) + 1;
buf = 1;
ret = gt9x_write_regs(GT9x_CHECK, buf, 2);
if (ret == false) /* send config */
{
gt9x_debug("send config failed\n");
return false;
}
for (uint32_t i = 0; i < CyclesPerUs*1000*10; i++)
__NOP();
return true;
}
测试下是不是垂直翻转,水平翻转之类的问题。 eric2013 发表于 2022-11-1 16:38
测试下是不是垂直翻转,水平翻转之类的问题。
直接跟原厂要了个配置表,现在可以了:lol 薪火相传 发表于 2022-11-2 09:09
直接跟原厂要了个配置表,现在可以了
{:8:}
可以的话,也分享下,方便其他群友看 分享也没用,不同的屏配置表不一样,除了分辨率其它最好别动,出厂前触屏厂会调试好参数的。我就吃过这亏。分辨率都可以不动读出来乘倍率也可以。 lg676041036 发表于 2022-11-6 19:56
分享也没用,不同的屏配置表不一样,除了分辨率其它最好别动,出厂前触屏厂会调试好参数的。我就吃过这亏。 ...
很有意义,我们早期的GT811就是我们魔改的,单独购置的GT811芯片。
现在到了GT911后,发现使用一体屏更划算,比单独买芯片划算,所以现在就没有用这种方式了。 你好,可以把这个配置文件分享我一下嘛,我也遇到了这个问题。 lyj41801 发表于 2023-11-2 15:15
你好,可以把这个配置文件分享我一下嘛,我也遇到了这个问题。
https://github.com/goodix/gt9xx_driver_android
页:
[1]