涂鸦OS版本3.11.2 T5开发板 touch功能怎么用呀?
Posted: 2025年 Mar 28日 14:57
读到的touch状态一直是2,不知道怎么使用
Code: Select all
VOID_T hly_key_touch_init()
{
UINT32_T cap_out;
touch_config_t touch_config={
.detect_range=TOUCH_DETECT_RANGE_8PF,
.detect_threshold=TOUCH_DETECT_THRESHOLD_6,
.sensitivity_level=TOUCH_SENSITIVITY_LEVLE_0
};
bk_touch_gpio_init(BK_TOUCH_1);
bk_touch_enable(BK_TOUCH_1);
bk_touch_config(&touch_config);
bk_touch_calibration_start();
cap_out = bk_touch_get_calib_value();
TAL_PR_NOTICE("touch cali-1 %d",cap_out);
if (cap_out >= 0x1F0) {
touch_config.detect_range = TOUCH_DETECT_RANGE_12PF;
bk_touch_config(&touch_config);
bk_touch_calibration_start();
cap_out = bk_touch_get_calib_value();
TAL_PR_NOTICE("touch cali-2 %d",cap_out);
if (cap_out >= 0x1F0) {
touch_config.detect_range = TOUCH_DETECT_RANGE_19PF;
bk_touch_config(&touch_config);
bk_touch_calibration_start();
cap_out = bk_touch_get_calib_value();
TAL_PR_NOTICE("touch cali-3 %d",cap_out);
if (cap_out >= 0x1F0) {
touch_config.detect_range = TOUCH_DETECT_RANGE_27PF;
bk_touch_config(&touch_config);
bk_touch_calibration_start();
cap_out = bk_touch_get_calib_value();
TAL_PR_NOTICE("touch cali-4 %d",cap_out);
if (cap_out >= 0x1F0) {
TAL_PR_NOTICE("Calibration value is out of the detect range, the channel cannot be used, please select the other channel!\r\n");
return;
}
}
}
}
}
读取状态线程
Code: Select all
STATIC VOID_T key_task(VOID_T* param)
{
UINT8_T value=0;
UINT32_T cap_out;
UINT32_T touch;
while(1)
{
tkl_gpio_read(KEY_PIN,&value);
if(value==0)
{
if(gb_key_on_time<KEY_HOLD_TIME)
{
gb_key_on_time+=10;
}
if(gb_key_on_time==KEY_HOLD_TIME)
{
gb_key_on_time++;
key_action(KEY_VALUE_PRESS);
}
}
else if(gb_key_on_time>0)
{
if(gb_key_on_time<KEY_HOLD_TIME)
{
key_action(KEY_VALUE_CLICK);
}
gb_key_on_time=0;
}
cap_out = bk_touch_get_calib_value();
touch = bk_touch_get_touch_status();
TAL_PR_NOTICE("cap_out=%d touch=%d",cap_out,touch);
tal_system_sleep(10);
}
}
TAL_PR_NOTICE("cap_out=%d touch=%d",cap_out,touch);输出的值一直都是不变的,触摸P13,P13接地,P13接VCC都没有任何变化.
Code: Select all
[03-28 14:57:12 ty N][402][hly_key.c:74] cap_out=430 touch=2
[03-28 14:57:12 ty N][402][hly_key.c:74] cap_out=430 touch=2
[03-28 14:57:12 ty N][402][hly_key.c:74] cap_out=430 touch=2
[03-28 14:57:12 ty N][402][hly_key.c:74] cap_out=430 touch=2
[03-28 14:57:12 ty N][402][hly_key.c:74] cap_out=430 touch=2
[03-28 14:57:12 ty N][402][hly_key.c:74] cap_out=430 touch=2
[03-28 14:57:12 ty N][402][hly_key.c:74] cap_out=430 touch=2
[03-28 14:57:12 ty N][402][hly_key.c:74] cap_out=430 touch=2