基于Wemos D1开发板的智能垃圾桶

基于Wemos D1开发板的智能垃圾桶

	师承上官可编程陈立臣


前言

  本文介绍了基于Wemos D1开发板的智能垃圾桶小项目,通过超声波测量距离结合舵机,实现到达特定距离使垃圾桶开盖的目的,后期增加了蜂鸣器芯片,在开盖的同时发出声音。


一、软件、硬件说明

  软件平台为Arduino,
  硬件包括Wemos D1开发板、HC-SR04超声波测距模块、SG90舵机、蜂鸣器(低电平触发)

1、Arduino

  集成很多开发库如串口,网络,SG90等各种硬件开发接口
  在这里插入图片描述

2、Wemos D1开发板

  基于ESP-8266EX,使用Arduino编程,具有WiFi模块

3、HC-SR04超声波测距模块

  具有4个引脚:VCC(正极)接5V、Trig(触发)、Echo(回应)、GND(接地);
  具有两个超声波元器件分别用于发射和接收;
  测量距离为2~400cm

4、SG90舵机

  具有三条线:红色(正极)接3.3V、橙色(信号线)、棕色(接地)
在这里插入图片描述

5、蜂鸣器(低电平触发)

  具有3个引脚:VCC(正极)接3.3V、I/O(信号)、GND(接地);

二、具体代码

1.Arduino基本函数
  setup函数只调用一次,一般用于硬件相关的初始化,比如IO口,串口,wifi等
  loop函数中的代码上电后被不断执行,存放核心控制代码
void setup() {
   
}

void loop() {
   
}
2.蜂鸣器
  2.1 调用函数
  pinMode(引脚, INPUT/OUTPUT); //设置引脚为输入/输出引脚
  digitalWrite(引脚, LOW/HIGH);//设置引脚的输出电压为低电平或高电平
  delay(1000);				  //将程序暂停一段时间(以毫秒为单位)
  2.2 实例
#define BEEP D5  			//定义引脚D5为BEEP(便于后期引脚更换时代码的修改)
void setup() {
   
  pinMode(BEEP, OUTPUT); 	//设置引脚为输出引脚
}

void loop() {
   
  digitalWrite(BEEP, HIGH);  //输出高电平,蜂鸣器不响
  delay(1000);            	//程序暂停一秒
  digitalWrite(BEEP, LOW);  //输出低电平,蜂鸣器响
  delay(1000);            	//程序暂停一秒(延时期间,蜂鸣器控制引脚仍属于低电平)
}
3.Wemos串口通信
  3.1 调用函数
Serial.begin(speed);//开启串口,speed为波特率(一般为9600/115200)
Serial.print();		//串口输出数据不换行
Serial.println();	//串口输出数据并换行
Serial.available();	//判断串口缓冲区是否有数据
Serial.read();		//读取串口缓冲区数据,一次读取一个字符
  3.2 实例
void setup() {
   
  Serial.begin(115200);		//开启串口,波特率设置为115200
}

void loop() {
   
  int cmd;
  if(Serial.available()>0){
   	//判断串口缓冲区是否有数据
      cmd=Serial.read();	//读取串口缓冲区数据
      if(cmd == 5){
   			//读取数据为5时,串口输出"input 5"并换行
          Serial.println("input 5");
      }else{
   				//读取数据为其他时,串口输出"input other"并换行
            Serial.println
  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值