历史上的今天
今天是:2025年08月04日(星期一)
2018年08月04日 | PIC单片机之电容触摸按键
2018-08-04 来源:eefocus
PIC单片机电容触摸按键,最方便的地方就是外围电路简单,不需要任何外围元器件。只要从引脚连接出一条线到焊盘上即可。
电容按键触摸的原理
PIC单片机通过松弛振荡器是一个自激 RC 振荡器,它使用 2 个带 SR 锁存的比较器来改变感应电容器电压的充电方向,进行充电或者放电。通俗点说就是在管脚上产生了一个三角波。当手指按上去后就引入了一个额外的电容 使得 充放电的周期沿长。也就是说人的手靠近的时候充电时间沿长了,然后放电时间也加长了。这样我们就可以同过判断 RC震荡频率的快慢来判断 是否有手指按下。

如何判断RC震荡频率的快慢呢?
这就和我们平时判断一个人做事情快慢是一样的。比如我们给个10S的时间,让两个人吃薯条如果吃的越多的,就说明他的吃东西的频率越快反之越慢。
官方的资料给了个比较简单的实现方式。 由TIMER1来完成计数也就是充放电的次数,由TIMER0来计时。TIMER0每隔段时间触发一次中断,来读取TIMER1充放电的次数。
如果采集的的次数明显小于之前的次数。那就说明充放电频率降低了。有人的手按下了。这就是判断的大致原理。
官方提供的简单按钮检测方式(大概就这意思)
首先要有三个变量 unsigned int average;//平均值
unsigned int raw;//当前值
unsigned int trip;//按下时频率与平均值得差
中断程序
ISR{
...
if(raw < (average - trip))
// 按钮按下
else
//按钮没有按下
//对当前读数进行平均
average = average*15/16+raw/16;
}
史海拾趣
|
监视器作为矩阵控制系统的监视器终端时,为什么在矩阵控制器切换图像是会出现一段时间的不同步现象? 在监控系统中,每路前端设备(如摄像机)等输出的图像信号中的场同步信号如果存在相位差,则矩阵控制器切换各路图像信号时,监视 ...… 查看全部问答> |
|
急:请问TLP627次级是否可以接24V直流呢,输入端TTL电平是否可以驱动 如题,因为需要控制24V直流考虑TLP627,负载大概1-5K,不知道是否可以实现 输入端想用TTL控制,电阻1.1K,不知道有没有大了 多谢啦… 查看全部问答> |
|
哪位好心的大侠给个51单片机读写AT24C32的具体例子吧!!! 最好是汇编的,C语言的也行,小弟谢过了先! 小弟邮箱 Rufenguu@yahoo.com.cn… 查看全部问答> |
|
EVC 下 这样使用Format 有问题吗 ? void CTestDlg::OnResult() { UpdateData(true); m_RESULT.Format(_T(\"%s\"),\"123\"); UpdateData ...… 查看全部问答> |
|
各位大侠帮帮忙啊! 我把启动盘插入后,显示器上显示:v1.6+++++++++++++++。几行加号以后就停在那里不动了。 我的目标机处理器是p3的,网卡类型是Intel 8255x ethernet interface. 我猜可能是启动参 ...… 查看全部问答> |
|
很抱歉,这一周,我直到今天才发这个帖子。 而上一周的内容也很稀少。 实在是因为弄M25P80这个芯片的时候遇到点麻烦。 如今想起来,我想结论应该是 我猜对了第一脚,可是第一个使用的芯片却可能被我弄坏了——也或者,我的人品真的太差了,又是 ...… 查看全部问答> |
|
(注:相机不太好,而且是黑天拍摄,效果很差勿喷) 其实这个扩展板上并无实质性东西,主要扩展是micro SD卡座,W25Q32(FLASH,可存个字库啥的),富士通2K FRAM(用来存个参数啥的),一路音频放大,红外接收和发射,USB转串口。 板子到手已经 ...… 查看全部问答> |




