各位好,
我们自己做的板子,软件版本为06.00,接了10.1寸的屏,显示正常,但是触摸屏没有反应,光标也没出现,请问下,触摸屏应该怎么配置?
在board-am335xevm.c中,找到的触摸屏初始化相关的内容只有下面这些,是不是只要改这里就可以了?为什么没有配置管脚?
static struct tsc_data am335x_touchscreen_data = {
.wires = 4, .x_plate_resistance = 200, .steps_to_configure = 5,
};
static struct adc_data am335x_adc_data = {
.adc_channels = 4,
};
static struct mfd_tscadc_board tscadc = {
.tsc_init = &am335x_touchscreen_data,
.adc_init = &am335x_adc_data,
};
static void mfd_tscadc_init(int evm_id, int profile)
{
int err;
err = am33xx_register_mfd_tscadc(&tscadc);
if (err)
pr_err("failed to register touchscreen device\n");
}
Steven Liu1:
先确认一下你在板级的配置文件中是否有使能tsc这个模块。你上面给出的这些都是实现,要是在board-am335xevm.c中根本就没有使能的话,上面的改动也是白搭。
leo chen:
还有这些地方
1、
static struct pinmux_config tsc_pin_mux[] = { {"ain0.ain0", OMAP_MUX_MODE0 | AM33XX_INPUT_EN}, {"ain1.ain1", OMAP_MUX_MODE0 | AM33XX_INPUT_EN}, {"ain2.ain2", OMAP_MUX_MODE0 | AM33XX_INPUT_EN}, {"ain3.ain3", OMAP_MUX_MODE0 | AM33XX_INPUT_EN}, {"vrefp.vrefp", OMAP_MUX_MODE0 | AM33XX_INPUT_EN}, {"vrefn.vrefn", OMAP_MUX_MODE0 | AM33XX_INPUT_EN}, {NULL, 0},};
2、
static void tsc_init(int evm_id, int profile){ int err;
setup_pin_mux(tsc_pin_mux); err = am33xx_register_tsc(&am335x_touchscreen_data); if (err) pr_err("failed to register touchscreen device\n");}
3、
{tsc_init, DEV_ON_DGHTR_BRD, (PROFILE_0 | PROFILE_1 | PROFILE_2 | PROFILE_7) },
Sean:
回复 leo chen:
感谢您的回复,
换的是电容屏,要换驱动,刚开始没搞清楚,还有,我想问一下,系统的启动界面颜色偏蓝,但是进入qt图形界面颜色就正常,LCD参数需要改哪里?
leo chen:
回复 Sean:
这是没初始化好的原因吧,如果QT的颜色是正常的,我感觉没影响啊
Jian Zhou:
回复 Sean:
电容屏的接口是I2C的么?我们的AM335x是可以配合I2C 电容屏驱动正常工作的。
系统的启动界面偏蓝,会不会是背光的问题呢?