zoukankan      html  css  js  c++  java
  • 【Arduino】超声波模块(HC-SR04)

    还好,这个模块有现成的库能够用:

    https://github.com/bosgood/arduino-playground/tree/master/lib/HCSR04Ultrasonic


    下面仅仅给出測试代码:

    当距离小于20CM时蜂鸣器发出警报

    #include "Ultrasonic.h"
    
    #define TRIGGER_PIN  12
    #define ECHO_PIN     13
    #define BUF_PIN      7
    
    Ultrasonic ultrasonic(TRIGGER_PIN, ECHO_PIN);
    
    void setup()
    {
    	Serial.begin(9600);
    	pinMode(BUF_PIN, OUTPUT);
    }
    
    void loop()
    {
    	float cmMsec, inMsec;
    	long microsec = ultrasonic.timing();
    
    	cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM);
    	inMsec = ultrasonic.convert(microsec, Ultrasonic::IN);
    	if(cmMsec < 20) {
    		for(int i = 0; i < 80; i++) {
    			digitalWrite(BUF_PIN, HIGH);
    			delay(1);
    			digitalWrite(BUF_PIN, LOW);
    			delay(1);
    		}
    	}  
    	Serial.print("MS: ");
    	Serial.print(microsec);
    	Serial.print(", CM: ");
    	Serial.print(cmMsec);
    	Serial.print(", IN: ");
    	Serial.println(inMsec);
    	delay(1000);
    }
    


  • 相关阅读:
    Unix高级编程之文件权限
    gdb手册
    libev 使用
    Unix高级环境编程之fcntl函数
    设计基于锁的并发数据结构
    CPU占用分析
    atomic用法
    RESTful架构搜集
    神奇的VIM
    [转] boost:lexical_cast用法
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/7304924.html
Copyright © 2011-2022 走看看