【51单片机】2-3【I/O口】震动传感器控制LED灯

1.硬件

2.软件

c 复制代码
#include "reg52.h"

sbit led1 = P3^7;//根据原理图(电路图),设备变量led1指向P3组IO口的第7口
sbit vibrate = P3^3;//震动传感器DO接P3.3口

void Delay2000ms()		//@11.0592MHz
{
	unsigned char i, j, k;

//	_nop_();
	i = 15;
	j = 2;
	k = 235;
	do
	{
		do
		{
			while (--k);
		} while (--j);
	} while (--i);
}
void main()
{
	//查询方式判断是否发生震动
	while(1){
		if(vibrate == 0)//震动时,D0输出低电平
		{
			led1 = 0;//亮灯
			Delay2000ms();//延时
			led1 = 1;
		}else{
			led1 = 1;//灭灯
		}
	}
}

3.实物效果

初始LED熄灭,发生震动时,LED点亮。

  • 硬件接线
51单片机 震动传感器 LED灯
P3.7 负极
5V 正极
P3.3 DO
5V VCC
GND GND
相关推荐
xxwxx__1 天前
51单片机 + ESP8266 TCP通信实战:从零实现WiFi远程控制
c语言·嵌入式硬件·tcp/ip·51单片机
智者知已应修善业2 天前
【51单片机串口通信甲机四个按键模拟四位二进制值发送乙机以十进制显示2位数码管】2024-6-14
c++·经验分享·笔记·算法·51单片机
深圳市晶科鑫实业有限公司3 天前
国产TCXO温补晶振是否可以完美替代欧美日系主流型号
人工智能·stm32·单片机·物联网·51单片机·信息与通信
xxwxx__3 天前
51单片机串口通信完全指南:从原理到实战(发送、接收、回环与控制)
c语言·单片机·嵌入式硬件·51单片机
智者知已应修善业4 天前
【51单片机2个外部中断显示中断历时,初始化8左移3位共阳数码管】2024-6-6
c++·经验分享·笔记·算法·51单片机
智者知已应修善业5 天前
【51单片机8位数码管同时倒计时从9999】2024-1-25
c++·经验分享·笔记·算法·51单片机
H__Rick5 天前
C51学习-DAY4
嵌入式硬件·学习·51单片机·硬件工程
H__Rick5 天前
C51学习-DAY7
单片机·嵌入式硬件·学习·51单片机