打印
[技术问答]

请教如何调试SC92F8371触控功能

[复制链接]
1343|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wuzengxian|  楼主 | 2020-4-12 16:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家好,我是新手,刚开始调试C92F8371的触控功能,调了两天了,没有眉目,我是在弹簧上加块塑料板来调试的,做四个按键,由于占用了烧录口,所以现在选的是两个按键,我应该用T1库还是T2库呢,touchkey tool我选弹簧按键还是隔高按键呢,我静态码烧进去,在电脑上是可以生成那个配置文件的,但是导入我的程序中,怎么都不好用,我是参照的1010的代码。用的TK12,TK13口,按说按键判断应该是0X00001000,0X00002000,吧,反正是LED灯怎么都不亮,STARTUP.A51是不是要改两个数据呢,分别改多少呢,我改为0x100,0x80,还是没反应//*************************************************************************************************
请高人指点
我的qq是42157411

使用特权

评论回复
评论
knk 2020-4-12 21:23 回复TA
看一下触摸库应用指南,了解几个触摸库的区别你就知道要选哪个了/ 

相关帖子

沙发
szkeinew| | 2020-4-12 17:57 | 只看该作者
本帖最后由 szkeinew 于 2020-4-12 19:44 编辑

你能用官方的触控调试软件可以通过测试,那触摸导出数据不会错,用T1库吧,我都是用T1库的。原因有多种,例如一,触按钮库是否选用SC92F8371的库,二,可能你没有在检查完成所有的键时重新启动扫描,这样是读取不了正确数据的。给你一个参考例程。
//按一下灯亮,再按一下灯灭例程
#define  LED11 P00
#define  LED12 P01
void main(){
     unsignet long touch_key_value =0;        //键值
         bit touch_down_flag = 0; //触摸按下标志
    P1CON  = 0xff;
    P1PH=0xcf;
    P1=0xff;
  
    P0CON =0xff;
    P0PH =0xff;
    P0  = 0xff;
     TouchKeyInit();//初始化一次
     while(1){
                if(SOCAPI_TouchKeyStatus & 0x80){  //全扫描完成标志置1
                          SOCAPI_TouchKeyStatus &= 0x7f; //清除全扫描完成标志
                                touch_key_value = TouchKeyScan(); //读取建值
                                if(!touch_down_flag){
                                        switch(touch_key_value){
                                                case 0X00001000:  //插入你想要的代码,如点亮LED1,低电平有效
                                                                                  LED11 = ~LED11;
                                                                                  touch_down_flag = 1; //按下触摸键标志
                                                                                  break;
                                                case 0X00002000:  //插入你想要的代码,如点亮LED2,低电平有效
                                                                                  LED12 = ~LED12;
                                                                                  touch_down_flag = 1; //按下触摸键标志
                                                                                  break;
                                        }
                                }
                                if(touch_key_value == 0X00000000){
                                         touch_down_flag = 0;
                                }
                           TouchKeyRestart(); //重新扫描一次
                }
     }
}


如果能解决了,请给我的参赛作品点赞,一共三个帖子。一,【赛元95F】——低功耗电容式接近触摸感应水龙头(一)。二,【赛元95F】——低功耗电容式接近触摸感应水龙头(二)。三【赛元95F】——低功耗电容式接近触摸感应水龙头(三)。谢谢!
    或者你发代码上来。

使用特权

评论回复
板凳
rgjinxuan| | 2020-4-13 09:29 | 只看该作者
有两种触摸库  一个是高灵敏度  一个是高可靠性 这点赛元讲的不好 我一开始也搞糊涂   如果用调试脚  只能烧录好  看结果再调试   所以赛元讲5 分钟搞精通触摸那是除牛X的    5 天能把赛元的搞清楚  也是高手了  不过中国人就是喜欢吹牛X

使用特权

评论回复
地板
rgjinxuan| | 2020-4-13 09:33 | 只看该作者
讲老实话   赛元的使用 比HOLTEK  比亚迪 芯帮的要多花一点时间  文档写的不好  不过赛元的FAE  水平还是很高的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

8

帖子

1

粉丝