This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP430F5529的触摸按键



我有一块F5529的开发板,上面有触摸按键,我想调试下,下载了例程进去可以,可是我按照例程的说明。先写了比较器B,测量CBOUT引脚(P1.6),可是怎么也不震荡,不管按键按没按下都应该有震荡啊,也不知道是不是我的比较器B配置错了,我是按照例程写的,谁有比较器的成熟的例程或者资料告诉下也行,再就是我把你们例程的触摸按键的程序导入了我的项目中,可是已编译就出错啊,也不知道哪儿有问题,提示我的结构体的有个变量未定义!!我贴图了你们看下 啊!

提个建议,例程尽量简单点写,最好加点中文注释,尤其是方便我们调用也行啊!!!

  • 首先您的是什么项目?主要是touch key的项目么?有多少个touch key需要使用?

    其次,使用比较器B,你可以直接使用我们的库,只需要在structure.c里把引脚配置好。从您贴的图看,应该要去看struct Element这个结构体里看。

  • 我就是从你们的例程里面带的“CTS文件:包含触摸按键应用程序资源库;”,就是把这里面所有的c文件和h文件都导入了我得项目,编译时候出现的错误的!!!

    我觉得你们是不是还在别的头文件里面定义了有关这个结构体的什么啊???

    另外我根据你们的介绍,准自己调试下,程序如下:

    uint16_t Capt_jiance()
    {
     //uint8_t i;
     uint16_t j=0;
     CBCTL2 = CBREF14+CBREF13 + CBREF02;   // 参考电阻位
     CBCTL1 = CBON + CBF;                 // 开启比较器B,比较器输出经过滤波器
     CBCTL3 |= CBPD1;                            // 禁用CBPD位,输入缓冲区禁止,降低电流的消耗
     CBCTL2 |= CBRS_1;                           // 打开参考电压vcc
     CBCTL0 = CBIMEN + CBIMSEL_1 ;      // 负端输入,CB1输入
     TA1CCR0 = 20;       //设置定时器初始值
     TA1CTL = TASSEL_0+TACLR+MC_1;     // TA1CLK,计数内容清零, 增计数模式
     TA1CTL &= ~TAIFG;        // 清除中断标志位
     while(!(TA1CTL & TAIFG))               // 判断定时时间到了没有,没到没个时钟+1,到了输出计数
     {
      j++;
     // if(TA1CTL & TAIFG)while(1);
     }
     while(1);
     return j; // 将j值进行保存
    }

    我把比较器B都配置了,可是我用示波器测量的时候没有频率触发啊,也不知道哪儿错了啊!!!

    我做的是一个波形采集和存储装置,用的是你们的F5529的开发板,准备用开发板的几个触摸按键进行设置和功能。

  • COMP_B配置没啥问题。

    确定引脚配置为比较器模式。确定全局中断打开。建议使用库函数,所有的头文件都在库函数里有定义。

  •          你好,我已经配置了,都是按照资料介绍的配置的,其中P6口配置为输入口,而且P6SEL都配置为“1”了。这儿不明白的我没有用到中断,为啥还要开中断,除了开全局中断外还要开哪个中断,定时器的?你们的资料和例程里面也没有介绍啊!!

            再就是使用你们的库函数了,我只是添加了其中的CTS中的几个文件,我只想使用你们的关于触摸按键的函数和头文件,可是在编译的时候提示我有错误,就是在开始的时候我的贴图,我看了是结构体哪儿的错误,我没有任何的修改啊!!!我总不至于直接用你们的例程吧,里面有好多的函数我用不到啊,你们可以制作写独立的相关功能的函数啊!!!

  • 很多函数是在预定义里的,用不到的函数是不会编译进去。

  • 你好,CCS安装后已经带了F5529开发板的例程。

    请查看附件;

    完整的例程和说明文档。

  • 我看了你们的例程了,可以实现啊,可是我想自己写一个,我也明白了你们介绍的触摸按键的原理了,就是利用比较器B震荡后,通过定时器A开采集震荡频率,可是我按照你们介绍的配置的比较器后,不震荡啊,下载你们的例程他就震荡,我不知道我的比较器配置的哪儿不对啊,有没有一个单独的就是配置的触摸按键的那个比较器震荡的例程啊!!!随便一个触摸按键震荡就可以了啊!!!!

  • 触摸按键的振荡可以用MSP430G2xx2/3的Pinos或者COMPA+/COMPB。原理都是类似,但是不仅是只要振荡就OK,还有其他的一些算法处理,比如阈值的判断,跟踪。库里的函数不只是振荡就这么简单的内容。