时间:25-04-24
目录
免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈
学习目标
运行结果
内容
硬件介绍
电容
配置
代码
遇到的问题
总结
学习目标
运行结果
https://www.php.cn/link/5d40c4d766944f12591f840c4d72d7ac
电容触摸按键?还是称之为卫生纸按键吧!
内容
硬件介绍 电容
配置
代码
代码语言:javascript
代码运行次数:0
运行复制#include "tpad.h"#include "delay.h"#include <stdio.h><h1>define TPAD_ARR_MAX_VAL 0XFFFFFFFF //最大的ARR值(TIM2是32位定时器)</h1><p>vu16 tpad_default_val=0; // 空载时触摸按键的默认值</p><p>// 升序排序int cmp(const void<em> a, const void</em> b) {return <em>(int </em>)a - <em>(int </em>)b;}</p><p>//初始化触摸按键//获得空载的时候触摸按键的取值.u8 TPAD_Init(u8 psc) {u16 buf[10];u16 temp;u8 j,i;</p><pre class="brush:php;toolbar:false">TIM2_CH1_Cap_Init(TPAD_ARR_MAX_VAL,psc-1); //设置分频系数for(i=0;i<10;i++) { buf[i]=TPAD_Get_Val(); delay_ms(10);}qsort(buf,10,2,(void*)cmp);tpad_default_val=buf[5]; //取中间值for(i=0;i<10;i++) { temp=TPAD_Get_Val(); if(temp>TPAD_ARR_MAX_VAL/2) return 1; //初始化遇到超过TPAD_ARR_MAX_VAL/2的数值,不正常!}return 0;登录后复制