使用这种调试方式的优点是简单,效率较高,自由度高,但是滑条什么就比较麻烦了.大致判断如下几行,先初始化好,然后执行,就可以,你可以想象他是个ADC.
HAL_TSC_Start(&TscHandle); HAL_TSC_PollForAcquisition(&TscHandle); if (HAL_TSC_GroupGetStatus(&TscHandle, TSC_GROUP1_IDX) == TSC_GROUP_COMPLETED) { uhTSCAcquisitionValue += HAL_TSC_GroupGetValue(&TscHandle, TSC_GROUP1_IDX); } HAL_TSC_Stop(&TscHandle); if(abs(uhTSCAcquisitionValue - 1850)< 50 ){ BSP_LED_On(LED4); }else{ BSP_LED_Off(LED4); }
得到的数值表示在周期内,能充电的次数(实际上有差异),这样就能知道按键是不是按下去.其他可以看看原子实现的TIM 电容触摸按键.原理一样.
初始化参考.
TSC->CR = 0x11FE60C1; TSC->IOHCR = 0xFFFFF933; TSC->IOCCR = 0x00000244; TSC->IOSCR = 0x00000488; TSC->IOGCSR = 0x00000007; TSC->IER = 0x00000000; TSC->ICR = 0x00000003;