超声波测距仪
2017-06-201.8万
AI 快速预览详细
本教程介绍了如何使用Arduino开发板、SR04超声波模块和LCD显示屏制作一个超声波测距仪。通过详细的代码示例,展示了如何触发TrigPin产生10微秒的高脉冲,并利用pulseIn函数计算出距离值。最终,距离值会通过串口和LCD显示屏显示出来。这个项目非常适合初学者和STEM教育,能够帮助用户从零开始搭建一个实用的超声波测距仪。
|
超声波测距仪其实是个很简单的小玩意:要的材料有Arduino开发板 超声波模块 lcd显示屏 /* 功能:利用SR04超声波传感器进行测距,并用串口显示测出的距离值 */ #include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 10, 9, 8, 7);//设置接口 // 设定SR04连接的Arduino引脚 const int TrigPin = 2; const int EchoPin = 3; float distance; void setup() { // 初始化串口通信及连接SR04的引脚 Serial.begin(9600); pinMode(TrigPin, OUTPUT); // 要检测引脚上输入的脉冲宽度,需要先设置为输入状态 pinMode(EchoPin, INPUT); Serial.println("Ultrasonic sensor:"); lcd.begin(16,2); lcd.clear(); //清屏 delay(1000); //延时1000ms } void loop() { // 产生一个10us的高脉冲去触发TrigPin digitalWrite(TrigPin, LOW); delayMicroseconds(2); digitalWrite(TrigPin, HIGH); delayMicroseconds(10); digitalWrite(TrigPin, LOW); // 检测脉冲宽度,并计算出距离 distance = pulseIn(EchoPin, HIGH) / 58.00; Serial.print(distance); Serial.print("cm"); Serial.println(); delay(1000); lcd.setCursor(0, 0) ; lcd.print(distance); lcd.print("cm"); lcd.println(); lcd.setCursor(0, 1) ; lcd.println(); delay(500); } |



