赞
踩
特性
工作中:
和stm32模块开发类似,集成度高
STM32方案也更经济便宜

超声波传感器模块上面通常有两个超声波元器件,一个用于发射,一个用于接收。电路板上有4个引脚: VCC (正极)、Trig (触发),Echo(回应),GND(接地),
主要参数:
·工作电压与电流:5V、15mA。
·感测距离:2~400cm
·感测角度:不大于15°。
·被测物的面积不要小于50cm2并且尽量平整。具备温度补偿电路。
在超声波模块的触发脚位输入10微妙以上的高电位,即可发射超声波,发射超声波之后,与接收到传回的超声波之前,“响应”脚位呈现高电位。因此,程序可从“响应”脚位的高电位脉冲持续时间,换算出被测物的距离。


B-1A B-2A 电机1
0 1 正转(假设)
1 0 反转
0 0 不转
1 1 不转
A-1A A-1B 电机2
0 1 正转(假设)
1 0 反转
0 0 不转
1 1 不转
ArduiNo开发环境,和keil对比
优点: 集成很多开发库如串口,网络,sg90等
各种硬件开发接口,迅捷开发
自带串口调试工具
缺点: 程序编译速度慢

#include <ESP8266WiFi.h> char* ssid = "***"; //WiFi热点名称 char* passwd = "*********"; //WiFi密码 int port = ****; //端口号 WiFiServer server(port); // 设置服务器端口号 #define Dong1 D6 #define Dong2 D7 #define Zhuan1 D4 #define Zhuan2 D5 #define Echo D2 #define Trig D8 long getTime() { digitalWrite(Trig, HIGH); delayMicroseconds(10); digitalWrite(Trig, LOW); return pulseIn(Echo, HIGH); } void iniyChaoShengBo() { 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 zuo() { digitalWrite(Zhuan1, HIGH); digitalWrite(Zhuan2, LOW); } void zheng() { digitalWrite(Zhuan1, HIGH); digitalWrite(Zhuan2, HIGH); } void you() { digitalWrite(Zhuan1, LOW); digitalWrite(Zhuan2, HIGH); } void ting() { digitalWrite(Dong1, LOW); digitalWrite(Dong2, LOW); } void setup() { Serial.begin(115200); initWifiSta(); iniyChaoShengBo(); initL9110s(); } void loop() { char cmd; long dis; int mark = 0; WiFiClient client = server.available(); //服务初始化 server.begin(); while (client.connected()) { //等待客户端连接 while (client.available() > 0) { //有数据到来,类似串口的那个函数 cmd = client.read();//读取数据 dis = getTime() / 58; if (dis < 10) { hou(); delay(200); ting(); mark = 1; } else { mark = 0; } if (mark == 0) { switch (cmd) { case 'q': { qian(); Serial.println("q"); } break; case 'h': { hou(); Serial.println("h"); } break; case 'z': { zuo(); Serial.println("z"); } break; case 'y': { you(); Serial.println("y"); } break; case 's': { ting(); Serial.println("z"); } break; case 'd': { zheng(); Serial.println("y"); } break; } } } } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。