基于ARDIUNO,WEMOS的超声波避障小车

牛油火锅在加麻 2020-09-19 10:20:00

实际代码:

#include<ESP8266WiFi.h>
//定义串口号和功能
#define Dong1 D6
#define Dong2 D7
#define Zhuan1 D4
#define Zhuan2 D5
#define Echo D2
#define Trig D8


char *ssid = "iPhone";
char *password = "1024575686";

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模块

WiFi.mode(WIFI_STA);//设置STA模式
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
Serial.print(",");
delay(500);
}
Serial.println(WiFi.localIP());//通过串口打印wemos的IP地址
}
void initL9110S() { //初始化911模块让为输出

pinMode(Dong1, OUTPUT);
pinMode(Dong2, OUTPUT);
pinMode(Zhuan1, OUTPUT);
pinMode(Zhuan2, OUTPUT);
}

//前后由后轮控制
void hou() {
digitalWrite(Dong1, HIGH);
digitalWrite(Dong2, LOW);
}

void qian() {
digitalWrite(Dong1, LOW);
digitalWrite(Dong2, HIGH);
}
//左右由前轮控制
void zuo() {
digitalWrite(Zhuan1, HIGH);
digitalWrite(Zhuan2, LOW);

}
void you() {
digitalWrite(Zhuan2, HIGH);
digitalWrite(Zhuan1, LOW);

}
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;
long dis;
int mark = 0;

WiFiClient client = server.available(); //服务初始化
while (client.connected()) {
while (client.available() > 0) {
cmd = client.read();
dis = getTime() / 58;
if (dis < 10) {
hou();
} else {
mark = 0;
}
if (mark == 0) {
switch (cmd) {
case'q':
qian();

break;
case'h':
hou();
break;
case'z':
zuo();
break;
case'y':
you();
break;
}
}
}
}
}
...全文
21096 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
不然呢。。。
xqhrs232 2020-09-21
  • 打赏
  • 举报
回复
这么简单易懂?

19,520

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