“超声波”的版本间的差异

来自Labplus盛思维基百科
跳转至: 导航搜索
MicroPython示例
MicroPython示例
第26行: 第26行:
 
=== MicroPython示例 ===
 
=== MicroPython示例 ===
 
<pre style="color:blue">
 
<pre style="color:blue">
void setup()
+
from microbit import *
{
+
 
  Serial.begin(9600); // open serial port, set the baud rate to 9600 bps
+
def Distance():
}
+
    i2c.write(0x0b, bytearray([1]))
void loop()
+
    sleep(2)
{
+
    temp=i2c.read(0x0b,2)
      int val;
+
    distanceCM=(temp[0]+temp[1]*256)/10
      val=analogRead(0)//connect grayscale sensor to Analog 0
+
    return distanceCM
      Serial.println(val,DEC);//print the value to serial       
+
 
      delay(100);
+
# test code
}
+
while True:
 +
    print(Distance())
 +
    sleep(100)
  
 
</pre>
 
</pre>
  
 
=== 图形化示例 ===
 
=== 图形化示例 ===

2017年12月19日 (二) 13:58的版本

概述

用于超声波定位、测距、避障等应用场景。操作简单采用I2C通讯将测距值返回主控。有效测距范围3~300cm

技术参数

  • 工作电压:3.3V~5V
  • 接口方式:I2C接口
  • 超声波测量范围:3cm~300cm
  • 误差:±1%
  • 模块尺寸:

引脚定义

VCC 电源
SDA I2C数据
SCL I2C时钟
GND

使用教程

连接示意图

Arduino示例

MicroPython示例

from microbit import *

def Distance():
    i2c.write(0x0b, bytearray([1]))
    sleep(2)
    temp=i2c.read(0x0b,2)
    distanceCM=(temp[0]+temp[1]*256)/10
    return distanceCM

# test code
while True:
    print(Distance())
    sleep(100)

图形化示例