51也玩电容触摸,哈哈

2020-01-22 12:13发布

废话少说,先上效果视频
http://v.youku.com/v_show/id_XMjg1MjcyMDMy.html

http://v.youku.com/v_show/id_XMjg1MjgzMzY4.html

再来张效果pp


(原文件名:触摸.jpg)

单片机选用stc12c5A60s2,1T的就可以,下面是原理图


(原文件名:原理图.jpg)

点击此处下载 ourdev_658261IV6PGT.pdf(文件大小:565K) (原文件名:核心板原理图.pdf)
程序贴出来,顺便工程一并上传上来
#include <reg52.H>
/*
P0.0为触摸按键
*/
sfr P0M1 = 0x93; //  
sfr P0M0 = 0x94; //
sbit TOUCH=P0^0;
sbit LED=P3^3;
void delay(void)
{
volatile int i=3553;
while(i--);
}
void main(void)
{
        P0M1=0X01;        //配置P0为开漏输出
        P0M0=0X01;        //配置P0为开漏输出

   while(1)
   {
              TOUCH=0;
                 delay();
   TMOD=0X00;         
   TH0=0;
   TL0=0;
   TR0=1;
           TOUCH=1;
           while(!TOUCH);
           TR0=0;
           delay();
                if(TL0>16||TL0<13)
                P1=~P1;
   }
}

点击此处下载 ourdev_658262VN5K05.rar(文件大小:19K) (原文件名:cool toutch.rar)
原理和stm8-discovery小板一样,拉低P0.0口,由于存在分布电容,P0.0口靠1兆上拉电阻上拉到TTL所认为的高电平,这段时间长短即是判断电容大小的依据,既然知道了时间长短,也就知道了按键是否按下。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
77条回答
zzz1367
1楼-- · 2020-01-29 20:14
 精彩回答 2  元偷偷看……
wkman
2楼-- · 2020-01-30 00:32
回复【25楼】gongnn 魔法师
回复【6楼】2233223 雪之爱
但是如果一个单片机像avr那样容易悲剧,还不如51呢,起码很多种
-----------------------------------------------------------------------

是的。

独门暗器就怕断货,呵呵。支持51,(不一定是stc)。。。
BDXing6
3楼-- · 2020-01-30 00:43
我以为真是电容触摸罗,其实这只能叫感应触摸,真如楼主说的,要感应了周围电场才起作用,而周围电场最强的只怕还是交流电,真的电容触摸不是这样的。也就是说,在空旷地(周边无交流电场)的条件下也起作用的才叫电容触摸。
hefq
4楼-- · 2020-01-30 02:07
学习
BXAK
5楼-- · 2020-01-30 06:14
回复【45楼】28571840 老实人
-----------------------------------------------------------------------

像水滴、一些小虫子之类,不会被误发,
加隔层的话不能太厚(用STC实验 1平方cm的金属片 1mm隔层就没作用了,隔层可以帖透明胶布、电线绝缘胶布之类)
lxa0
6楼-- · 2020-01-30 09:57
 精彩回答 2  元偷偷看……

一周热门 更多>