基于wemos手机APP制源WIFI避障小车源码

简介: 基于wemos手机APP制源WIFI避障小车源码


#include <ESP8266WiFi.h>
#define Dong1 D6
#define Dong2 D7
#define Zhuan1 D4
#define Zhuan2 D5
#define Echo D2
#define Trig D8
char* ssid = "CMCC-401";//“wifi热点名称”
char* passwd = "15066903226"; //”wifi热点密码”
int port =8888;//端口号,手机连接时输入
WiFiServer server(port);//设置服务器端口号
long getTime()
{
  digitalWrite(Trig,HIGH);
  delayMicroseconds(10);
  digitalWrite(Trig,LOW);
 return pulseIn(Echo,HIGH);
  }
  void initChaoShengBo()
{
  pinMode(Echo,INPUT);
 pinMode(Trig,OUTPUT);
  }
void initWifiSta()
{
  WiFi.mode(WIFI_STA);         // 设置STA模式
  WiFi.begin(ssid, passwd);   //连接网络
  while (WiFi.status() != WL_CONNECTED)
  {
         Serial.print(".");
        delay(500);
  }
  Serial.println(WiFi.localIP());//通过串口打印wemos的IP地址
}
void initL9110s()
{
  pinMode(Dong1,OUTPUT);
  pinMode(Dong2,OUTPUT);
  pinMode(Zhuan1,OUTPUT);
  pinMode(Zhuan2,OUTPUT);
  }
void qian()
{
  digitalWrite(Dong1,HIGH);
  digitalWrite(Dong2,LOW);
  }
  void hou()
{
  digitalWrite(Dong1,LOW);
  digitalWrite(Dong2,HIGH);
  } 
   void ting()
{
  digitalWrite(Dong1,LOW);
  digitalWrite(Dong2,LOW);
  } 
void zuo()
{
  digitalWrite(Zhuan1,HIGH);
  digitalWrite(Zhuan2,LOW);
  } 
  void you()
{
  digitalWrite(Zhuan1,LOW);
  digitalWrite(Zhuan2,HIGH);
  } 
   void zheng()
{
  digitalWrite(Zhuan1,HIGH);
  digitalWrite(Zhuan2,HIGH);
  } 
void setup() {
  // put your setup code here, to run once:
initL9110s();
initChaoShengBo();
Serial.begin(115200);
initWifiSta();
server.begin();
}
void loop() {
  // put your main code here, to run repeatedly:
char cmd;
int mark =0;
long dis;
  WiFiClient client =server.available();//服务器初始化
        while(client.connected())//等待服务器连接
        {
                while(client.available()>0)//有数据到来,类似串口那个函数
                {
                  cmd =client.read();//读取数据
                    Serial.print(cmd);
                    dis=getTime()/58;
                    if(dis<20)
                    {
                      hou();
                      delay(200);
                      ting();
                      mark=1;
                      }
                       else
                       {
                        mark=0;
                       }
                                if(mark==0)
                                {
                                        switch(cmd)
                                        {
                                          case 'q':
                                          qian();
                                          break;
                                           case 'h':
                                          hou();
                                          break;
                                           case 'z':
                                          zuo();
                                          break;
                                           case 'y':
                                          you();
                                          break;
                                          case 's':
                                           ting();
                                           break;
                                          case 'd':
                                          zheng();
                                          break;
                                         } 
                                }
                }
        }
 }
相关文章
|
6天前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
1月前
仿SOUL社交友附近人婚恋约仿陌陌APP网站源码
仿SOUL社交友附近人婚恋约仿陌陌APP网站源码
40 0
仿SOUL社交友附近人婚恋约仿陌陌APP网站源码
|
2月前
|
存储 BI Android开发
全开源仿第八区H5APP封装打包分发系统源码
全开源仿第八区H5APP封装打包分发系统源码
98 4
|
3月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的房屋租赁App的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的房屋租赁App的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的房屋租赁App的详细设计和实现(源码+lw+部署文档+讲解等)
|
2月前
|
C# 开发工具
【Azure 应用服务】Azure Function App使用SendGrid发送邮件遇见异常消息The operation was canceled,分析源码渐入最源端
【Azure 应用服务】Azure Function App使用SendGrid发送邮件遇见异常消息The operation was canceled,分析源码渐入最源端
|
3月前
|
存储 移动开发 Android开发
使用kotlin Jetpack Compose框架开发安卓app, webview中h5如何访问手机存储上传文件
在Kotlin和Jetpack Compose中,集成WebView以支持HTML5页面访问手机存储及上传音频文件涉及关键步骤:1) 添加`READ_EXTERNAL_STORAGE`和`WRITE_EXTERNAL_STORAGE`权限,考虑Android 11的分区存储;2) 配置WebView允许JavaScript和文件访问,启用`javaScriptEnabled`、`allowFileAccess`等设置;3) HTML5页面使用`<input type="file">`让用户选择文件,利用File API;
|
3月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的成人教育APP的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的成人教育APP的详细设计和实现(源码+lw+部署文档+讲解等)
|
3月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的多功能智能手机阅读APP的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的多功能智能手机阅读APP的详细设计和实现(源码+lw+部署文档+讲解等)
|
2月前
|
Java Android开发 UED
安卓scheme_url调端:如果手机上多个app都注册了 http或者https 的 intent。 调端的时候,调起哪个app呢?
当多个Android应用注册了相同的URL Scheme(如http或https)时,系统会在尝试打开这类链接时展示一个选择对话框,让用户挑选偏好应用。若用户选择“始终”使用某个应用,则后续相同链接将直接由该应用处理,无需再次选择。本文以App A与App B为例,展示了如何在`AndroidManifest.xml`中配置对http与https的支持,并提供了从其他应用发起调用的示例代码。此外,还讨论了如何在系统设置中管理这些默认应用选择,以及建议开发者为避免冲突应注册更独特的Scheme。
下一篇
无影云桌面