基于ESP32CAM的手机app控制的图传小车
ESP32CAM
文章目录
- ESP32CAM
- 前言
- 一、准备
- 二、完整代码
前言
昨天做了图传,今天就想做个小车玩玩,说干就干
一、准备
你需要一个ESP32CAM。一个L298N,一辆小车,还有一块稳压,稳压是我自己画的,成本一块钱左右。ESP32CAM就和ESP8266那些都一样就不讲了,讲一下L298N怎么用。
先看接线,接12V给电机供电,ENA\ENB是PWM使能的接口,input1和2为一组,3和4为一组,分别控制一个电机正反转。
再看这个表我们就能知道他是怎么转的了。
pinMode(input1,OUTPUT);pinMode(input2,OUTPUT);pinMode(input3,OUTPUT);pinMode(input4,OUTPUT);
引脚初始化代码,初始化为输出
{digitalWrite(input1,HIGH); //给高电平digitalWrite(input2,LOW); //给低电平digitalWrite(input3,HIGH); //给高电平digitalWrite(input4,LOW); //给低电平
}
void houtui()
{digitalWrite(input1,LOW); //给高电平digitalWrite(input2,HIGH); //给低电平digitalWrite(input3,LOW); //给高电平digitalWrite(input4,HIGH); //给低电平
}
void youzhuan()
{digitalWrite(input1,HIGH); //给高电平digitalWrite(input2,LOW); //给低电平digitalWrite(input3,LOW); //给高电平digitalWrite(input4,HIGH); //给低电平
}
void zuozhuan()
{digitalWrite(input1,LOW); //给高电平digitalWrite(input2,HIGH); //给低电平digitalWrite(input3,HIGH); //给高电平digitalWrite(input4,LOW); //给低电平
}
这个是让电机运动的代码,也就是产生压差,即为表中的10、01。
二、完整代码
#define BLINKER_WIFI]
//#define BLINKER_ESP_SMARTCONFIG#include <Blinker.h>
#include "ESP32_CAM_SERVER.h"char auth[] = " ";//blinker的密钥
char ssid[]="TP-LINK_949B";//WiFi名称
char pswd[]="88888888";//wifi密码
bool setup_camera =false;int input1 = 4;
int input2 = 2;
int input3 = 14;
int input4 = 15;
BlinkerButton Button1("btn-q");//注意:要和APP组件’数据键名’一致
BlinkerButton Button2("btn-h");//注意:要和APP组件’数据键名’一致
BlinkerButton Button3("btn-z");//注意:要和APP组件’数据键名’一致
BlinkerButton Button4("btn-y");//注意:要和APP组件’数据键名’一致
void button1_callback(const String & state)
{BLINKER_LOG("get button state: ", state);if (state == "press") {Serial.printf("qianjin");qianjin();}else if(state == "pressup"){Serial.printf("tingzhi");tingzhi();}
}void button2_callback(const String & state)
{BLINKER_LOG("get button state: ", state);if (state == "press") {Serial.printf("qianjin");houtui();}else if(state == "pressup"){Serial.printf("tingzhi");tingzhi();}}
void button3_callback(const String & state)
{BLINKER_LOG("get button state: ", state);if (state == "press") {Serial.printf("qianjin");zuozhuan();}else if(state == "pressup"){Serial.printf("tingzhi");tingzhi();}
}void button4_callback(const String & state)
{BLINKER_LOG("get button state: ", state);if (state == "press") {Serial.printf("qianjin");youzhuan();}else if(state == "pressup"){Serial.printf("tingzhi");tingzhi();}
}void dataRead(const String & data)
{BLINKER_LOG("Blinker readString: ", data);Blinker.vibrate();uint32_t BlinkerTime = millis();Blinker.print("millis", BlinkerTime);
}
void setup()
{Serial.begin(115200);BLINKER_DEBUG.stream(Serial);pinMode(input1,OUTPUT);pinMode(input2,OUTPUT);pinMode(input3,OUTPUT);pinMode(input4,OUTPUT);pinMode(LED_BUILTIN, OUTPUT);digitalWrite(LED_BUILTIN, LOW);Button1.attach(button1_callback);Button2.attach(button2_callback);Button3.attach(button3_callback);Button4.attach(button4_callback);Blinker.begin(auth,ssid,pswd);Blinker.attachData(dataRead);
}void loop()
{Blinker.run(); if (Blinker.connected() && !setup_camera){setupCamera();setup_camera = true;Blinker.printObject("video", "{\"str\":\"mjpg\",\"url\":\"http://"+ WiFi.localIP().toString() + "\"}");}
}void qianjin()
{digitalWrite(input1,HIGH); //给高电平digitalWrite(input2,LOW); //给低电平digitalWrite(input3,HIGH); //给高电平digitalWrite(input4,LOW); //给低电平
}
void houtui()
{digitalWrite(input1,LOW); //给高电平digitalWrite(input2,HIGH); //给低电平digitalWrite(input3,LOW); //给高电平digitalWrite(input4,HIGH); //给低电平
}
void youzhuan()
{digitalWrite(input1,HIGH); //给高电平digitalWrite(input2,LOW); //给低电平digitalWrite(input3,LOW); //给高电平digitalWrite(input4,HIGH); //给低电平
}
void zuozhuan()
{digitalWrite(input1,LOW); //给高电平digitalWrite(input2,HIGH); //给低电平digitalWrite(input3,HIGH); //给高电平digitalWrite(input4,LOW); //给低电平
}
void tingzhi()
{digitalWrite(input1,LOW); //给高电平digitalWrite(input2,LOW); //给低电平digitalWrite(input3,LOW); //给高电平digitalWrite(input4,LOW); //给低电平
}
手机app用的点灯科技,相信用过这个软件的人代码一下就能看明白,就不过多的赘述了,看效果图。
基于ESP32CAM的手机app控制的图传小车相关推荐
- 最简单DIY基于ESP8266的智能彩灯③(在网页用按钮+滑动条+手机APP控制RGB灯)
ESP8266和ESP32智能彩灯开发系列文章目录 第一篇:最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯) 第二篇:最简单DIY基于ESP8266的智能彩灯②(在网页用按键 ...
- 毕业设计——基于STM32单片机的绿植养护系统(物联网、智能家居、手机APP控制、自动监测土壤湿度)
本工程包括一下功能:1.环境温湿度监测 2.土壤湿度监测 3.环境可燃气体浓度监测 4.RTC万年历功能 5.数据的实时显示(OLED屏幕.手机app) 6.自动浇水模式.手动浇水模式 ①自动浇水:系 ...
- 基于51单片机的智能停车场管理车位引导系统红外检测无线蓝牙/WiFi手机APP控制设计
本系统由STC89C52单片机.(无线蓝牙/WIFI模块-可选).红外对管传感器.LCD1602液晶显示.LED指示灯及电源组成. 通过红外对管模块实时检测车位是否占用,车位分为1车位.2车位.3车位 ...
- 智能灯控制页面用HTML编写,3分钟教你创建手机APP控制全彩智能灯泡应用,图形化编程!...
本帖最后由 bigfanofloT 于 2016-9-22 22:33 编辑 对,你没有看错!!!3分钟教你创建手机APP控制全彩智能灯泡应用,图形化编程,自动代码生成,麻麻再也不用担心我不会编程了, ...
- 阿里云IOT入门教程(三)阿里云IOT Studio自建手机App控制Wemos D1 Mini( ESP8266 )板载灯亮灭
阿里云IOT入门教程(一)阿里云IOT Studio自建手机App控制Wemos D1 Mini( ESP8266 )板载灯亮灭 概述 所需材料 Mqtt预备知识 hacklab端开发 * 硬件端上报 ...
- 毕业论文 | 基于安卓手机蓝牙控制的智能小车设计(源代码)
博主github:https://github.com/MichaelBeechan 博主CSDN:https://blog.csdn.net/u011344545 预告:源代码.论文.电路图设计链接 ...
- android智能小车 论文,基于安卓手机蓝牙控制的智能小车设计毕业设计(论文).doc...
编 号: 审定成绩: 毕业设计(论文) 设计(论文)题目: 学院:学 生 姓 名 :专 业 :班 级 :学 号 :指 导 教 师 :答辩组 负责人 : 填表时间:年月 摘 要 随着物联网的兴起,And ...
- 通过手机App控制RGB调节灯带的亮度
通过手机App控制RGB调节灯带的亮度,Arduino.esp8266.RGB灯带.APP.Android **很久没有更新了,最近过年回家有空拿出来东西玩玩,花了半天的时间搞这个,主要实现的原理,通 ...
- 毕业/课程设计——基于STM32的智能灯光控制系统(物联网、智能家居、手机APP控制、语音控制)
文章首先介绍本系统所包含的功能,主要包含六方面功能,之后逐步分享开发过程,其流程如下:点亮灯带(三极管)→调节灯光亮度(PWM)→为系统添加远程控制功能→为系统添加语音识别功能→添加超声波姿态监测功能 ...
最新文章
- OpenDataSource,sql开放式数据源
- 直播实录 | 哈工大博士生周青宇:从编码器与解码器端改进生成式句子摘要
- 安装python缺少dll_python报错DLL load failed:找不到模块怎么解决?
- 架构解读丨Volcano作业资源预留设计原理
- 浅析SQL SERVER执行计划中的各类怪相
- Error building SqlSession问题
- UVA230 WF5169 POJ1886 Borrowers【map+set】
- 我读研期间通过实习和比赛收入五十万
- 利用深度学习自动补全 Python 代码,这个开源项目有点牛逼
- 杭电Oj刷题(2009)
- python ssim代码
- APICloud 入门教程窗口篇
- 20个值得一看的 JS 代码简写片段
- 计算机装系统找不到硬盘分区,系统安装找不到现有分区,教您如何解决系统安装找不到现有分区...
- 百度推广怎么做排名靠前网站链接
- WPS WORD 项目符号和编号,继续前一列表
- vue图片查看器,支持放大 缩小 还原
- (一)Deep learning论文纯翻译
- 在IDEA中手动创建基于Maven的Servlet项目
- 计算机考试的话语,考试祝福语简短 祝考试顺利的一句话
热门文章
- linux下system函数详解
- 【学习笔记】统计学习方法——HMM
- java找不到对象报错_java找不到对象报错
- 机器人 蓝buff 钩_LOL:机器人Q大加强,河道就能勾到蓝Buff?RNG笑了!
- 软件工程师职业道德规范和实践要求
- C语言程序设计——递归函数 ,用递归方法编程计算Fibonacci数列的前N项。其中fib(0)=0,fib(1)=1,fib(n)=fib(n-1)+fib(n-2)。
- win7下使用隐藏的虚拟wifi共享上网
- 神仙联动!港科大和中山大学宣讲会专场!
- 多媒体web播放器,移动端h5 video播放器
- javascript屏蔽脏字