sky-Hawk where 发表于 2012-9-24 21:38:05

PSoC3 FirstTouch Starter Kit 例子源代码之CapSense Slider简单分析

本帖最后由 wangku001wei 于 2012-9-24 21:37 编辑

依然是简单分析

首先看原理图
使用了CapSense组件
注意 由于我们在General选项卡中选择了 IDAC disable,use external Rb在具体配置中 出现了sCmod 和 sRb0在Slidrs 中添加了Slider Name (slider)并设置了5个元素,线性方式,64精度
在具体引脚配置中 出现了LS_slider_e0 到 LS_slider_e4
并且和实际电路对应代码分析
/*************************************************************************************                              操作原理程序中,所有的滑动传感器连续判断手指在滑动器上的位置发现手指的位置后,点亮对应位置处的LED;否则若没有发现手指,熄灭所有的LED    /*************************************************************************************/
#include <device.h>/************************************************************************************** 3: Scan all slider sensors continuously and report finger position* 主函数的功能:* 1: 关闭所有的LED* 2: 启动电容感应组件* 3: 连续扫描所有的滑动传感器并指示手指的位置* 4: 根据手指在滑动传感器上的位置点亮对应位置的LED灯 /*************************************************************************************/
#define NUM_LED (3)
void main(){    uint8 CentroidPosition=0xFF;    uint8 LedData=0;    uint8 TempVar=0;
    /*使能全局中断*/    CYGlobalIntEnable;
    /*关闭LED灯*/    LED_Control_Reg_Write(LedData);
    /*启动并且初始化电容感应传感器*/    CapSenseSlider_Start();    CapSenseSlider_CSHL_InitializeAllBaselines();
    while(1)    {      /*扫描并更新电容滑动感应传感器S */      CapSenseSlider_CSD_ScanAllSlots();      CapSenseSlider_CSHL_UpdateAllBaselines();
      /* 得到滑动器上手指的圆心位置 */      CentroidPosition = (uint8)CapSenseSlider_CSHL_GetCentroidPos(CapSenseSlider_CSHL_LS_SLIDER);
       /* 如果在滑动器上发现了手指,则点亮对应位置处的LED*/      LedData = 0;      if(CentroidPosition != 0xFF)      {            /* 得到手指的位置,并转换为LED的显示位置 */            LedData = 1 << (CentroidPosition >> NUM_LED);      }
       /* 更新LED灯的状态*/      LED_Control_Reg_Write(LedData);    }}CapSense组件的使用 可参考帮助文档 在配置对话框框中单击Data Sheet即可出现一个PDF

由于只是针对代码的简单分析 对组件的使用还不是很了解接下来准备阅读ADC 和 CapSense 组件的说明文档

sky-Hawk where 发表于 2012-9-25 09:01:18

分析不错~~~顶个~

sky-Hawk where 发表于 2012-9-24 21:49:44

不错,加油啊,到时帮你出个全集;P
页: [1]
查看完整版本: PSoC3 FirstTouch Starter Kit 例子源代码之CapSense Slider简单分析

Baidu
map