0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用触摸传感器和8051微控制器控制LED灯

科技观察员 来源:circuitdigest 作者:Sourav Gupta 2022-09-07 15:13 次阅读

在这个项目中,我们将触摸传感器与 8051 微控制器 AT89S52 连接。如果您是 8051 微控制器的新手,那么您可以从LED 闪烁开始 8051。

什么是电容式触摸传感器?

电容式触控作用于我们身体上可用的静电荷。屏幕已经充满了电场。当我们触摸屏幕时,由于流经我们身体的静电荷形成闭合电路。此外,软件决定要执行的位置和动作。电容式触摸屏不适用于手套,因为手指和屏幕之间不会有任何传导。

此项目中使用的触摸传感器

本项目使用的触摸传感器为电容式触摸传感器模块,传感器驱动基于驱动IC TTP223。IC TTP23的工作电压为 2.0V 至 5.5V ,触摸传感器的电流消耗非常低。由于价格低廉、电流消耗低且易于集成支持,采用 TTP223 的触摸传感器在其细分市场中广受欢迎。

pYYBAGMYRDiAZq4PAAMc3AxFC38466.png

在上图中,传感器的两侧都显示了引脚图清晰可见的位置。它还有一个焊接跳线,可用于根据输出重新配置传感器。跳线为 A 和 B。默认配置或在焊锡跳线的默认状态下,触摸传感器时输出由低变为高。但是,当设置跳线并重新配置传感器时,当触摸传感器检测到触摸时,输出会改变其状态。触摸传感器的灵敏度也可以通过改变电容来配置。

下图显示了不同跳线设置下的不同输出 -

pYYBAGMYRDOAUayDAAAPR-M7xnc945.png

对于这个项目,传感器将在出厂发布条件下可用的默认配置中使用。在这个项目中,触摸传感器将用于控制使用 AT89S52 微控制器的交流灯泡。

继电器与 8051 微控制器连接。继电器的引脚排列如下图所示 -

poYBAGMYRDCAKT_4AAI3cZcFHZY948.png

NO常开,NC常接。L1 和 L2 是 Relay 线圈的两个端子。未施加电压时,继电器关闭,POLE 与 NC 引脚连接。当电压施加在线圈端子上时,继电器的 L1 和 L2 接通,POLE 与 NO 连接。因此,可以通过改变继电器的操作状态来打开或关闭 POLE 和 NO 之间的连接。

所需材料

AT89S52 8051 微控制器

标准立方继电器 - 5V

11.592 MHz 晶振

33pF 电容器 - 2 个

2k电阻-1个

4.7k 电阻器 - 1 个

10uF电容

BC549B晶体管

TTP223 传感器

1N4007 二极管

带灯座的灯泡

面包板

5V供电,一个手机充电器即可工作。

很多跳线或 berg 线。

AT89S52 编程环境,带有 Programmer Kit 和带有编译器的 IDE

电路原理

使用触摸传感器和 8051 控制光的示意图如下图所示,

poYBAGMYRCmARV71AAB9b9iouIM301.png

晶体管用于打开或关闭继电器。触摸传感器与 AT89S52 微控制器单元相连。该电路是使用面包板构建的。

pYYBAGMYRC2ACLKeAAO97-yc2gM804.png

编程 Atmega AT89S52 微控制器

最后给出完整的 8051 代码。在这里,我们解释了代码的几个部分。如果您是 8051 微控制器的新手,那么首先学习如何对 8051 微控制器进行编程。

以下代码行用于将继电器和触摸传感器与 8051 微控制器集成。REGX52 是 AT89S52 微控制器单元的头文件。还声明了一个延迟函数。

#include

// RELAY Pin 
sbit RELAY = P1^0; // 引脚 P1.0 被命名为 RELAY

// 触摸传感器引脚
sbit Touch = P1^1; // Pin P1.1 被命名为 Touch Sensor

//函数声明
void delay(char ms);

触摸和继电器初始化为 0。触摸传感器将逻辑 0 更改为 1。如果在激活触摸传感器时语句为真,则继电器的状态会发生变化。然而,为了准确检测触摸,使用了去抖动延迟。

// 主函数
void main(void) 
{

   继电器 = 0;

     触摸 = 0; 
   while(1){ 
             if (Touch == 1){ 
                   delay(15); // 去抖动延迟
                   if (Touch == 1){ 
                         RELAY = !RELAY; //切换继电器引脚
                         延迟(30);
                   }                       
            }                
     } 
}

下面,编写延迟函数。该函数以毫秒格式接受输入,并使用两个for循环生成延迟。这种延迟不太准确,但可以接受,主要取决于时钟周期时序。

