• arduino体感控制简单版


    https://learn.sparkfun.com/tutorials/apds-9960-rgb-and-gesture-sensor-hookup-guide/all

     硬件连线

    关键 VCC=  3.3v  不是 5v

    下面这个库实测不起作用,不知道为什么

     

     可用的库

    程序

    /*
      APDS9960 - Gesture Sensor
    
      This example reads gesture data from the on-board APDS9960 sensor of the
      Nano 33 BLE Sense and prints any detected gestures to the Serial Monitor.
    
      Gesture directions are as follows:
      - UP:    from USB connector towards antenna
      - DOWN:  from antenna towards USB connector
      - LEFT:  from analog pins side towards digital pins side
      - RIGHT: from digital pins side towards analog pins side
    
      The circuit:
      - Arduino Nano 33 BLE Sense
    
      This example code is in the public domain.
    */
    
    #include <Arduino_APDS9960.h>
    
    void setup() {
      Serial.begin(9600);
      while (!Serial);
    
      if (!APDS.begin()) {
        Serial.println("Error initializing APDS9960 sensor!");
      }
    
      // for setGestureSensitivity(..) a value between 1 and 100 is required.
      // Higher values makes the gesture recognition more sensible but less accurate
      // (a wrong gesture may be detected). Lower values makes the gesture recognition
      // more accurate but less sensible (some gestures may be missed).
      // Default is 80
      //APDS.setGestureSensitivity(80);
    
      Serial.println("Detecting gestures ...");
    }
    void loop() {
      if (APDS.gestureAvailable()) {
        // a gesture was detected, read and print to serial monitor
        int gesture = APDS.readGesture();
    
        switch (gesture) {
          case GESTURE_UP:
            Serial.println("Detected UP gesture");
            break;
    
          case GESTURE_DOWN:
            Serial.println("Detected DOWN gesture");
            break;
    
          case GESTURE_LEFT:
            Serial.println("Detected LEFT gesture");
            break;
    
          case GESTURE_RIGHT:
            Serial.println("Detected RIGHT gesture");
            break;
            
          case GESTURE_DOWN:
            Serial.println("Detected DOWN gesture");
            break;
          default:
            // ignore
            break;
        }
      }
    }
    

    1测试的时候刚上电不要对着强光,否则触发不了。

    此函数来调整光触发值,0-100  默认80

    应该是有一个光照强度值,跟初始上电瞬间采集到的光照有关系,基准值,发现触发不了的情况,断电,不要对着强光重启,复位不行。 

    2实际测试,其他物体也可以触发

     

    还有2种其他手势可用:NEAR和FAR。

    将手放在传感器上方(大于10英寸(25厘米)),使其靠近传感器(在传感器上方约2英寸(5厘米)),将其保持在至少1秒钟,然后移开您的手。

    可以通过以下方式实现FAR手势:将手直接放在传感器上方并靠近传感器(大约2英寸(5厘米))至少1秒钟,然后将手直接向上移至传感器上方并超出传感器范围。

    如果未正确解释手势,则“无”将出现在串行监视器中。

     

  • 相关阅读:
    pscp 从win10远程传输文件到centos7,多个虚拟机之间传文件
    Spring Aop中四个重要概念,切点,切面,连接点,通知
    查看Java的汇编指令
    Spring集成GuavaCache实现本地缓存
    RocketMq消息 demo
    使用axis1.4生成webservice的客户端代码
    oracle ORA-00060死锁查询、表空间扩容
    mysql 1449 : The user specified as a definer ('usertest'@'%') does not exist 解决方法 (grant 授予权限)
    软件安装
    动态雪花飘落
  • 原文地址:https://www.cnblogs.com/kekeoutlook/p/11884526.html
Copyright © 2020-2023  润新知