/*延迟相关函数*/ 
void delay(char ms){
    整数a,b;
    对于(a=0;a<1295;a++){
            对于 (b=0; b

这个触摸控制的灯电路在面包板上进行了测试,并连接了一个低功率灯泡。
/* 名称:touchsensor.c

* 目的:用于电路文摘。与 8051 (AT89S52) 连接的触摸传感器

* 作者:苏拉夫古普塔

* 日期 : 22-03-19

* 修订:无

*/

#include



// 继电器引脚

位继电器 = P1^0; // 引脚 P1.0 被命名为 RELAY

// 触摸传感器引脚

sbit 触摸 = P1^1; // Pin P1.1 被命名为 Touch Sensor



//函数声明

无效延迟(字符毫秒);



// 主功能

无效主要(无效)

{

继电器 = 0;

触摸 = 0;

而(1){

如果(触摸 == 1){

延迟(15);// 去抖动延迟

如果(触摸 == 1){

继电器=!继电器;// 切换继电器引脚

延迟(30);

}

}

}

}



/*延时相关函数*/



无效延迟(字符毫秒){

整数a,b;

对于(a=0;a<1295;a++){

对于 (b=0; b
}

}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7437

    浏览量

    150825
  • led灯
    +关注

    关注

    22

    文章

    1592

    浏览量

    107729
  • 触摸传感器
    +关注

    关注

    0

    文章

    121

    浏览量

    23041
收藏 人收藏

    评论

    相关推荐

    8051微控制器架构的简要说明

    此前已经介绍了关于8051微控制器基础知识和引脚图说明等相关知识,而在本文中,将重点介绍8051微控制器的硬件方面内容,如 I/O 端口、RAM、ROM、定时
    发表于 08-23 14:45 2700次阅读
    <b class='flag-5'>8051</b><b class='flag-5'>微控制器</b>架构的简要说明

    8051微控制器的基础知识

    8051微控制器是嵌入式系统、消费电子、汽车等各个领域中最流行和最常用的微控制器之一,技术上称为Intel MCS-51架构。8051微控制器
    发表于 09-12 17:32 3209次阅读
    <b class='flag-5'>8051</b><b class='flag-5'>微控制器</b>的基础知识

    #硬声创作季 微控制器原理:8051微控制器的技术发展

    微控制器mcu8051
    Mr_haohao
    发布于 :2022年11月02日 14:47:16

    [分享]C8051F410属于Silicon Labs的小外型微控制器系列

      C8051F410属于Silicon Labs的小外型微控制器系列。C8051F410在极小的封装中集成了高速8051 CPU、Flash存储
    发表于 04-21 11:17

    智能热传感器如何与微控制器结合使用?

    智能热传感器是什么?智能热传感器如何与微控制器结合使用?为什么流行的存在传感器通常不是最佳的感测模式?
    发表于 06-15 06:30

    用新型微控制器降低8051系统的功耗

    用新型微控制器降低8051系统的功耗
    发表于 05-04 13:37 18次下载

    8051微控制器和82527独立CAN总线控制器为核心组成

    介绍一种以8051微控制器和82527独立CAN总线控制器为核心组成的CAN总线智能传感器节点的设计方法,并给出其硬件原理图和初始化程序。
    发表于 07-17 08:41 26次下载

    触摸感应微控制器(Silicon Labs)

    触摸感应微控制器(Silicon Labs) Silicon Laboratories宣布,该公司推出QuickSense产品线以进军人机界面市场,其全新的C8051F800微控制器
    发表于 11-04 08:40 614次阅读

    基于ARM微控制器的动态倾角传感器设计

    本内容提供了基于ARM微控制器的动态倾角传感器设计,欢迎大家下载
    发表于 09-06 14:33 119次下载
    基于ARM<b class='flag-5'>微控制器</b>的动态倾角<b class='flag-5'>传感器</b>设计

    飞思卡尔TSSMCU: 面向微控制器的Xtrinsic触摸传感

    触摸传感技术消除了按钮和开关的机械磨损,有助于延长产品寿命。我们的 Xtrinsic 触摸传感软件使我们产品组合内的 100 多个微控制器
    发表于 01-22 14:22 1114次阅读
    飞思卡尔TSSMCU: 面向<b class='flag-5'>微控制器</b>的Xtrinsic<b class='flag-5'>触摸</b><b class='flag-5'>传感</b>

    基于MSP430微控制器的电容触摸实现方案和LED PWM驱动

    本应用文档介绍了使用MSP430微控制器实现电容触摸转轮和多路独立LED的PWM软件驱动技术。方案通过4路I/O 端口实现电容触摸转轮控制
    发表于 06-18 10:23 1365次阅读
    基于MSP430<b class='flag-5'>微控制器</b>的电容<b class='flag-5'>触摸</b>实现方案和<b class='flag-5'>LED</b> PWM驱动

    8051微控制器引脚说明与基本电路

    此前已经介绍过8051微控制器的基础知识,包括它的历史、特性、封装和一些实际应用。在本文中,小编将将继续介绍关于8051微控制器引脚图、引脚说明以及其他一些细节内容,包括
    发表于 08-23 15:53 7900次阅读
    <b class='flag-5'>8051</b><b class='flag-5'>微控制器</b>引脚说明与基本电路

    使用Arduino控制触摸传感器点亮LED

    电子发烧友网站提供《使用Arduino控制触摸传感器点亮LED.zip》资料免费下载
    发表于 02-06 09:28 4次下载
    使用Arduino<b class='flag-5'>控制</b><b class='flag-5'>触摸</b><b class='flag-5'>传感器</b>点亮<b class='flag-5'>LED</b>

    将基于8051微控制器连接到SCI端口

    本应用笔记介绍如何配置高速微控制器或超高速闪存微控制器的UART,以便与支持SCI的设备通信。它首先简要讨论了SCI和UART模块之间的差异,并以一个实际示例结束,说明如何配置基于8051的达拉斯半导体
    的头像 发表于 06-13 15:48 705次阅读
    将基于<b class='flag-5'>8051</b>的<b class='flag-5'>微控制器</b>连接到SCI端口

    电容式传感器微控制器 CTSU电容触摸介绍指南

    电子发烧友网站提供《电容式传感器微控制器 CTSU电容触摸介绍指南.pdf》资料免费下载
    发表于 01-03 10:05 1次下载
    电容式<b class='flag-5'>传感器</b><b class='flag-5'>微控制器</b> CTSU电容<b class='flag-5'>触摸</b>介绍指南