Initial commit of Arduino libraries

This commit is contained in:
Sam
2025-05-23 10:47:41 +10:00
commit 5bfce5fc3e
2476 changed files with 1108481 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,55 @@
SparkFun License Information
============================
SparkFun uses two different licenses for our files — one for hardware and one for code.
Hardware
---------
**SparkFun hardware is released under [Creative Commons Share-alike 4.0 International](http://creativecommons.org/licenses/by-sa/4.0/).**
Note: This is a human-readable summary of (and not a substitute for) the [license](http://creativecommons.org/licenses/by-sa/4.0/legalcode).
You are free to:
Share — copy and redistribute the material in any medium or format
Adapt — remix, transform, and build upon the material
for any purpose, even commercially.
The licensor cannot revoke these freedoms as long as you follow the license terms.
Under the following terms:
Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.
No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
Notices:
You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation.
No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.
Code
--------
**SparkFun code, firmware, and software is released under the MIT License(http://opensource.org/licenses/MIT).**
The MIT License (MIT)
Copyright (c) 2021 SparkFun Electronics
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -0,0 +1,38 @@
SparkFun VEML7700 Arduino Library
==============================
[![SparkX smôl Environmental Peripheral Board (SPX-18976)]()](https://www.sparkfun.com/products/18976)
[*SparkX smôl Environmental Peripheral Board (SPX-18976)*](https://www.sparkfun.com/products/18976)
The Vishay Semiconductors VEML7700 is a high accuracy ambient light sensor with 16-bit resolution in a miniature transparent package. It includes a high sensitive photo diode, a low noise amplifier, a 16-bit A/D converter and supports the I<sup>2</sup>C bus communication interface.
This library handles the initialization and configuration of the sensor, and monitoring of the ambient light level.
## Repository Contents
* **/examples** - Example sketches for the library (.ino). Run these from the Arduino IDE.
* **/src** - Source files for the library (.cpp, .h).
* **keywords.txt** - Keywords from this library that will be highlighted in the Arduino IDE.
* **library.properties** - General library properties for the Arduino package manager.
* **LICENSE.md** - Contains the license information.
## Documentation
- **/docs** - HTML documentation generated with [Doxygen](https://www.doxygen.nl/index.html). Open [**GitHub Pages**](https://sparkfun.github.io/SparkFun_VEML7700_Arduino_Library/) to view the documentation.
- **[Installing an Arduino Library Guide](https://learn.sparkfun.com/tutorials/installing-an-arduino-library)** - Basic information on how to install an Arduino library.
## Products That Use This Library
* [SPX-18976](https://www.sparkfun.com/products/18976) - smôl Environmental Peripheral Board
* [SPX-18981](https://www.sparkfun.com/products/18981) - Ambient Light Sensor - VEML7700 (Qwiic)
## License Information
This product is _**open source**_!
Please use, reuse, and modify these files as you see fit. Please maintain attribution to SparkFun Electronics and release anything derivative under the same license.
Distributed as-is; no warranty is given.
- Your friends at SparkFun.

View File

@@ -0,0 +1,305 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: src/SparkFun_VEML7700_Arduino_Library.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">SparkFun_VEML7700_Arduino_Library.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;Arduino.h&gt;</code><br />
<code>#include &lt;Wire.h&gt;</code><br />
</div>
<p><a href="_spark_fun___v_e_m_l7700___arduino___library_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a8f6fca44c3ac0e645fc6ab491b8919e9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a8f6fca44c3ac0e645fc6ab491b8919e9">VEML7700_I2C_ADDRESS</a>&#160;&#160;&#160;0x10</td></tr>
<tr class="separator:a8f6fca44c3ac0e645fc6ab491b8919e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ad9c46bec9343735bf8ab5b6e9727f8c3"><td class="memItemLeft" align="right" valign="top"><a id="ad9c46bec9343735bf8ab5b6e9727f8c3"></a>
typedef uint16_t&#160;</td><td class="memItemRight" valign="bottom"><b>VEML7700_t</b></td></tr>
<tr class="separator:ad9c46bec9343735bf8ab5b6e9727f8c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:aa5bc51cc06d5a446ae172210fa340a87"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> { <br />
&#160;&#160;<b>VEML7700_ERROR_READ</b> = -4
, <b>VEML7700_ERROR_WRITE</b> = -3
, <b>VEML7700_ERROR_INVALID_ADDRESS</b> = -2
, <b>VEML7700_ERROR_UNDEFINED</b> = -1
, <br />
&#160;&#160;<b>VEML7700_ERROR_SUCCESS</b> = 1
<br />
}</td></tr>
<tr class="separator:aa5bc51cc06d5a446ae172210fa340a87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af597f32e601f72da8594aef787f9196c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c">VEML7700_sensitivity_mode_t</a> { <br />
&#160;&#160;<b>VEML7700_SENSITIVITY_x1</b>
, <b>VEML7700_SENSITIVITY_x2</b>
, <b>VEML7700_SENSITIVITY_x1_8</b>
, <b>VEML7700_SENSITIVITY_x1_4</b>
, <br />
&#160;&#160;<b>VEML7700_SENSITIVITY_INVALID</b>
<br />
}</td></tr>
<tr class="separator:af597f32e601f72da8594aef787f9196c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bc94f9cd94b70f7c8b723fc33b393e7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">VEML7700_integration_time_t</a> { <br />
&#160;&#160;<b>VEML7700_INTEGRATION_25ms</b>
, <b>VEML7700_INTEGRATION_50ms</b>
, <b>VEML7700_INTEGRATION_100ms</b>
, <b>VEML7700_INTEGRATION_200ms</b>
, <br />
&#160;&#160;<b>VEML7700_INTEGRATION_400ms</b>
, <b>VEML7700_INTEGRATION_800ms</b>
, <b>VEML7700_INTEGRATION_INVALID</b>
<br />
}</td></tr>
<tr class="separator:a1bc94f9cd94b70f7c8b723fc33b393e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8b1b1186f6740af7c8e6a900e435c8a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a">VEML7700_persistence_protect_t</a> { <br />
&#160;&#160;<b>VEML7700_PERSISTENCE_1</b>
, <b>VEML7700_PERSISTENCE_2</b>
, <b>VEML7700_PERSISTENCE_4</b>
, <b>VEML7700_PERSISTENCE_8</b>
, <br />
&#160;&#160;<b>VEML7700_PERSISTENCE_INVALID</b>
<br />
}</td></tr>
<tr class="separator:af8b1b1186f6740af7c8e6a900e435c8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02770ddad75b2ab41c6a1fbeedd90ca9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9">VEML7700_interrupt_enable_t</a> { <b>VEML7700_INT_DISABLE</b>
, <b>VEML7700_INT_ENABLE</b>
, <b>VEML7700_INT_INVALID</b>
}</td></tr>
<tr class="separator:a02770ddad75b2ab41c6a1fbeedd90ca9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9de4d5f69959ec6d10f697f48264458"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458">VEML7700_interrupt_status_t</a> { <br />
&#160;&#160;<b>VEML7700_INT_STATUS_NONE</b>
, <b>VEML7700_INT_STATUS_HIGH</b>
, <b>VEML7700_INT_STATUS_LOW</b>
, <b>VEML7700_INT_STATUS_BOTH</b>
, <br />
&#160;&#160;<b>VEML7700_INT_STATUS_INVALID</b>
<br />
}</td></tr>
<tr class="separator:aa9de4d5f69959ec6d10f697f48264458"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48aaa806500374898400d6369a298560"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560">VEML7700_shutdown_t</a> { <b>VEML7700_POWER_ON</b>
, <b>VEML7700_SHUT_DOWN</b>
, <b>VEML7700_SHUTDOWN_INVALID</b>
}</td></tr>
<tr class="separator:a48aaa806500374898400d6369a298560"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:ac41e124f44d6959c2a5b5ab1932d07f5"><td class="memItemLeft" align="right" valign="top"><a id="ac41e124f44d6959c2a5b5ab1932d07f5"></a>
const <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>VEML7700_SUCCESS</b> = VEML7700_ERROR_SUCCESS</td></tr>
<tr class="separator:ac41e124f44d6959c2a5b5ab1932d07f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>SparkFun <a class="el" href="class_v_e_m_l7700.html">VEML7700</a> Ambient Light Sensor Arduino Library</p>
<p>This library facilitates communication with the <a class="el" href="class_v_e_m_l7700.html">VEML7700</a> over I<sup>2</sup>C.</p>
<p>Want to support open source hardware? Buy a board from SparkFun! <br />
SparkX smôl Environmental Peripheral Board (SPX-18976): <a href="https://www.sparkfun.com/products/18976">https://www.sparkfun.com/products/18976</a></p>
<p>This library was written by: Paul Clark SparkFun Electronics November 4th 2021</p>
<p>Please see LICENSE.md for the license information </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a8f6fca44c3ac0e645fc6ab491b8919e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8f6fca44c3ac0e645fc6ab491b8919e9">&#9670;&nbsp;</a></span>VEML7700_I2C_ADDRESS</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VEML7700_I2C_ADDRESS&#160;&#160;&#160;0x10</td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="class_v_e_m_l7700.html">VEML7700</a> I2C address </p>
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="aa5bc51cc06d5a446ae172210fa340a87"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa5bc51cc06d5a446ae172210fa340a87">&#9670;&nbsp;</a></span>VEML7700_error_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="class_v_e_m_l7700.html">VEML7700</a> error code returns </p>
</div>
</div>
<a id="a1bc94f9cd94b70f7c8b723fc33b393e7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1bc94f9cd94b70f7c8b723fc33b393e7">&#9670;&nbsp;</a></span>VEML7700_integration_time_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">VEML7700_integration_time_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>ALS integration time setting Note: these are defined here in simple sequential order. The actual register settings are defined in VEML7700_config_integration_time_t </p>
</div>
</div>
<a id="a02770ddad75b2ab41c6a1fbeedd90ca9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a02770ddad75b2ab41c6a1fbeedd90ca9">&#9670;&nbsp;</a></span>VEML7700_interrupt_enable_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9">VEML7700_interrupt_enable_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>ALS interrupt enable setting </p>
</div>
</div>
<a id="aa9de4d5f69959ec6d10f697f48264458"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9de4d5f69959ec6d10f697f48264458">&#9670;&nbsp;</a></span>VEML7700_interrupt_status_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458">VEML7700_interrupt_status_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>ALS interrupt status, logical OR of the crossing low and high thrteshold INT triggers </p>
</div>
</div>
<a id="af8b1b1186f6740af7c8e6a900e435c8a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af8b1b1186f6740af7c8e6a900e435c8a">&#9670;&nbsp;</a></span>VEML7700_persistence_protect_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a">VEML7700_persistence_protect_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>ALS persistence protect number setting </p>
</div>
</div>
<a id="af597f32e601f72da8594aef787f9196c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af597f32e601f72da8594aef787f9196c">&#9670;&nbsp;</a></span>VEML7700_sensitivity_mode_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c">VEML7700_sensitivity_mode_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sensitivity mode selection </p>
</div>
</div>
<a id="a48aaa806500374898400d6369a298560"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a48aaa806500374898400d6369a298560">&#9670;&nbsp;</a></span>VEML7700_shutdown_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560">VEML7700_shutdown_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>ALS shut down setting </p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

View File

@@ -0,0 +1,317 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: src/SparkFun_VEML7700_Arduino_Library.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">SparkFun_VEML7700_Arduino_Library.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="_spark_fun___v_e_m_l7700___arduino___library_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160; </div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#ifndef __SFE_SMOL_POWER_BOARD__</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#define __SFE_SMOL_POWER_BOARD__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &lt;Arduino.h&gt;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &lt;Wire.h&gt;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="keyword">typedef</span> uint16_t VEML7700_t;</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a8f6fca44c3ac0e645fc6ab491b8919e9"> 29</a></span>&#160;<span class="preprocessor">#define VEML7700_I2C_ADDRESS 0x10</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87"> 32</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;{</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; VEML7700_ERROR_READ = -4,</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; VEML7700_ERROR_WRITE = -3,</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; VEML7700_ERROR_INVALID_ADDRESS = -2,</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; VEML7700_ERROR_UNDEFINED = -1,</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; VEML7700_ERROR_SUCCESS = 1</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;} <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a>;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">const</span> <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> VEML7700_SUCCESS = VEML7700_ERROR_SUCCESS;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c"> 43</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; VEML7700_SENSITIVITY_x1,</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; VEML7700_SENSITIVITY_x2,</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; VEML7700_SENSITIVITY_x1_8,</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; VEML7700_SENSITIVITY_x1_4,</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; VEML7700_SENSITIVITY_INVALID</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;} <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c">VEML7700_sensitivity_mode_t</a>;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7"> 55</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;{</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; VEML7700_INTEGRATION_25ms,</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; VEML7700_INTEGRATION_50ms,</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; VEML7700_INTEGRATION_100ms,</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; VEML7700_INTEGRATION_200ms,</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; VEML7700_INTEGRATION_400ms,</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; VEML7700_INTEGRATION_800ms,</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; VEML7700_INTEGRATION_INVALID</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;} <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">VEML7700_integration_time_t</a>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a"> 67</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;{</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; VEML7700_PERSISTENCE_1,</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; VEML7700_PERSISTENCE_2,</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; VEML7700_PERSISTENCE_4,</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; VEML7700_PERSISTENCE_8,</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; VEML7700_PERSISTENCE_INVALID</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;} <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a">VEML7700_persistence_protect_t</a>;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9"> 77</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;{</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; VEML7700_INT_DISABLE,</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; VEML7700_INT_ENABLE,</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; VEML7700_INT_INVALID</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;} <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9">VEML7700_interrupt_enable_t</a>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; </div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458"> 85</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;{</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; VEML7700_INT_STATUS_NONE,</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; VEML7700_INT_STATUS_HIGH,</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; VEML7700_INT_STATUS_LOW,</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; VEML7700_INT_STATUS_BOTH,</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; VEML7700_INT_STATUS_INVALID</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;} <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458">VEML7700_interrupt_status_t</a>;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; </div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560"> 95</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;{</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; VEML7700_POWER_ON,</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; VEML7700_SHUT_DOWN,</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; VEML7700_SHUTDOWN_INVALID</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;} <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560">VEML7700_shutdown_t</a>;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="class_v_e_m_l7700.html"> 103</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_v_e_m_l7700.html">VEML7700</a></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;{</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="class_v_e_m_l7700.html#a4f782190e7b6d4e8467f30c36dc27070">VEML7700</a>();</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; </div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_v_e_m_l7700.html#af40c061e72722295c3b31f27006055d7">begin</a>(TwoWire &amp;wirePort = Wire);</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_v_e_m_l7700.html#a257e7d2a70bb940ce89d5c41bbbeeed5">enableDebugging</a>(Stream &amp;debugPort = Serial);</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_v_e_m_l7700.html#ad0925d35229ca65e98ad79a6c54c528f">disableDebugging</a>();</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; </div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_v_e_m_l7700.html#ac42b5cbc866aa31ba3e2ed1330c68559">isConnected</a>();</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; </div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#a116075e77dfc702e40f282d8281f51e8">setShutdown</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560">VEML7700_shutdown_t</a>);</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> powerOn() { <span class="keywordflow">return</span> <a class="code" href="class_v_e_m_l7700.html#a116075e77dfc702e40f282d8281f51e8">setShutdown</a>(VEML7700_POWER_ON); };</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> shutdown() { <span class="keywordflow">return</span> <a class="code" href="class_v_e_m_l7700.html#a116075e77dfc702e40f282d8281f51e8">setShutdown</a>(VEML7700_SHUT_DOWN); };</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560">VEML7700_shutdown_t</a> <a class="code" href="class_v_e_m_l7700.html#aeb9f3b00c0ebd1297582f1e246007d94">getShutdown</a>();</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; </div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#a0aba999e5b3fd5b6e7658b2a27c06874">setInterruptEnable</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9">VEML7700_interrupt_enable_t</a> ie);</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#a0e105e71ef9ee97f9ad88f44473dfd7d">getInterruptEnable</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9">VEML7700_interrupt_enable_t</a> *ie);</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9">VEML7700_interrupt_enable_t</a> <a class="code" href="class_v_e_m_l7700.html#a0e105e71ef9ee97f9ad88f44473dfd7d">getInterruptEnable</a>();</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#ae3b8c92425867e0dccc8c0393a3f7b95">setPersistenceProtect</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a">VEML7700_persistence_protect_t</a> pp);</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#ae771283dd0ae800bf7194269d54963ea">getPersistenceProtect</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a">VEML7700_persistence_protect_t</a> *pp);</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a">VEML7700_persistence_protect_t</a> <a class="code" href="class_v_e_m_l7700.html#ae771283dd0ae800bf7194269d54963ea">getPersistenceProtect</a>();</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="class_v_e_m_l7700.html#a056fc278531b54f0de0b5537c2e800ba">getPersistenceProtectStr</a>();</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#a8b65876ae4dc75c61831ca4e40beec7e">setIntegrationTime</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">VEML7700_integration_time_t</a> it);</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#aa471e0f323c352295c653555de7c70b4">getIntegrationTime</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">VEML7700_integration_time_t</a> *it);</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">VEML7700_integration_time_t</a> <a class="code" href="class_v_e_m_l7700.html#aa471e0f323c352295c653555de7c70b4">getIntegrationTime</a>();</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="class_v_e_m_l7700.html#aa83b00355c032ff3325c88187b74df40">getIntegrationTimeStr</a>();</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; </div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#ae7146ad656795a542e5c489aef9a12f5">setSensitivityMode</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c">VEML7700_sensitivity_mode_t</a> sm);</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#aceb451c7600bf509bdd8b12381c4e35e">getSensitivityMode</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c">VEML7700_sensitivity_mode_t</a> *sm);</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c">VEML7700_sensitivity_mode_t</a> <a class="code" href="class_v_e_m_l7700.html#aceb451c7600bf509bdd8b12381c4e35e">getSensitivityMode</a>();</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="class_v_e_m_l7700.html#abe744baacfb5483399820e479571aa9b">getSensitivityModeStr</a>();</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; </div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#a5a81f9bf4cf77922723819e406c7b107">setHighThreshold</a>(uint16_t threshold);</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#ad7d4ee449edfe1b6ccbe5ae677e2284a">getHighThreshold</a>(uint16_t *threshold);</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; uint16_t <a class="code" href="class_v_e_m_l7700.html#ad7d4ee449edfe1b6ccbe5ae677e2284a">getHighThreshold</a>();</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#a2dff042bdb48ee0524133a7f69e59613">setLowThreshold</a>(uint16_t threshold);</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#a3b2a4fae6441bd66bd282f17beaaadef">getLowThreshold</a>(uint16_t *threshold);</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; uint16_t <a class="code" href="class_v_e_m_l7700.html#a3b2a4fae6441bd66bd282f17beaaadef">getLowThreshold</a>();</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; </div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#a93257c7adaa80864434bc6d41ad5c2d9">getAmbientLight</a>(uint16_t *ambient);</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; uint16_t <a class="code" href="class_v_e_m_l7700.html#a93257c7adaa80864434bc6d41ad5c2d9">getAmbientLight</a>();</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; </div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#ad172929df5518eec27201fce0b17a763">getWhiteLevel</a>(uint16_t *whiteLevel);</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; uint16_t <a class="code" href="class_v_e_m_l7700.html#ad172929df5518eec27201fce0b17a763">getWhiteLevel</a>();</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; </div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#ae0e25719d1dbd6165b39ab8693f963a1">getLux</a>(<span class="keywordtype">float</span> *lux);</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordtype">float</span> <a class="code" href="class_v_e_m_l7700.html#ae0e25719d1dbd6165b39ab8693f963a1">getLux</a>();</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; </div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> <a class="code" href="class_v_e_m_l7700.html#a8249c59c8e66542ee002eaed2e29ed2e">getInterruptStatus</a>(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458">VEML7700_interrupt_status_t</a> *status);</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458">VEML7700_interrupt_status_t</a> <a class="code" href="class_v_e_m_l7700.html#a8249c59c8e66542ee002eaed2e29ed2e">getInterruptStatus</a>();</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; </div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; </div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; {</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keyword">union</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; {</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; VEML7700_t all;</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keyword">struct</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; {</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; VEML7700_t CONFIG_REG_SD : 1; <span class="comment">// ALS shut down</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; VEML7700_t CONFIG_REG_INT_EN : 1; <span class="comment">// ALS interrupt enable</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; VEML7700_t CONFIG_REG_RES1 : 2; <span class="comment">// Reserved</span></div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; VEML7700_t CONFIG_REG_PERS : 2; <span class="comment">// ALS persistence protect number</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; VEML7700_t CONFIG_REG_IT : 4; <span class="comment">// ALS integration time</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; VEML7700_t CONFIG_REG_RES2 : 1; <span class="comment">// Reserved</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; VEML7700_t CONFIG_REG_SM : 2; <span class="comment">// ALS sensitivity mode</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; VEML7700_t CONFIG_REG_RES3 : 3; <span class="comment">// Reserved</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; };</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; };</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; } VEML7700_CONFIGURATION_REGISTER_t;</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; VEML7700_CONFIGURATION_REGISTER_t _configurationRegister;</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; </div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; {</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">union</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; {</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; VEML7700_t all;</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keyword">struct</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; {</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; VEML7700_t INT_STATUS_REG_RES : 14; <span class="comment">// Reserved</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="comment">// Bit 14 indicates if the high threshold was exceeded</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="comment">// Bit 15 indicates if the low threshold was exceeded</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; VEML7700_t INT_STATUS_REG_INT_FLAGS : 2;</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; };</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; };</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; } VEML7700_INTERRUPT_STATUS_REGISTER_t;</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; </div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keyword">typedef</span> <span class="keyword">enum</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; {</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; VEML7700_CONFIGURATION_REGISTER,</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; VEML7700_HIGH_THRESHOLD,</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; VEML7700_LOW_THRESHOLD,</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; VEML7700_ALS_OUTPUT = 4,</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; VEML7700_WHITE_OUTPUT,</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; VEML7700_INTERRUPT_STATUS</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; } VEML7700_registers_t;</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; </div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keyword">typedef</span> <span class="keyword">enum</span></div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; {</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; VEML7700_CONFIG_INTEGRATION_25ms = 0b1100,</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; VEML7700_CONFIG_INTEGRATION_50ms = 0b1000,</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; VEML7700_CONFIG_INTEGRATION_100ms = 0b0000,</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; VEML7700_CONFIG_INTEGRATION_200ms = 0b0001,</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; VEML7700_CONFIG_INTEGRATION_400ms = 0b0010,</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; VEML7700_CONFIG_INTEGRATION_800ms = 0b0011,</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; VEML7700_CONFIG_INTEGRATION_INVALID</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; } VEML7700_config_integration_time_t;</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; </div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; TwoWire *_i2cPort;</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; Stream *_debugPort;</div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; uint8_t _deviceAddress;</div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordtype">bool</span> _debugEnabled;</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; </div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> _connected(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; </div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> readI2CBuffer(uint8_t *dest, VEML7700_registers_t startRegister, uint16_t len);</div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> writeI2CBuffer(uint8_t *src, VEML7700_registers_t startRegister, uint16_t len);</div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> readI2CRegister(VEML7700_t *dest, VEML7700_registers_t registerAddress);</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a> writeI2CRegister(VEML7700_t data, VEML7700_registers_t registerAddress);</div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; </div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; VEML7700_config_integration_time_t integrationTimeConfig(<a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">VEML7700_integration_time_t</a> it);</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <a class="code" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">VEML7700_integration_time_t</a> integrationTimeFromConfig(VEML7700_config_integration_time_t it);</div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; </div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;};</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; </div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="a_spark_fun___v_e_m_l7700___arduino___library_8h_html_a02770ddad75b2ab41c6a1fbeedd90ca9"><div class="ttname"><a href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9">VEML7700_interrupt_enable_t</a></div><div class="ttdeci">VEML7700_interrupt_enable_t</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.h:78</div></div>
<div class="ttc" id="a_spark_fun___v_e_m_l7700___arduino___library_8h_html_a1bc94f9cd94b70f7c8b723fc33b393e7"><div class="ttname"><a href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">VEML7700_integration_time_t</a></div><div class="ttdeci">VEML7700_integration_time_t</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.h:56</div></div>
<div class="ttc" id="a_spark_fun___v_e_m_l7700___arduino___library_8h_html_a48aaa806500374898400d6369a298560"><div class="ttname"><a href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560">VEML7700_shutdown_t</a></div><div class="ttdeci">VEML7700_shutdown_t</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.h:96</div></div>
<div class="ttc" id="a_spark_fun___v_e_m_l7700___arduino___library_8h_html_aa5bc51cc06d5a446ae172210fa340a87"><div class="ttname"><a href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">VEML7700_error_t</a></div><div class="ttdeci">VEML7700_error_t</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.h:33</div></div>
<div class="ttc" id="a_spark_fun___v_e_m_l7700___arduino___library_8h_html_aa9de4d5f69959ec6d10f697f48264458"><div class="ttname"><a href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458">VEML7700_interrupt_status_t</a></div><div class="ttdeci">VEML7700_interrupt_status_t</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.h:86</div></div>
<div class="ttc" id="a_spark_fun___v_e_m_l7700___arduino___library_8h_html_af597f32e601f72da8594aef787f9196c"><div class="ttname"><a href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c">VEML7700_sensitivity_mode_t</a></div><div class="ttdeci">VEML7700_sensitivity_mode_t</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.h:44</div></div>
<div class="ttc" id="a_spark_fun___v_e_m_l7700___arduino___library_8h_html_af8b1b1186f6740af7c8e6a900e435c8a"><div class="ttname"><a href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a">VEML7700_persistence_protect_t</a></div><div class="ttdeci">VEML7700_persistence_protect_t</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.h:68</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html"><div class="ttname"><a href="class_v_e_m_l7700.html">VEML7700</a></div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.h:104</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a056fc278531b54f0de0b5537c2e800ba"><div class="ttname"><a href="class_v_e_m_l7700.html#a056fc278531b54f0de0b5537c2e800ba">VEML7700::getPersistenceProtectStr</a></div><div class="ttdeci">const char * getPersistenceProtectStr()</div><div class="ttdoc">Get the VEML7700's persistence protect number setting (ALS_PERS) as printable text.</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:366</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a0aba999e5b3fd5b6e7658b2a27c06874"><div class="ttname"><a href="class_v_e_m_l7700.html#a0aba999e5b3fd5b6e7658b2a27c06874">VEML7700::setInterruptEnable</a></div><div class="ttdeci">VEML7700_error_t setInterruptEnable(VEML7700_interrupt_enable_t ie)</div><div class="ttdoc">Set the VEML7700's interrupt enable setting (ALS_INT_EN)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:223</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a0e105e71ef9ee97f9ad88f44473dfd7d"><div class="ttname"><a href="class_v_e_m_l7700.html#a0e105e71ef9ee97f9ad88f44473dfd7d">VEML7700::getInterruptEnable</a></div><div class="ttdeci">VEML7700_interrupt_enable_t getInterruptEnable()</div><div class="ttdoc">Get the VEML7700's interrupt enable setting (ALS_INT_EN)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:270</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a116075e77dfc702e40f282d8281f51e8"><div class="ttname"><a href="class_v_e_m_l7700.html#a116075e77dfc702e40f282d8281f51e8">VEML7700::setShutdown</a></div><div class="ttdeci">VEML7700_error_t setShutdown(VEML7700_shutdown_t)</div><div class="ttdoc">Set the VEML7700's shut down setting (ALS_SD)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:179</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a257e7d2a70bb940ce89d5c41bbbeeed5"><div class="ttname"><a href="class_v_e_m_l7700.html#a257e7d2a70bb940ce89d5c41bbbeeed5">VEML7700::enableDebugging</a></div><div class="ttdeci">void enableDebugging(Stream &amp;debugPort=Serial)</div><div class="ttdoc">Enable debug messages on the chosen Serial port (Stream)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:117</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a2dff042bdb48ee0524133a7f69e59613"><div class="ttname"><a href="class_v_e_m_l7700.html#a2dff042bdb48ee0524133a7f69e59613">VEML7700::setLowThreshold</a></div><div class="ttdeci">VEML7700_error_t setLowThreshold(uint16_t threshold)</div><div class="ttdoc">Set the VEML7700's ALS low threshold window setting (ALS_WL)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:612</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a3b2a4fae6441bd66bd282f17beaaadef"><div class="ttname"><a href="class_v_e_m_l7700.html#a3b2a4fae6441bd66bd282f17beaaadef">VEML7700::getLowThreshold</a></div><div class="ttdeci">uint16_t getLowThreshold()</div><div class="ttdoc">Get the VEML7700's ALS low threshold window setting (ALS_WL)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:636</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a4f782190e7b6d4e8467f30c36dc27070"><div class="ttname"><a href="class_v_e_m_l7700.html#a4f782190e7b6d4e8467f30c36dc27070">VEML7700::VEML7700</a></div><div class="ttdeci">VEML7700()</div><div class="ttdoc">Class to communicate with the VEML7700.</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:64</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a5a81f9bf4cf77922723819e406c7b107"><div class="ttname"><a href="class_v_e_m_l7700.html#a5a81f9bf4cf77922723819e406c7b107">VEML7700::setHighThreshold</a></div><div class="ttdeci">VEML7700_error_t setHighThreshold(uint16_t threshold)</div><div class="ttdoc">Set the VEML7700's ALS high threshold window setting (ALS_WH)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:573</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a8249c59c8e66542ee002eaed2e29ed2e"><div class="ttname"><a href="class_v_e_m_l7700.html#a8249c59c8e66542ee002eaed2e29ed2e">VEML7700::getInterruptStatus</a></div><div class="ttdeci">VEML7700_interrupt_status_t getInterruptStatus()</div><div class="ttdoc">Read the VEML7700's interrupt status register Note: reading the interrupt status register clears the...</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:833</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a8b65876ae4dc75c61831ca4e40beec7e"><div class="ttname"><a href="class_v_e_m_l7700.html#a8b65876ae4dc75c61831ca4e40beec7e">VEML7700::setIntegrationTime</a></div><div class="ttdeci">VEML7700_error_t setIntegrationTime(VEML7700_integration_time_t it)</div><div class="ttdoc">Set the VEML7700's integration time setting (ALS_IT) Note: these are defined here in simple sequenti...</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:391</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_a93257c7adaa80864434bc6d41ad5c2d9"><div class="ttname"><a href="class_v_e_m_l7700.html#a93257c7adaa80864434bc6d41ad5c2d9">VEML7700::getAmbientLight</a></div><div class="ttdeci">uint16_t getAmbientLight()</div><div class="ttdoc">Get the VEML7700's ambient light sensor data (ALS)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:662</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_aa471e0f323c352295c653555de7c70b4"><div class="ttname"><a href="class_v_e_m_l7700.html#aa471e0f323c352295c653555de7c70b4">VEML7700::getIntegrationTime</a></div><div class="ttdeci">VEML7700_integration_time_t getIntegrationTime()</div><div class="ttdoc">Get the VEML7700's integration time setting (ALS_IT)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:446</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_aa83b00355c032ff3325c88187b74df40"><div class="ttname"><a href="class_v_e_m_l7700.html#aa83b00355c032ff3325c88187b74df40">VEML7700::getIntegrationTimeStr</a></div><div class="ttdeci">const char * getIntegrationTimeStr()</div><div class="ttdoc">Get the VEML7700's integration time setting (ALS_IT) as printable text.</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:464</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_abe744baacfb5483399820e479571aa9b"><div class="ttname"><a href="class_v_e_m_l7700.html#abe744baacfb5483399820e479571aa9b">VEML7700::getSensitivityModeStr</a></div><div class="ttdeci">const char * getSensitivityModeStr()</div><div class="ttdoc">Get the VEML7700's sensitivity mode selection (ALS_SM) as printable text.</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:556</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_ac42b5cbc866aa31ba3e2ed1330c68559"><div class="ttname"><a href="class_v_e_m_l7700.html#ac42b5cbc866aa31ba3e2ed1330c68559">VEML7700::isConnected</a></div><div class="ttdeci">bool isConnected()</div><div class="ttdoc">Check that the VEML7700 is awake and communicating.</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:139</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_aceb451c7600bf509bdd8b12381c4e35e"><div class="ttname"><a href="class_v_e_m_l7700.html#aceb451c7600bf509bdd8b12381c4e35e">VEML7700::getSensitivityMode</a></div><div class="ttdeci">VEML7700_sensitivity_mode_t getSensitivityMode()</div><div class="ttdoc">Get the VEML7700's sensitivity mode selection (ALS_SM)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:538</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_ad0925d35229ca65e98ad79a6c54c528f"><div class="ttname"><a href="class_v_e_m_l7700.html#ad0925d35229ca65e98ad79a6c54c528f">VEML7700::disableDebugging</a></div><div class="ttdeci">void disableDebugging()</div><div class="ttdoc">Disable debug messages.</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:128</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_ad172929df5518eec27201fce0b17a763"><div class="ttname"><a href="class_v_e_m_l7700.html#ad172929df5518eec27201fce0b17a763">VEML7700::getWhiteLevel</a></div><div class="ttdeci">uint16_t getWhiteLevel()</div><div class="ttdoc">Get the VEML7700's white level data (WHITE)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:688</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_ad7d4ee449edfe1b6ccbe5ae677e2284a"><div class="ttname"><a href="class_v_e_m_l7700.html#ad7d4ee449edfe1b6ccbe5ae677e2284a">VEML7700::getHighThreshold</a></div><div class="ttdeci">uint16_t getHighThreshold()</div><div class="ttdoc">Get the VEML7700's ALS high threshold window setting (ALS_WH)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:597</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_ae0e25719d1dbd6165b39ab8693f963a1"><div class="ttname"><a href="class_v_e_m_l7700.html#ae0e25719d1dbd6165b39ab8693f963a1">VEML7700::getLux</a></div><div class="ttdeci">float getLux()</div><div class="ttdoc">Read the sensor data and calculate the lux.</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:776</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_ae3b8c92425867e0dccc8c0393a3f7b95"><div class="ttname"><a href="class_v_e_m_l7700.html#ae3b8c92425867e0dccc8c0393a3f7b95">VEML7700::setPersistenceProtect</a></div><div class="ttdeci">VEML7700_error_t setPersistenceProtect(VEML7700_persistence_protect_t pp)</div><div class="ttdoc">Set the VEML7700's persistence protect number setting (ALS_PERS)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:295</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_ae7146ad656795a542e5c489aef9a12f5"><div class="ttname"><a href="class_v_e_m_l7700.html#ae7146ad656795a542e5c489aef9a12f5">VEML7700::setSensitivityMode</a></div><div class="ttdeci">VEML7700_error_t setSensitivityMode(VEML7700_sensitivity_mode_t sm)</div><div class="ttdoc">Set the VEML7700's sensitivity mode selection (ALS_SM)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:485</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_ae771283dd0ae800bf7194269d54963ea"><div class="ttname"><a href="class_v_e_m_l7700.html#ae771283dd0ae800bf7194269d54963ea">VEML7700::getPersistenceProtect</a></div><div class="ttdeci">VEML7700_persistence_protect_t getPersistenceProtect()</div><div class="ttdoc">Get the VEML7700's persistence protect number setting (ALS_PERS)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:348</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_aeb9f3b00c0ebd1297582f1e246007d94"><div class="ttname"><a href="class_v_e_m_l7700.html#aeb9f3b00c0ebd1297582f1e246007d94">VEML7700::getShutdown</a></div><div class="ttdeci">VEML7700_shutdown_t getShutdown()</div><div class="ttdoc">Get the VEML7700's shut down setting (ALS_SD)</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:200</div></div>
<div class="ttc" id="aclass_v_e_m_l7700_html_af40c061e72722295c3b31f27006055d7"><div class="ttname"><a href="class_v_e_m_l7700.html#af40c061e72722295c3b31f27006055d7">VEML7700::begin</a></div><div class="ttdeci">bool begin(TwoWire &amp;wirePort=Wire)</div><div class="ttdoc">Begin communication with the VEML7700.</div><div class="ttdef"><b>Definition:</b> SparkFun_VEML7700_Arduino_Library.cpp:81</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

View File

@@ -0,0 +1,79 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: Class List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Class List</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
<table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_v_e_m_l7700.html" target="_self">VEML7700</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 676 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 B

View File

@@ -0,0 +1,115 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">VEML7700 Member List</div> </div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="class_v_e_m_l7700.html">VEML7700</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#af40c061e72722295c3b31f27006055d7">begin</a>(TwoWire &amp;wirePort=Wire)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#ad0925d35229ca65e98ad79a6c54c528f">disableDebugging</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a257e7d2a70bb940ce89d5c41bbbeeed5">enableDebugging</a>(Stream &amp;debugPort=Serial)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#ae95aba5a71a08dff4f83aafb43a4515c">getAmbientLight</a>(uint16_t *ambient)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a93257c7adaa80864434bc6d41ad5c2d9">getAmbientLight</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a527b11af4d2816894e1db4ba710128b5">getHighThreshold</a>(uint16_t *threshold)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#ad7d4ee449edfe1b6ccbe5ae677e2284a">getHighThreshold</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#abdfee8e09a34d9d7d965107147bf0ccc">getIntegrationTime</a>(VEML7700_integration_time_t *it)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#aa471e0f323c352295c653555de7c70b4">getIntegrationTime</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#aa83b00355c032ff3325c88187b74df40">getIntegrationTimeStr</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a6c48807c2f8168b8399a51bcfc3a14d4">getInterruptEnable</a>(VEML7700_interrupt_enable_t *ie)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a0e105e71ef9ee97f9ad88f44473dfd7d">getInterruptEnable</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a6fe90efe56ba98524b24bf35949b0cfc">getInterruptStatus</a>(VEML7700_interrupt_status_t *status)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a8249c59c8e66542ee002eaed2e29ed2e">getInterruptStatus</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a2dd309f78a3dca06c355286ec2c9d691">getLowThreshold</a>(uint16_t *threshold)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a3b2a4fae6441bd66bd282f17beaaadef">getLowThreshold</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a1719f02916aa332b6f38e79f2d312405">getLux</a>(float *lux)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#ae0e25719d1dbd6165b39ab8693f963a1">getLux</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#afc21b11579aacde3eff53844b3f467b1">getPersistenceProtect</a>(VEML7700_persistence_protect_t *pp)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#ae771283dd0ae800bf7194269d54963ea">getPersistenceProtect</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a056fc278531b54f0de0b5537c2e800ba">getPersistenceProtectStr</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a842bda613a4ec10da7e581e50c0b6563">getSensitivityMode</a>(VEML7700_sensitivity_mode_t *sm)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#aceb451c7600bf509bdd8b12381c4e35e">getSensitivityMode</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#abe744baacfb5483399820e479571aa9b">getSensitivityModeStr</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#aeb9f3b00c0ebd1297582f1e246007d94">getShutdown</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a6a0894ae44f1c43828e8a7bdd36822b2">getWhiteLevel</a>(uint16_t *whiteLevel)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#ad172929df5518eec27201fce0b17a763">getWhiteLevel</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#ac42b5cbc866aa31ba3e2ed1330c68559">isConnected</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>powerOn</b>() (defined in <a class="el" href="class_v_e_m_l7700.html">VEML7700</a>)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a5a81f9bf4cf77922723819e406c7b107">setHighThreshold</a>(uint16_t threshold)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a8b65876ae4dc75c61831ca4e40beec7e">setIntegrationTime</a>(VEML7700_integration_time_t it)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a0aba999e5b3fd5b6e7658b2a27c06874">setInterruptEnable</a>(VEML7700_interrupt_enable_t ie)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a2dff042bdb48ee0524133a7f69e59613">setLowThreshold</a>(uint16_t threshold)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#ae3b8c92425867e0dccc8c0393a3f7b95">setPersistenceProtect</a>(VEML7700_persistence_protect_t pp)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_v_e_m_l7700.html#ae7146ad656795a542e5c489aef9a12f5">setSensitivityMode</a>(VEML7700_sensitivity_mode_t sm)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a116075e77dfc702e40f282d8281f51e8">setShutdown</a>(VEML7700_shutdown_t)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>shutdown</b>() (defined in <a class="el" href="class_v_e_m_l7700.html">VEML7700</a>)</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_v_e_m_l7700.html#a4f782190e7b6d4e8467f30c36dc27070">VEML7700</a>()</td><td class="entry"><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,80 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: Class Index</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Class Index</div> </div>
</div><!--header-->
<div class="contents">
<div class="qindex"><a class="qindex" href="#letter_V">V</a></div>
<div class="classindex">
<dl class="classindex even">
<dt class="alphachar"><a name="letter_V">V</a></dt>
<dd><a class="el" href="class_v_e_m_l7700.html">VEML7700</a></dd></dl>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 B

View File

@@ -0,0 +1,84 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: src Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">src Directory Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
Files</h2></td></tr>
<tr class="memitem:_spark_fun___v_e_m_l7700___arduino___library_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html">SparkFun_VEML7700_Arduino_Library.h</a> <a href="_spark_fun___v_e_m_l7700___arduino___library_8h_source.html">[code]</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 746 B

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,121 @@
/*
@licstart The following is the entire license notice for the JavaScript code in this file.
The MIT License (MIT)
Copyright (C) 1997-2020 by Dimitri van Heesch
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or
substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice for the JavaScript code in this file
*/
function toggleVisibility(linkObj)
{
var base = $(linkObj).attr('id');
var summary = $('#'+base+'-summary');
var content = $('#'+base+'-content');
var trigger = $('#'+base+'-trigger');
var src=$(trigger).attr('src');
if (content.is(':visible')===true) {
content.hide();
summary.show();
$(linkObj).addClass('closed').removeClass('opened');
$(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
} else {
content.show();
summary.hide();
$(linkObj).removeClass('closed').addClass('opened');
$(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
}
return false;
}
function updateStripes()
{
$('table.directory tr').
removeClass('even').filter(':visible:even').addClass('even');
}
function toggleLevel(level)
{
$('table.directory tr').each(function() {
var l = this.id.split('_').length-1;
var i = $('#img'+this.id.substring(3));
var a = $('#arr'+this.id.substring(3));
if (l<level+1) {
i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
a.html('&#9660;');
$(this).show();
} else if (l==level+1) {
i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
a.html('&#9658;');
$(this).show();
} else {
$(this).hide();
}
});
updateStripes();
}
function toggleFolder(id)
{
// the clicked row
var currentRow = $('#row_'+id);
// all rows after the clicked row
var rows = currentRow.nextAll("tr");
var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
// only match elements AFTER this one (can't hide elements before)
var childRows = rows.filter(function() { return this.id.match(re); });
// first row is visible we are HIDING
if (childRows.filter(':first').is(':visible')===true) {
// replace down arrow by right arrow for current row
var currentRowSpans = currentRow.find("span");
currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
currentRowSpans.filter(".arrow").html('&#9658;');
rows.filter("[id^=row_"+id+"]").hide(); // hide all children
} else { // we are SHOWING
// replace right arrow by down arrow for current row
var currentRowSpans = currentRow.find("span");
currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
currentRowSpans.filter(".arrow").html('&#9660;');
// replace down arrows by right arrows for child rows
var childRowsSpans = childRows.find("span");
childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
childRowsSpans.filter(".arrow").html('&#9658;');
childRows.show(); //show all children
}
updateStripes();
}
function toggleInherit(id)
{
var rows = $('tr.inherit.'+id);
var img = $('tr.inherit_header.'+id+' img');
var src = $(img).attr('src');
if (rows.filter(':first').is(':visible')===true) {
rows.css('display','none');
$(img).attr('src',src.substring(0,src.length-8)+'closed.png');
} else {
rows.css('display','table-row'); // using show() causes jump in firefox
$(img).attr('src',src.substring(0,src.length-10)+'open.png');
}
}
/* @license-end */

View File

@@ -0,0 +1,80 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: File List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">File List</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here is a list of all documented files with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span id="img_0_" class="iconfopen" onclick="toggleFolder('0_')">&#160;</span><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" target="_self">src</a></td><td class="desc"></td></tr>
<tr id="row_0_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="_spark_fun___v_e_m_l7700___arduino___library_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html" target="_self">SparkFun_VEML7700_Arduino_Library.h</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 616 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 597 B

View File

@@ -0,0 +1,176 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: Class Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
<h3><a id="index_b"></a>- b -</h3><ul>
<li>begin()
: <a class="el" href="class_v_e_m_l7700.html#af40c061e72722295c3b31f27006055d7">VEML7700</a>
</li>
</ul>
<h3><a id="index_d"></a>- d -</h3><ul>
<li>disableDebugging()
: <a class="el" href="class_v_e_m_l7700.html#ad0925d35229ca65e98ad79a6c54c528f">VEML7700</a>
</li>
</ul>
<h3><a id="index_e"></a>- e -</h3><ul>
<li>enableDebugging()
: <a class="el" href="class_v_e_m_l7700.html#a257e7d2a70bb940ce89d5c41bbbeeed5">VEML7700</a>
</li>
</ul>
<h3><a id="index_g"></a>- g -</h3><ul>
<li>getAmbientLight()
: <a class="el" href="class_v_e_m_l7700.html#ae95aba5a71a08dff4f83aafb43a4515c">VEML7700</a>
</li>
<li>getHighThreshold()
: <a class="el" href="class_v_e_m_l7700.html#a527b11af4d2816894e1db4ba710128b5">VEML7700</a>
</li>
<li>getIntegrationTime()
: <a class="el" href="class_v_e_m_l7700.html#abdfee8e09a34d9d7d965107147bf0ccc">VEML7700</a>
</li>
<li>getIntegrationTimeStr()
: <a class="el" href="class_v_e_m_l7700.html#aa83b00355c032ff3325c88187b74df40">VEML7700</a>
</li>
<li>getInterruptEnable()
: <a class="el" href="class_v_e_m_l7700.html#a6c48807c2f8168b8399a51bcfc3a14d4">VEML7700</a>
</li>
<li>getInterruptStatus()
: <a class="el" href="class_v_e_m_l7700.html#a6fe90efe56ba98524b24bf35949b0cfc">VEML7700</a>
</li>
<li>getLowThreshold()
: <a class="el" href="class_v_e_m_l7700.html#a2dd309f78a3dca06c355286ec2c9d691">VEML7700</a>
</li>
<li>getLux()
: <a class="el" href="class_v_e_m_l7700.html#a1719f02916aa332b6f38e79f2d312405">VEML7700</a>
</li>
<li>getPersistenceProtect()
: <a class="el" href="class_v_e_m_l7700.html#afc21b11579aacde3eff53844b3f467b1">VEML7700</a>
</li>
<li>getPersistenceProtectStr()
: <a class="el" href="class_v_e_m_l7700.html#a056fc278531b54f0de0b5537c2e800ba">VEML7700</a>
</li>
<li>getSensitivityMode()
: <a class="el" href="class_v_e_m_l7700.html#a842bda613a4ec10da7e581e50c0b6563">VEML7700</a>
</li>
<li>getSensitivityModeStr()
: <a class="el" href="class_v_e_m_l7700.html#abe744baacfb5483399820e479571aa9b">VEML7700</a>
</li>
<li>getShutdown()
: <a class="el" href="class_v_e_m_l7700.html#aeb9f3b00c0ebd1297582f1e246007d94">VEML7700</a>
</li>
<li>getWhiteLevel()
: <a class="el" href="class_v_e_m_l7700.html#a6a0894ae44f1c43828e8a7bdd36822b2">VEML7700</a>
</li>
</ul>
<h3><a id="index_i"></a>- i -</h3><ul>
<li>isConnected()
: <a class="el" href="class_v_e_m_l7700.html#ac42b5cbc866aa31ba3e2ed1330c68559">VEML7700</a>
</li>
</ul>
<h3><a id="index_s"></a>- s -</h3><ul>
<li>setHighThreshold()
: <a class="el" href="class_v_e_m_l7700.html#a5a81f9bf4cf77922723819e406c7b107">VEML7700</a>
</li>
<li>setIntegrationTime()
: <a class="el" href="class_v_e_m_l7700.html#a8b65876ae4dc75c61831ca4e40beec7e">VEML7700</a>
</li>
<li>setInterruptEnable()
: <a class="el" href="class_v_e_m_l7700.html#a0aba999e5b3fd5b6e7658b2a27c06874">VEML7700</a>
</li>
<li>setLowThreshold()
: <a class="el" href="class_v_e_m_l7700.html#a2dff042bdb48ee0524133a7f69e59613">VEML7700</a>
</li>
<li>setPersistenceProtect()
: <a class="el" href="class_v_e_m_l7700.html#ae3b8c92425867e0dccc8c0393a3f7b95">VEML7700</a>
</li>
<li>setSensitivityMode()
: <a class="el" href="class_v_e_m_l7700.html#ae7146ad656795a542e5c489aef9a12f5">VEML7700</a>
</li>
<li>setShutdown()
: <a class="el" href="class_v_e_m_l7700.html#a116075e77dfc702e40f282d8281f51e8">VEML7700</a>
</li>
</ul>
<h3><a id="index_v"></a>- v -</h3><ul>
<li>VEML7700()
: <a class="el" href="class_v_e_m_l7700.html#a4f782190e7b6d4e8467f30c36dc27070">VEML7700</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

View File

@@ -0,0 +1,176 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: Class Members - Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
&#160;
<h3><a id="index_b"></a>- b -</h3><ul>
<li>begin()
: <a class="el" href="class_v_e_m_l7700.html#af40c061e72722295c3b31f27006055d7">VEML7700</a>
</li>
</ul>
<h3><a id="index_d"></a>- d -</h3><ul>
<li>disableDebugging()
: <a class="el" href="class_v_e_m_l7700.html#ad0925d35229ca65e98ad79a6c54c528f">VEML7700</a>
</li>
</ul>
<h3><a id="index_e"></a>- e -</h3><ul>
<li>enableDebugging()
: <a class="el" href="class_v_e_m_l7700.html#a257e7d2a70bb940ce89d5c41bbbeeed5">VEML7700</a>
</li>
</ul>
<h3><a id="index_g"></a>- g -</h3><ul>
<li>getAmbientLight()
: <a class="el" href="class_v_e_m_l7700.html#ae95aba5a71a08dff4f83aafb43a4515c">VEML7700</a>
</li>
<li>getHighThreshold()
: <a class="el" href="class_v_e_m_l7700.html#a527b11af4d2816894e1db4ba710128b5">VEML7700</a>
</li>
<li>getIntegrationTime()
: <a class="el" href="class_v_e_m_l7700.html#abdfee8e09a34d9d7d965107147bf0ccc">VEML7700</a>
</li>
<li>getIntegrationTimeStr()
: <a class="el" href="class_v_e_m_l7700.html#aa83b00355c032ff3325c88187b74df40">VEML7700</a>
</li>
<li>getInterruptEnable()
: <a class="el" href="class_v_e_m_l7700.html#a6c48807c2f8168b8399a51bcfc3a14d4">VEML7700</a>
</li>
<li>getInterruptStatus()
: <a class="el" href="class_v_e_m_l7700.html#a6fe90efe56ba98524b24bf35949b0cfc">VEML7700</a>
</li>
<li>getLowThreshold()
: <a class="el" href="class_v_e_m_l7700.html#a2dd309f78a3dca06c355286ec2c9d691">VEML7700</a>
</li>
<li>getLux()
: <a class="el" href="class_v_e_m_l7700.html#a1719f02916aa332b6f38e79f2d312405">VEML7700</a>
</li>
<li>getPersistenceProtect()
: <a class="el" href="class_v_e_m_l7700.html#afc21b11579aacde3eff53844b3f467b1">VEML7700</a>
</li>
<li>getPersistenceProtectStr()
: <a class="el" href="class_v_e_m_l7700.html#a056fc278531b54f0de0b5537c2e800ba">VEML7700</a>
</li>
<li>getSensitivityMode()
: <a class="el" href="class_v_e_m_l7700.html#a842bda613a4ec10da7e581e50c0b6563">VEML7700</a>
</li>
<li>getSensitivityModeStr()
: <a class="el" href="class_v_e_m_l7700.html#abe744baacfb5483399820e479571aa9b">VEML7700</a>
</li>
<li>getShutdown()
: <a class="el" href="class_v_e_m_l7700.html#aeb9f3b00c0ebd1297582f1e246007d94">VEML7700</a>
</li>
<li>getWhiteLevel()
: <a class="el" href="class_v_e_m_l7700.html#a6a0894ae44f1c43828e8a7bdd36822b2">VEML7700</a>
</li>
</ul>
<h3><a id="index_i"></a>- i -</h3><ul>
<li>isConnected()
: <a class="el" href="class_v_e_m_l7700.html#ac42b5cbc866aa31ba3e2ed1330c68559">VEML7700</a>
</li>
</ul>
<h3><a id="index_s"></a>- s -</h3><ul>
<li>setHighThreshold()
: <a class="el" href="class_v_e_m_l7700.html#a5a81f9bf4cf77922723819e406c7b107">VEML7700</a>
</li>
<li>setIntegrationTime()
: <a class="el" href="class_v_e_m_l7700.html#a8b65876ae4dc75c61831ca4e40beec7e">VEML7700</a>
</li>
<li>setInterruptEnable()
: <a class="el" href="class_v_e_m_l7700.html#a0aba999e5b3fd5b6e7658b2a27c06874">VEML7700</a>
</li>
<li>setLowThreshold()
: <a class="el" href="class_v_e_m_l7700.html#a2dff042bdb48ee0524133a7f69e59613">VEML7700</a>
</li>
<li>setPersistenceProtect()
: <a class="el" href="class_v_e_m_l7700.html#ae3b8c92425867e0dccc8c0393a3f7b95">VEML7700</a>
</li>
<li>setSensitivityMode()
: <a class="el" href="class_v_e_m_l7700.html#ae7146ad656795a542e5c489aef9a12f5">VEML7700</a>
</li>
<li>setShutdown()
: <a class="el" href="class_v_e_m_l7700.html#a116075e77dfc702e40f282d8281f51e8">VEML7700</a>
</li>
</ul>
<h3><a id="index_v"></a>- v -</h3><ul>
<li>VEML7700()
: <a class="el" href="class_v_e_m_l7700.html#a4f782190e7b6d4e8467f30c36dc27070">VEML7700</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

View File

@@ -0,0 +1,96 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: File Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
<div class="textblock">Here is a list of all documented file members with links to the documentation:</div><ul>
<li>VEML7700_error_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_I2C_ADDRESS
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a8f6fca44c3ac0e645fc6ab491b8919e9">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_integration_time_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_interrupt_enable_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_interrupt_status_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_persistence_protect_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_sensitivity_mode_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_shutdown_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

View File

@@ -0,0 +1,75 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: File Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
&#160;<ul>
<li>VEML7700_I2C_ADDRESS
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a8f6fca44c3ac0e645fc6ab491b8919e9">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

View File

@@ -0,0 +1,93 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: File Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
&#160;<ul>
<li>VEML7700_error_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_integration_time_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_interrupt_enable_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_interrupt_status_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_persistence_protect_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_sensitivity_mode_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
<li>VEML7700_shutdown_t
: <a class="el" href="_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560">SparkFun_VEML7700_Arduino_Library.h</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

View File

@@ -0,0 +1,86 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SparkFun_VEML7700_Arduino_Library: SparkFun VEML7700 Ambient Light Sensor Arduino Library</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SparkFun_VEML7700_Arduino_Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="PageDoc"><div class="header">
<div class="headertitle">
<div class="title">SparkFun <a class="el" href="class_v_e_m_l7700.html">VEML7700</a> Ambient Light Sensor Arduino Library </div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><h1><a class="anchor" id="intro_sec"></a>
Introduction</h1>
<p>This library facilitates communication with the <a class="el" href="class_v_e_m_l7700.html">VEML7700</a> over I<sup>2</sup>C.</p>
<p>Want to support open source hardware? Buy a board from SparkFun! <br />
SparkX smôl Environmental Peripheral Board (SPX-18976): <a href="https://www.sparkfun.com/products/18976">https://www.sparkfun.com/products/18976</a></p>
<h1><a class="anchor" id="author"></a>
Author</h1>
<p>This library was written by: Paul Clark SparkFun Electronics November 4th 2021</p>
<h1><a class="anchor" id="license"></a>
License</h1>
<p>MIT: please see LICENSE.md for the full license information </p>
</div></div><!-- PageDoc -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,51 @@
/*
@licstart The following is the entire license notice for the JavaScript code in this file.
The MIT License (MIT)
Copyright (C) 1997-2020 by Dimitri van Heesch
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or
substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice for the JavaScript code in this file
*/
function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
function makeTree(data,relPath) {
var result='';
if ('children' in data) {
result+='<ul>';
for (var i in data.children) {
result+='<li><a href="'+relPath+data.children[i].url+'">'+
data.children[i].text+'</a>'+
makeTree(data.children[i],relPath)+'</li>';
}
result+='</ul>';
}
return result;
}
$('#main-nav').append(makeTree(menudata,relPath));
$('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
if (searchEnabled) {
if (serverSide) {
$('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><div class="left"><form id="FSearchBox" action="'+relPath+searchPage+'" method="get"><img id="MSearchSelect" src="'+relPath+'search/mag.svg" alt=""/><input type="text" id="MSearchField" name="query" value="'+search+'" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)"></form></div><div class="right"></div></div></li>');
} else {
$('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><span class="left"><img id="MSearchSelect" src="'+relPath+'search/mag_sel.svg" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/><input type="text" id="MSearchField" value="'+search+'" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/></span><span class="right"><a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="'+relPath+'search/close.svg" alt=""/></a></span></div></li>');
}
}
$('#main-menu').smartmenus();
}
/* @license-end */

View File

@@ -0,0 +1,52 @@
/*
@licstart The following is the entire license notice for the JavaScript code in this file.
The MIT License (MIT)
Copyright (C) 1997-2020 by Dimitri van Heesch
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or
substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice for the JavaScript code in this file
*/
var menudata={children:[
{text:"Main Page",url:"index.html"},
{text:"Classes",url:"annotated.html",children:[
{text:"Class List",url:"annotated.html"},
{text:"Class Index",url:"classes.html"},
{text:"Class Members",url:"functions.html",children:[
{text:"All",url:"functions.html",children:[
{text:"b",url:"functions.html#index_b"},
{text:"d",url:"functions.html#index_d"},
{text:"e",url:"functions.html#index_e"},
{text:"g",url:"functions.html#index_g"},
{text:"i",url:"functions.html#index_i"},
{text:"s",url:"functions.html#index_s"},
{text:"v",url:"functions.html#index_v"}]},
{text:"Functions",url:"functions_func.html",children:[
{text:"b",url:"functions_func.html#index_b"},
{text:"d",url:"functions_func.html#index_d"},
{text:"e",url:"functions_func.html#index_e"},
{text:"g",url:"functions_func.html#index_g"},
{text:"i",url:"functions_func.html#index_i"},
{text:"s",url:"functions_func.html#index_s"},
{text:"v",url:"functions_func.html#index_v"}]}]}]},
{text:"Files",url:"files.html",children:[
{text:"File List",url:"files.html"},
{text:"File Members",url:"globals.html",children:[
{text:"All",url:"globals.html"},
{text:"Enumerations",url:"globals_enum.html"},
{text:"Macros",url:"globals_defs.html"}]}]}]}

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 B

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['begin_0',['begin',['../class_v_e_m_l7700.html#af40c061e72722295c3b31f27006055d7',1,'VEML7700']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_1.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['disabledebugging_1',['disableDebugging',['../class_v_e_m_l7700.html#ad0925d35229ca65e98ad79a6c54c528f',1,'VEML7700']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_2.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['enabledebugging_2',['enableDebugging',['../class_v_e_m_l7700.html#a257e7d2a70bb940ce89d5c41bbbeeed5',1,'VEML7700']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_3.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,17 @@
var searchData=
[
['getambientlight_3',['getAmbientLight',['../class_v_e_m_l7700.html#ae95aba5a71a08dff4f83aafb43a4515c',1,'VEML7700::getAmbientLight(uint16_t *ambient)'],['../class_v_e_m_l7700.html#a93257c7adaa80864434bc6d41ad5c2d9',1,'VEML7700::getAmbientLight()']]],
['gethighthreshold_4',['getHighThreshold',['../class_v_e_m_l7700.html#a527b11af4d2816894e1db4ba710128b5',1,'VEML7700::getHighThreshold(uint16_t *threshold)'],['../class_v_e_m_l7700.html#ad7d4ee449edfe1b6ccbe5ae677e2284a',1,'VEML7700::getHighThreshold()']]],
['getintegrationtime_5',['getIntegrationTime',['../class_v_e_m_l7700.html#abdfee8e09a34d9d7d965107147bf0ccc',1,'VEML7700::getIntegrationTime(VEML7700_integration_time_t *it)'],['../class_v_e_m_l7700.html#aa471e0f323c352295c653555de7c70b4',1,'VEML7700::getIntegrationTime()']]],
['getintegrationtimestr_6',['getIntegrationTimeStr',['../class_v_e_m_l7700.html#aa83b00355c032ff3325c88187b74df40',1,'VEML7700']]],
['getinterruptenable_7',['getInterruptEnable',['../class_v_e_m_l7700.html#a6c48807c2f8168b8399a51bcfc3a14d4',1,'VEML7700::getInterruptEnable(VEML7700_interrupt_enable_t *ie)'],['../class_v_e_m_l7700.html#a0e105e71ef9ee97f9ad88f44473dfd7d',1,'VEML7700::getInterruptEnable()']]],
['getinterruptstatus_8',['getInterruptStatus',['../class_v_e_m_l7700.html#a6fe90efe56ba98524b24bf35949b0cfc',1,'VEML7700::getInterruptStatus(VEML7700_interrupt_status_t *status)'],['../class_v_e_m_l7700.html#a8249c59c8e66542ee002eaed2e29ed2e',1,'VEML7700::getInterruptStatus()']]],
['getlowthreshold_9',['getLowThreshold',['../class_v_e_m_l7700.html#a2dd309f78a3dca06c355286ec2c9d691',1,'VEML7700::getLowThreshold(uint16_t *threshold)'],['../class_v_e_m_l7700.html#a3b2a4fae6441bd66bd282f17beaaadef',1,'VEML7700::getLowThreshold()']]],
['getlux_10',['getLux',['../class_v_e_m_l7700.html#a1719f02916aa332b6f38e79f2d312405',1,'VEML7700::getLux(float *lux)'],['../class_v_e_m_l7700.html#ae0e25719d1dbd6165b39ab8693f963a1',1,'VEML7700::getLux()']]],
['getpersistenceprotect_11',['getPersistenceProtect',['../class_v_e_m_l7700.html#afc21b11579aacde3eff53844b3f467b1',1,'VEML7700::getPersistenceProtect(VEML7700_persistence_protect_t *pp)'],['../class_v_e_m_l7700.html#ae771283dd0ae800bf7194269d54963ea',1,'VEML7700::getPersistenceProtect()']]],
['getpersistenceprotectstr_12',['getPersistenceProtectStr',['../class_v_e_m_l7700.html#a056fc278531b54f0de0b5537c2e800ba',1,'VEML7700']]],
['getsensitivitymode_13',['getSensitivityMode',['../class_v_e_m_l7700.html#a842bda613a4ec10da7e581e50c0b6563',1,'VEML7700::getSensitivityMode(VEML7700_sensitivity_mode_t *sm)'],['../class_v_e_m_l7700.html#aceb451c7600bf509bdd8b12381c4e35e',1,'VEML7700::getSensitivityMode()']]],
['getsensitivitymodestr_14',['getSensitivityModeStr',['../class_v_e_m_l7700.html#abe744baacfb5483399820e479571aa9b',1,'VEML7700']]],
['getshutdown_15',['getShutdown',['../class_v_e_m_l7700.html#aeb9f3b00c0ebd1297582f1e246007d94',1,'VEML7700']]],
['getwhitelevel_16',['getWhiteLevel',['../class_v_e_m_l7700.html#a6a0894ae44f1c43828e8a7bdd36822b2',1,'VEML7700::getWhiteLevel(uint16_t *whiteLevel)'],['../class_v_e_m_l7700.html#ad172929df5518eec27201fce0b17a763',1,'VEML7700::getWhiteLevel()']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_4.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['isconnected_17',['isConnected',['../class_v_e_m_l7700.html#ac42b5cbc866aa31ba3e2ed1330c68559',1,'VEML7700']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_5.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,12 @@
var searchData=
[
['sethighthreshold_18',['setHighThreshold',['../class_v_e_m_l7700.html#a5a81f9bf4cf77922723819e406c7b107',1,'VEML7700']]],
['setintegrationtime_19',['setIntegrationTime',['../class_v_e_m_l7700.html#a8b65876ae4dc75c61831ca4e40beec7e',1,'VEML7700']]],
['setinterruptenable_20',['setInterruptEnable',['../class_v_e_m_l7700.html#a0aba999e5b3fd5b6e7658b2a27c06874',1,'VEML7700']]],
['setlowthreshold_21',['setLowThreshold',['../class_v_e_m_l7700.html#a2dff042bdb48ee0524133a7f69e59613',1,'VEML7700']]],
['setpersistenceprotect_22',['setPersistenceProtect',['../class_v_e_m_l7700.html#ae3b8c92425867e0dccc8c0393a3f7b95',1,'VEML7700']]],
['setsensitivitymode_23',['setSensitivityMode',['../class_v_e_m_l7700.html#ae7146ad656795a542e5c489aef9a12f5',1,'VEML7700']]],
['setshutdown_24',['setShutdown',['../class_v_e_m_l7700.html#a116075e77dfc702e40f282d8281f51e8',1,'VEML7700']]],
['sparkfun_20veml7700_20ambient_20light_20sensor_20arduino_20library_25',['SparkFun VEML7700 Ambient Light Sensor Arduino Library',['../index.html',1,'']]],
['sparkfun_5fveml7700_5farduino_5flibrary_2eh_26',['SparkFun_VEML7700_Arduino_Library.h',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html',1,'']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_6.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,12 @@
var searchData=
[
['veml7700_27',['VEML7700',['../class_v_e_m_l7700.html',1,'VEML7700'],['../class_v_e_m_l7700.html#a4f782190e7b6d4e8467f30c36dc27070',1,'VEML7700::VEML7700()']]],
['veml7700_5ferror_5ft_28',['VEML7700_error_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5fi2c_5faddress_29',['VEML7700_I2C_ADDRESS',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#a8f6fca44c3ac0e645fc6ab491b8919e9',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5fintegration_5ftime_5ft_30',['VEML7700_integration_time_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5finterrupt_5fenable_5ft_31',['VEML7700_interrupt_enable_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5finterrupt_5fstatus_5ft_32',['VEML7700_interrupt_status_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5fpersistence_5fprotect_5ft_33',['VEML7700_persistence_protect_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5fsensitivity_5fmode_5ft_34',['VEML7700_sensitivity_mode_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5fshutdown_5ft_35',['VEML7700_shutdown_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560',1,'SparkFun_VEML7700_Arduino_Library.h']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="classes_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['veml7700_36',['VEML7700',['../class_v_e_m_l7700.html',1,'']]]
];

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 11 11"
height="11"
width="11"
id="svg2"
version="1.1">
<metadata
id="metadata8">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs6" />
<path
id="path12"
d="M 5.5 0.5 A 5 5 0 0 0 0.5 5.5 A 5 5 0 0 0 5.5 10.5 A 5 5 0 0 0 10.5 5.5 A 5 5 0 0 0 5.5 0.5 z M 3.5820312 3 A 0.58291923 0.58291923 0 0 1 4 3.1757812 L 5.5 4.6757812 L 7 3.1757812 A 0.58291923 0.58291923 0 0 1 7.4003906 3 A 0.58291923 0.58291923 0 0 1 7.8242188 4 L 6.3242188 5.5 L 7.8242188 7 A 0.58291923 0.58291923 0 1 1 7 7.8242188 L 5.5 6.3242188 L 4 7.8242188 A 0.58291923 0.58291923 0 1 1 3.1757812 7 L 4.6757812 5.5 L 3.1757812 4 A 0.58291923 0.58291923 0 0 1 3.5820312 3 z "
style="stroke-width:1.09870648;fill:#bababa;fill-opacity:1" />
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="defines_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['veml7700_5fi2c_5faddress_71',['VEML7700_I2C_ADDRESS',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#a8f6fca44c3ac0e645fc6ab491b8919e9',1,'SparkFun_VEML7700_Arduino_Library.h']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="enums_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,10 @@
var searchData=
[
['veml7700_5ferror_5ft_64',['VEML7700_error_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa5bc51cc06d5a446ae172210fa340a87',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5fintegration_5ftime_5ft_65',['VEML7700_integration_time_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#a1bc94f9cd94b70f7c8b723fc33b393e7',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5finterrupt_5fenable_5ft_66',['VEML7700_interrupt_enable_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#a02770ddad75b2ab41c6a1fbeedd90ca9',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5finterrupt_5fstatus_5ft_67',['VEML7700_interrupt_status_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#aa9de4d5f69959ec6d10f697f48264458',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5fpersistence_5fprotect_5ft_68',['VEML7700_persistence_protect_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#af8b1b1186f6740af7c8e6a900e435c8a',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5fsensitivity_5fmode_5ft_69',['VEML7700_sensitivity_mode_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#af597f32e601f72da8594aef787f9196c',1,'SparkFun_VEML7700_Arduino_Library.h']]],
['veml7700_5fshutdown_5ft_70',['VEML7700_shutdown_t',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html#a48aaa806500374898400d6369a298560',1,'SparkFun_VEML7700_Arduino_Library.h']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="files_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['sparkfun_5fveml7700_5farduino_5flibrary_2eh_37',['SparkFun_VEML7700_Arduino_Library.h',['../_spark_fun___v_e_m_l7700___arduino___library_8h.html',1,'']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="functions_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['begin_38',['begin',['../class_v_e_m_l7700.html#af40c061e72722295c3b31f27006055d7',1,'VEML7700']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="functions_1.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['disabledebugging_39',['disableDebugging',['../class_v_e_m_l7700.html#ad0925d35229ca65e98ad79a6c54c528f',1,'VEML7700']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="functions_2.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['enabledebugging_40',['enableDebugging',['../class_v_e_m_l7700.html#a257e7d2a70bb940ce89d5c41bbbeeed5',1,'VEML7700']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="functions_3.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,17 @@
var searchData=
[
['getambientlight_41',['getAmbientLight',['../class_v_e_m_l7700.html#ae95aba5a71a08dff4f83aafb43a4515c',1,'VEML7700::getAmbientLight(uint16_t *ambient)'],['../class_v_e_m_l7700.html#a93257c7adaa80864434bc6d41ad5c2d9',1,'VEML7700::getAmbientLight()']]],
['gethighthreshold_42',['getHighThreshold',['../class_v_e_m_l7700.html#a527b11af4d2816894e1db4ba710128b5',1,'VEML7700::getHighThreshold(uint16_t *threshold)'],['../class_v_e_m_l7700.html#ad7d4ee449edfe1b6ccbe5ae677e2284a',1,'VEML7700::getHighThreshold()']]],
['getintegrationtime_43',['getIntegrationTime',['../class_v_e_m_l7700.html#abdfee8e09a34d9d7d965107147bf0ccc',1,'VEML7700::getIntegrationTime(VEML7700_integration_time_t *it)'],['../class_v_e_m_l7700.html#aa471e0f323c352295c653555de7c70b4',1,'VEML7700::getIntegrationTime()']]],
['getintegrationtimestr_44',['getIntegrationTimeStr',['../class_v_e_m_l7700.html#aa83b00355c032ff3325c88187b74df40',1,'VEML7700']]],
['getinterruptenable_45',['getInterruptEnable',['../class_v_e_m_l7700.html#a6c48807c2f8168b8399a51bcfc3a14d4',1,'VEML7700::getInterruptEnable(VEML7700_interrupt_enable_t *ie)'],['../class_v_e_m_l7700.html#a0e105e71ef9ee97f9ad88f44473dfd7d',1,'VEML7700::getInterruptEnable()']]],
['getinterruptstatus_46',['getInterruptStatus',['../class_v_e_m_l7700.html#a6fe90efe56ba98524b24bf35949b0cfc',1,'VEML7700::getInterruptStatus(VEML7700_interrupt_status_t *status)'],['../class_v_e_m_l7700.html#a8249c59c8e66542ee002eaed2e29ed2e',1,'VEML7700::getInterruptStatus()']]],
['getlowthreshold_47',['getLowThreshold',['../class_v_e_m_l7700.html#a2dd309f78a3dca06c355286ec2c9d691',1,'VEML7700::getLowThreshold(uint16_t *threshold)'],['../class_v_e_m_l7700.html#a3b2a4fae6441bd66bd282f17beaaadef',1,'VEML7700::getLowThreshold()']]],
['getlux_48',['getLux',['../class_v_e_m_l7700.html#a1719f02916aa332b6f38e79f2d312405',1,'VEML7700::getLux(float *lux)'],['../class_v_e_m_l7700.html#ae0e25719d1dbd6165b39ab8693f963a1',1,'VEML7700::getLux()']]],
['getpersistenceprotect_49',['getPersistenceProtect',['../class_v_e_m_l7700.html#afc21b11579aacde3eff53844b3f467b1',1,'VEML7700::getPersistenceProtect(VEML7700_persistence_protect_t *pp)'],['../class_v_e_m_l7700.html#ae771283dd0ae800bf7194269d54963ea',1,'VEML7700::getPersistenceProtect()']]],
['getpersistenceprotectstr_50',['getPersistenceProtectStr',['../class_v_e_m_l7700.html#a056fc278531b54f0de0b5537c2e800ba',1,'VEML7700']]],
['getsensitivitymode_51',['getSensitivityMode',['../class_v_e_m_l7700.html#a842bda613a4ec10da7e581e50c0b6563',1,'VEML7700::getSensitivityMode(VEML7700_sensitivity_mode_t *sm)'],['../class_v_e_m_l7700.html#aceb451c7600bf509bdd8b12381c4e35e',1,'VEML7700::getSensitivityMode()']]],
['getsensitivitymodestr_52',['getSensitivityModeStr',['../class_v_e_m_l7700.html#abe744baacfb5483399820e479571aa9b',1,'VEML7700']]],
['getshutdown_53',['getShutdown',['../class_v_e_m_l7700.html#aeb9f3b00c0ebd1297582f1e246007d94',1,'VEML7700']]],
['getwhitelevel_54',['getWhiteLevel',['../class_v_e_m_l7700.html#a6a0894ae44f1c43828e8a7bdd36822b2',1,'VEML7700::getWhiteLevel(uint16_t *whiteLevel)'],['../class_v_e_m_l7700.html#ad172929df5518eec27201fce0b17a763',1,'VEML7700::getWhiteLevel()']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="functions_4.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['isconnected_55',['isConnected',['../class_v_e_m_l7700.html#ac42b5cbc866aa31ba3e2ed1330c68559',1,'VEML7700']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="functions_5.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,10 @@
var searchData=
[
['sethighthreshold_56',['setHighThreshold',['../class_v_e_m_l7700.html#a5a81f9bf4cf77922723819e406c7b107',1,'VEML7700']]],
['setintegrationtime_57',['setIntegrationTime',['../class_v_e_m_l7700.html#a8b65876ae4dc75c61831ca4e40beec7e',1,'VEML7700']]],
['setinterruptenable_58',['setInterruptEnable',['../class_v_e_m_l7700.html#a0aba999e5b3fd5b6e7658b2a27c06874',1,'VEML7700']]],
['setlowthreshold_59',['setLowThreshold',['../class_v_e_m_l7700.html#a2dff042bdb48ee0524133a7f69e59613',1,'VEML7700']]],
['setpersistenceprotect_60',['setPersistenceProtect',['../class_v_e_m_l7700.html#ae3b8c92425867e0dccc8c0393a3f7b95',1,'VEML7700']]],
['setsensitivitymode_61',['setSensitivityMode',['../class_v_e_m_l7700.html#ae7146ad656795a542e5c489aef9a12f5',1,'VEML7700']]],
['setshutdown_62',['setShutdown',['../class_v_e_m_l7700.html#a116075e77dfc702e40f282d8281f51e8',1,'VEML7700']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="functions_6.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['veml7700_63',['VEML7700',['../class_v_e_m_l7700.html#a4f782190e7b6d4e8467f30c36dc27070',1,'VEML7700']]]
];

View File

@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="svg2"
width="20"
height="19"
viewBox="0 0 20 19"
sodipodi:docname="mag_sel.svg"
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)">
<metadata
id="metadata8">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs6" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="2096"
id="namedview4"
showgrid="false"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
inkscape:zoom="32"
inkscape:cx="5.9792688"
inkscape:cy="1.1436277"
inkscape:window-x="1920"
inkscape:window-y="27"
inkscape:window-maximized="0"
inkscape:current-layer="svg2" />
<circle
style="fill:#000000;fill-opacity:0;stroke:#656565;stroke-width:1.4;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
id="path4611"
cx="5.5"
cy="8.5"
r="3.5" />
<path
style="fill:#656565;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 11,7 13.5,10 16,7 Z"
id="path4609"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
style="fill:none;stroke:#656565;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 8.1085854,11.109059 2.7823556,2.782356"
id="path4630"
inkscape:connector-curvature="0" />
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,13 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="pages_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['sparkfun_20veml7700_20ambient_20light_20sensor_20arduino_20library_72',['SparkFun VEML7700 Ambient Light Sensor Arduino Library',['../index.html',1,'']]]
];

View File

@@ -0,0 +1,257 @@
/*---------------- Search Box */
#MSearchBox {
white-space : nowrap;
background: white;
border-radius: 0.65em;
box-shadow: inset 0.5px 0.5px 3px 0px #555;
z-index: 102;
}
#MSearchBox .left {
display: inline-block;
vertical-align: middle;
height: 1.4em;
}
#MSearchSelect {
display: inline-block;
vertical-align: middle;
height: 1.4em;
padding: 0 0 0 0.3em;
margin: 0;
}
#MSearchField {
display: inline-block;
vertical-align: middle;
width: 7.5em;
height: 1.1em;
margin: 0 0.15em;
padding: 0;
line-height: 1em;
border:none;
color: #909090;
outline: none;
font-family: Arial, Verdana, sans-serif;
-webkit-border-radius: 0px;
border-radius: 0px;
background: none;
}
#MSearchBox .right {
display: inline-block;
vertical-align: middle;
width: 1.4em;
height: 1.4em;
}
#MSearchClose {
display: none;
font-size: inherit;
background : none;
border: none;
margin: 0;
padding: 0;
outline: none;
}
#MSearchCloseImg {
height: 1.4em;
padding: 0.3em;
margin: 0;
}
.MSearchBoxActive #MSearchField {
color: #000000;
}
#main-menu > li:last-child {
/* This <li> object is the parent of the search bar */
display: flex;
justify-content: center;
align-items: center;
height: 36px;
margin-right: 1em;
}
/*---------------- Search filter selection */
#MSearchSelectWindow {
display: none;
position: absolute;
left: 0; top: 0;
border: 1px solid #90A5CE;
background-color: #F9FAFC;
z-index: 10001;
padding-top: 4px;
padding-bottom: 4px;
-moz-border-radius: 4px;
-webkit-border-top-left-radius: 4px;
-webkit-border-top-right-radius: 4px;
-webkit-border-bottom-left-radius: 4px;
-webkit-border-bottom-right-radius: 4px;
-webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
}
.SelectItem {
font: 8pt Arial, Verdana, sans-serif;
padding-left: 2px;
padding-right: 12px;
border: 0px;
}
span.SelectionMark {
margin-right: 4px;
font-family: monospace;
outline-style: none;
text-decoration: none;
}
a.SelectItem {
display: block;
outline-style: none;
color: #000000;
text-decoration: none;
padding-left: 6px;
padding-right: 12px;
}
a.SelectItem:focus,
a.SelectItem:active {
color: #000000;
outline-style: none;
text-decoration: none;
}
a.SelectItem:hover {
color: #FFFFFF;
background-color: #3D578C;
outline-style: none;
text-decoration: none;
cursor: pointer;
display: block;
}
/*---------------- Search results window */
iframe#MSearchResults {
width: 60ex;
height: 15em;
}
#MSearchResultsWindow {
display: none;
position: absolute;
left: 0; top: 0;
border: 1px solid #000;
background-color: #EEF1F7;
z-index:10000;
}
/* ----------------------------------- */
#SRIndex {
clear:both;
padding-bottom: 15px;
}
.SREntry {
font-size: 10pt;
padding-left: 1ex;
}
.SRPage .SREntry {
font-size: 8pt;
padding: 1px 5px;
}
body.SRPage {
margin: 5px 2px;
}
.SRChildren {
padding-left: 3ex; padding-bottom: .5em
}
.SRPage .SRChildren {
display: none;
}
.SRSymbol {
font-weight: bold;
color: #425E97;
font-family: Arial, Verdana, sans-serif;
text-decoration: none;
outline: none;
}
a.SRScope {
display: block;
color: #425E97;
font-family: Arial, Verdana, sans-serif;
text-decoration: none;
outline: none;
}
a.SRSymbol:focus, a.SRSymbol:active,
a.SRScope:focus, a.SRScope:active {
text-decoration: underline;
}
span.SRScope {
padding-left: 4px;
font-family: Arial, Verdana, sans-serif;
}
.SRPage .SRStatus {
padding: 2px 5px;
font-size: 8pt;
font-style: italic;
font-family: Arial, Verdana, sans-serif;
}
.SRResult {
display: none;
}
div.searchresults {
margin-left: 10px;
margin-right: 10px;
}
/*---------------- External search page results */
.searchresult {
background-color: #F0F3F8;
}
.pages b {
color: white;
padding: 5px 5px 3px 5px;
background-image: url("../tab_a.png");
background-repeat: repeat-x;
text-shadow: 0 1px 1px #000000;
}
.pages {
line-height: 17px;
margin-left: 4px;
text-decoration: none;
}
.hl {
font-weight: bold;
}
#searchresults {
margin-bottom: 20px;
}
.searchpages {
margin-top: 10px;
}

View File

@@ -0,0 +1,816 @@
/*
@licstart The following is the entire license notice for the JavaScript code in this file.
The MIT License (MIT)
Copyright (C) 1997-2020 by Dimitri van Heesch
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or
substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice for the JavaScript code in this file
*/
function convertToId(search)
{
var result = '';
for (i=0;i<search.length;i++)
{
var c = search.charAt(i);
var cn = c.charCodeAt(0);
if (c.match(/[a-z0-9\u0080-\uFFFF]/))
{
result+=c;
}
else if (cn<16)
{
result+="_0"+cn.toString(16);
}
else
{
result+="_"+cn.toString(16);
}
}
return result;
}
function getXPos(item)
{
var x = 0;
if (item.offsetWidth)
{
while (item && item!=document.body)
{
x += item.offsetLeft;
item = item.offsetParent;
}
}
return x;
}
function getYPos(item)
{
var y = 0;
if (item.offsetWidth)
{
while (item && item!=document.body)
{
y += item.offsetTop;
item = item.offsetParent;
}
}
return y;
}
/* A class handling everything associated with the search panel.
Parameters:
name - The name of the global variable that will be
storing this instance. Is needed to be able to set timeouts.
resultPath - path to use for external files
*/
function SearchBox(name, resultsPath, inFrame, label, extension)
{
if (!name || !resultsPath) { alert("Missing parameters to SearchBox."); }
if (!extension || extension == "") { extension = ".html"; }
// ---------- Instance variables
this.name = name;
this.resultsPath = resultsPath;
this.keyTimeout = 0;
this.keyTimeoutLength = 500;
this.closeSelectionTimeout = 300;
this.lastSearchValue = "";
this.lastResultsPage = "";
this.hideTimeout = 0;
this.searchIndex = 0;
this.searchActive = false;
this.insideFrame = inFrame;
this.searchLabel = label;
this.extension = extension;
// ----------- DOM Elements
this.DOMSearchField = function()
{ return document.getElementById("MSearchField"); }
this.DOMSearchSelect = function()
{ return document.getElementById("MSearchSelect"); }
this.DOMSearchSelectWindow = function()
{ return document.getElementById("MSearchSelectWindow"); }
this.DOMPopupSearchResults = function()
{ return document.getElementById("MSearchResults"); }
this.DOMPopupSearchResultsWindow = function()
{ return document.getElementById("MSearchResultsWindow"); }
this.DOMSearchClose = function()
{ return document.getElementById("MSearchClose"); }
this.DOMSearchBox = function()
{ return document.getElementById("MSearchBox"); }
// ------------ Event Handlers
// Called when focus is added or removed from the search field.
this.OnSearchFieldFocus = function(isActive)
{
this.Activate(isActive);
}
this.OnSearchSelectShow = function()
{
var searchSelectWindow = this.DOMSearchSelectWindow();
var searchField = this.DOMSearchSelect();
if (this.insideFrame)
{
var left = getXPos(searchField);
var top = getYPos(searchField);
left += searchField.offsetWidth + 6;
top += searchField.offsetHeight;
// show search selection popup
searchSelectWindow.style.display='block';
left -= searchSelectWindow.offsetWidth;
searchSelectWindow.style.left = left + 'px';
searchSelectWindow.style.top = top + 'px';
}
else
{
var left = getXPos(searchField);
var top = getYPos(searchField);
top += searchField.offsetHeight;
// show search selection popup
searchSelectWindow.style.display='block';
searchSelectWindow.style.left = left + 'px';
searchSelectWindow.style.top = top + 'px';
}
// stop selection hide timer
if (this.hideTimeout)
{
clearTimeout(this.hideTimeout);
this.hideTimeout=0;
}
return false; // to avoid "image drag" default event
}
this.OnSearchSelectHide = function()
{
this.hideTimeout = setTimeout(this.name +".CloseSelectionWindow()",
this.closeSelectionTimeout);
}
// Called when the content of the search field is changed.
this.OnSearchFieldChange = function(evt)
{
if (this.keyTimeout) // kill running timer
{
clearTimeout(this.keyTimeout);
this.keyTimeout = 0;
}
var e = (evt) ? evt : window.event; // for IE
if (e.keyCode==40 || e.keyCode==13)
{
if (e.shiftKey==1)
{
this.OnSearchSelectShow();
var win=this.DOMSearchSelectWindow();
for (i=0;i<win.childNodes.length;i++)
{
var child = win.childNodes[i]; // get span within a
if (child.className=='SelectItem')
{
child.focus();
return;
}
}
return;
}
else
{
window.frames.MSearchResults.postMessage("take_focus", "*");
}
}
else if (e.keyCode==27) // Escape out of the search field
{
this.DOMSearchField().blur();
this.DOMPopupSearchResultsWindow().style.display = 'none';
this.DOMSearchClose().style.display = 'none';
this.lastSearchValue = '';
this.Activate(false);
return;
}
// strip whitespaces
var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
if (searchValue != this.lastSearchValue) // search value has changed
{
if (searchValue != "") // non-empty search
{
// set timer for search update
this.keyTimeout = setTimeout(this.name + '.Search()',
this.keyTimeoutLength);
}
else // empty search field
{
this.DOMPopupSearchResultsWindow().style.display = 'none';
this.DOMSearchClose().style.display = 'none';
this.lastSearchValue = '';
}
}
}
this.SelectItemCount = function(id)
{
var count=0;
var win=this.DOMSearchSelectWindow();
for (i=0;i<win.childNodes.length;i++)
{
var child = win.childNodes[i]; // get span within a
if (child.className=='SelectItem')
{
count++;
}
}
return count;
}
this.SelectItemSet = function(id)
{
var i,j=0;
var win=this.DOMSearchSelectWindow();
for (i=0;i<win.childNodes.length;i++)
{
var child = win.childNodes[i]; // get span within a
if (child.className=='SelectItem')
{
var node = child.firstChild;
if (j==id)
{
node.innerHTML='&#8226;';
}
else
{
node.innerHTML='&#160;';
}
j++;
}
}
}
// Called when an search filter selection is made.
// set item with index id as the active item
this.OnSelectItem = function(id)
{
this.searchIndex = id;
this.SelectItemSet(id);
var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
if (searchValue!="" && this.searchActive) // something was found -> do a search
{
this.Search();
}
}
this.OnSearchSelectKey = function(evt)
{
var e = (evt) ? evt : window.event; // for IE
if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) // Down
{
this.searchIndex++;
this.OnSelectItem(this.searchIndex);
}
else if (e.keyCode==38 && this.searchIndex>0) // Up
{
this.searchIndex--;
this.OnSelectItem(this.searchIndex);
}
else if (e.keyCode==13 || e.keyCode==27)
{
this.OnSelectItem(this.searchIndex);
this.CloseSelectionWindow();
this.DOMSearchField().focus();
}
return false;
}
// --------- Actions
// Closes the results window.
this.CloseResultsWindow = function()
{
this.DOMPopupSearchResultsWindow().style.display = 'none';
this.DOMSearchClose().style.display = 'none';
this.Activate(false);
}
this.CloseSelectionWindow = function()
{
this.DOMSearchSelectWindow().style.display = 'none';
}
// Performs a search.
this.Search = function()
{
this.keyTimeout = 0;
// strip leading whitespace
var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
var code = searchValue.toLowerCase().charCodeAt(0);
var idxChar = searchValue.substr(0, 1).toLowerCase();
if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair
{
idxChar = searchValue.substr(0, 2);
}
var resultsPage;
var resultsPageWithSearch;
var hasResultsPage;
var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
if (idx!=-1)
{
var hexCode=idx.toString(16);
resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + this.extension;
resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
hasResultsPage = true;
}
else // nothing available for this search term
{
resultsPage = this.resultsPath + '/nomatches' + this.extension;
resultsPageWithSearch = resultsPage;
hasResultsPage = false;
}
window.frames.MSearchResults.location = resultsPageWithSearch;
var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
if (domPopupSearchResultsWindow.style.display!='block')
{
var domSearchBox = this.DOMSearchBox();
this.DOMSearchClose().style.display = 'inline-block';
if (this.insideFrame)
{
var domPopupSearchResults = this.DOMPopupSearchResults();
domPopupSearchResultsWindow.style.position = 'relative';
domPopupSearchResultsWindow.style.display = 'block';
var width = document.body.clientWidth - 8; // the -8 is for IE :-(
domPopupSearchResultsWindow.style.width = width + 'px';
domPopupSearchResults.style.width = width + 'px';
}
else
{
var domPopupSearchResults = this.DOMPopupSearchResults();
var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth;
var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1;
domPopupSearchResultsWindow.style.display = 'block';
left -= domPopupSearchResults.offsetWidth;
domPopupSearchResultsWindow.style.top = top + 'px';
domPopupSearchResultsWindow.style.left = left + 'px';
}
}
this.lastSearchValue = searchValue;
this.lastResultsPage = resultsPage;
}
// -------- Activation Functions
// Activates or deactivates the search panel, resetting things to
// their default values if necessary.
this.Activate = function(isActive)
{
if (isActive || // open it
this.DOMPopupSearchResultsWindow().style.display == 'block'
)
{
this.DOMSearchBox().className = 'MSearchBoxActive';
var searchField = this.DOMSearchField();
if (searchField.value == this.searchLabel) // clear "Search" term upon entry
{
searchField.value = '';
this.searchActive = true;
}
}
else if (!isActive) // directly remove the panel
{
this.DOMSearchBox().className = 'MSearchBoxInactive';
this.DOMSearchField().value = this.searchLabel;
this.searchActive = false;
this.lastSearchValue = ''
this.lastResultsPage = '';
}
}
}
// -----------------------------------------------------------------------
// The class that handles everything on the search results page.
function SearchResults(name)
{
// The number of matches from the last run of <Search()>.
this.lastMatchCount = 0;
this.lastKey = 0;
this.repeatOn = false;
// Toggles the visibility of the passed element ID.
this.FindChildElement = function(id)
{
var parentElement = document.getElementById(id);
var element = parentElement.firstChild;
while (element && element!=parentElement)
{
if (element.nodeName.toLowerCase() == 'div' && element.className == 'SRChildren')
{
return element;
}
if (element.nodeName.toLowerCase() == 'div' && element.hasChildNodes())
{
element = element.firstChild;
}
else if (element.nextSibling)
{
element = element.nextSibling;
}
else
{
do
{
element = element.parentNode;
}
while (element && element!=parentElement && !element.nextSibling);
if (element && element!=parentElement)
{
element = element.nextSibling;
}
}
}
}
this.Toggle = function(id)
{
var element = this.FindChildElement(id);
if (element)
{
if (element.style.display == 'block')
{
element.style.display = 'none';
}
else
{
element.style.display = 'block';
}
}
}
// Searches for the passed string. If there is no parameter,
// it takes it from the URL query.
//
// Always returns true, since other documents may try to call it
// and that may or may not be possible.
this.Search = function(search)
{
if (!search) // get search word from URL
{
search = window.location.search;
search = search.substring(1); // Remove the leading '?'
search = unescape(search);
}
search = search.replace(/^ +/, ""); // strip leading spaces
search = search.replace(/ +$/, ""); // strip trailing spaces
search = search.toLowerCase();
search = convertToId(search);
var resultRows = document.getElementsByTagName("div");
var matches = 0;
var i = 0;
while (i < resultRows.length)
{
var row = resultRows.item(i);
if (row.className == "SRResult")
{
var rowMatchName = row.id.toLowerCase();
rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
if (search.length<=rowMatchName.length &&
rowMatchName.substr(0, search.length)==search)
{
row.style.display = 'block';
matches++;
}
else
{
row.style.display = 'none';
}
}
i++;
}
document.getElementById("Searching").style.display='none';
if (matches == 0) // no results
{
document.getElementById("NoMatches").style.display='block';
}
else // at least one result
{
document.getElementById("NoMatches").style.display='none';
}
this.lastMatchCount = matches;
return true;
}
// return the first item with index index or higher that is visible
this.NavNext = function(index)
{
var focusItem;
while (1)
{
var focusName = 'Item'+index;
focusItem = document.getElementById(focusName);
if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
{
break;
}
else if (!focusItem) // last element
{
break;
}
focusItem=null;
index++;
}
return focusItem;
}
this.NavPrev = function(index)
{
var focusItem;
while (1)
{
var focusName = 'Item'+index;
focusItem = document.getElementById(focusName);
if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
{
break;
}
else if (!focusItem) // last element
{
break;
}
focusItem=null;
index--;
}
return focusItem;
}
this.ProcessKeys = function(e)
{
if (e.type == "keydown")
{
this.repeatOn = false;
this.lastKey = e.keyCode;
}
else if (e.type == "keypress")
{
if (!this.repeatOn)
{
if (this.lastKey) this.repeatOn = true;
return false; // ignore first keypress after keydown
}
}
else if (e.type == "keyup")
{
this.lastKey = 0;
this.repeatOn = false;
}
return this.lastKey!=0;
}
this.Nav = function(evt,itemIndex)
{
var e = (evt) ? evt : window.event; // for IE
if (e.keyCode==13) return true;
if (!this.ProcessKeys(e)) return false;
if (this.lastKey==38) // Up
{
var newIndex = itemIndex-1;
var focusItem = this.NavPrev(newIndex);
if (focusItem)
{
var child = this.FindChildElement(focusItem.parentNode.parentNode.id);
if (child && child.style.display == 'block') // children visible
{
var n=0;
var tmpElem;
while (1) // search for last child
{
tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
if (tmpElem)
{
focusItem = tmpElem;
}
else // found it!
{
break;
}
n++;
}
}
}
if (focusItem)
{
focusItem.focus();
}
else // return focus to search field
{
parent.document.getElementById("MSearchField").focus();
}
}
else if (this.lastKey==40) // Down
{
var newIndex = itemIndex+1;
var focusItem;
var item = document.getElementById('Item'+itemIndex);
var elem = this.FindChildElement(item.parentNode.parentNode.id);
if (elem && elem.style.display == 'block') // children visible
{
focusItem = document.getElementById('Item'+itemIndex+'_c0');
}
if (!focusItem) focusItem = this.NavNext(newIndex);
if (focusItem) focusItem.focus();
}
else if (this.lastKey==39) // Right
{
var item = document.getElementById('Item'+itemIndex);
var elem = this.FindChildElement(item.parentNode.parentNode.id);
if (elem) elem.style.display = 'block';
}
else if (this.lastKey==37) // Left
{
var item = document.getElementById('Item'+itemIndex);
var elem = this.FindChildElement(item.parentNode.parentNode.id);
if (elem) elem.style.display = 'none';
}
else if (this.lastKey==27) // Escape
{
parent.searchBox.CloseResultsWindow();
parent.document.getElementById("MSearchField").focus();
}
else if (this.lastKey==13) // Enter
{
return true;
}
return false;
}
this.NavChild = function(evt,itemIndex,childIndex)
{
var e = (evt) ? evt : window.event; // for IE
if (e.keyCode==13) return true;
if (!this.ProcessKeys(e)) return false;
if (this.lastKey==38) // Up
{
if (childIndex>0)
{
var newIndex = childIndex-1;
document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
}
else // already at first child, jump to parent
{
document.getElementById('Item'+itemIndex).focus();
}
}
else if (this.lastKey==40) // Down
{
var newIndex = childIndex+1;
var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
if (!elem) // last child, jump to parent next parent
{
elem = this.NavNext(itemIndex+1);
}
if (elem)
{
elem.focus();
}
}
else if (this.lastKey==27) // Escape
{
parent.searchBox.CloseResultsWindow();
parent.document.getElementById("MSearchField").focus();
}
else if (this.lastKey==13) // Enter
{
return true;
}
return false;
}
}
function setKeyActions(elem,action)
{
elem.setAttribute('onkeydown',action);
elem.setAttribute('onkeypress',action);
elem.setAttribute('onkeyup',action);
}
function setClassAttr(elem,attr)
{
elem.setAttribute('class',attr);
elem.setAttribute('className',attr);
}
function createResults()
{
var results = document.getElementById("SRResults");
for (var e=0; e<searchData.length; e++)
{
var id = searchData[e][0];
var srResult = document.createElement('div');
srResult.setAttribute('id','SR_'+id);
setClassAttr(srResult,'SRResult');
var srEntry = document.createElement('div');
setClassAttr(srEntry,'SREntry');
var srLink = document.createElement('a');
srLink.setAttribute('id','Item'+e);
setKeyActions(srLink,'return searchResults.Nav(event,'+e+')');
setClassAttr(srLink,'SRSymbol');
srLink.innerHTML = searchData[e][1][0];
srEntry.appendChild(srLink);
if (searchData[e][1].length==2) // single result
{
srLink.setAttribute('href',searchData[e][1][1][0]);
if (searchData[e][1][1][1])
{
srLink.setAttribute('target','_parent');
}
var srScope = document.createElement('span');
setClassAttr(srScope,'SRScope');
srScope.innerHTML = searchData[e][1][1][2];
srEntry.appendChild(srScope);
}
else // multiple results
{
srLink.setAttribute('href','javascript:searchResults.Toggle("SR_'+id+'")');
var srChildren = document.createElement('div');
setClassAttr(srChildren,'SRChildren');
for (var c=0; c<searchData[e][1].length-1; c++)
{
var srChild = document.createElement('a');
srChild.setAttribute('id','Item'+e+'_c'+c);
setKeyActions(srChild,'return searchResults.NavChild(event,'+e+','+c+')');
setClassAttr(srChild,'SRScope');
srChild.setAttribute('href',searchData[e][1][c+1][0]);
if (searchData[e][1][c+1][1])
{
srChild.setAttribute('target','_parent');
}
srChild.innerHTML = searchData[e][1][c+1][2];
srChildren.appendChild(srChild);
}
srEntry.appendChild(srChildren);
}
srResult.appendChild(srEntry);
results.appendChild(srResult);
}
}
function init_search()
{
var results = document.getElementById("MSearchSelectWindow");
for (var key in indexSectionLabels)
{
var link = document.createElement('a');
link.setAttribute('class','SelectItem');
link.setAttribute('onclick','searchBox.OnSelectItem('+key+')');
link.href='javascript:void(0)';
link.innerHTML='<span class="SelectionMark">&#160;</span>'+indexSectionLabels[key];
results.appendChild(link);
}
searchBox.OnSelectItem(0);
}
/* @license-end */

Binary file not shown.

After

Width:  |  Height:  |  Size: 567 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 158 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 553 B

View File

@@ -0,0 +1,33 @@
var indexSectionsWithContent =
{
0: "bdegisv",
1: "v",
2: "s",
3: "bdegisv",
4: "v",
5: "v",
6: "s"
};
var indexSectionNames =
{
0: "all",
1: "classes",
2: "files",
3: "functions",
4: "enums",
5: "defines",
6: "pages"
};
var indexSectionLabels =
{
0: "All",
1: "Classes",
2: "Files",
3: "Functions",
4: "Enumerations",
5: "Macros",
6: "Pages"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 853 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 845 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 B

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,47 @@
/*!
* @file Example1_getLux.ino
*
* This example was written by:
* Paul Clark
* SparkFun Electronics
* November 4th 2021
*
* This example demonstrates how to initialize the VEML7700 and then get the ambient light lux.
*
* Want to support open source hardware? Buy a board from SparkFun!
* <br>SparkX smôl Environmental Peripheral Board (SPX-18976): https://www.sparkfun.com/products/18976
*
* Please see LICENSE.md for the license information
*
*/
#include <SparkFun_VEML7700_Arduino_Library.h> // Click here to get the library: http://librarymanager/All#SparkFun_VEML7700
VEML7700 mySensor; // Create a VEML7700 object
void setup()
{
Serial.begin(115200);
Serial.println(F("SparkFun VEML7700 Example"));
Wire.begin();
//mySensor.enableDebugging(); // Uncomment this line to enable helpful debug messages on Serial
// Begin the VEML7700 using the Wire I2C port
// .begin will return true on success, or false on failure to communicate
if (mySensor.begin() == false)
{
Serial.println("Unable to communicate with the VEML7700. Please check the wiring. Freezing...");
while (1)
;
}
Serial.println(F("Lux:"));
}
void loop()
{
Serial.println(mySensor.getLux(), 4); // Read the lux from the sensor and print it
delay(250);
}

View File

@@ -0,0 +1,92 @@
/*!
* @file Example2_changeSettings.ino
*
* This example was written by:
* Paul Clark
* SparkFun Electronics
* November 4th 2021
*
* This example demonstrates how to change the VEML7700's sensitivity (gain) and integration time settings.
*
* Want to support open source hardware? Buy a board from SparkFun!
* <br>SparkX smôl Environmental Peripheral Board (SPX-18976): https://www.sparkfun.com/products/18976
*
* Please see LICENSE.md for the license information
*
*/
#include <SparkFun_VEML7700_Arduino_Library.h> // Click here to get the library: http://librarymanager/All#SparkFun_VEML7700
VEML7700 mySensor; // Create a VEML7700 object
void setup()
{
Serial.begin(115200);
Serial.println(F("SparkFun VEML7700 Example"));
Wire.begin();
//mySensor.enableDebugging(); // Uncomment this line to enable helpful debug messages on Serial
// Begin the VEML7700 using the Wire I2C port
// .begin will return true on success, or false on failure to communicate
if (mySensor.begin() == false)
{
Serial.println("Unable to communicate with the VEML7700. Please check the wiring. Freezing...");
while (1)
;
}
//The default integration time is 100ms.
//Possible values are:
//VEML7700_INTEGRATION_25ms
//VEML7700_INTEGRATION_50ms
//VEML7700_INTEGRATION_100ms
//VEML7700_INTEGRATION_200ms
//VEML7700_INTEGRATION_400ms
//VEML7700_INTEGRATION_800ms
//Let's change the integration time to 50ms:
mySensor.setIntegrationTime(VEML7700_INTEGRATION_50ms);
//Confirm the integration time was set correctly
Serial.print(F("The sensor integration time is: "));
Serial.println(mySensor.getIntegrationTimeStr());
//The default gain (sensitivity mode) is x1
//Possible values are:
//VEML7700_SENSITIVITY_x1
//VEML7700_SENSITIVITY_x2
//VEML7700_SENSITIVITY_x1_8
//VEML7700_SENSITIVITY_x1_4
//Let's change the sensitivity to x2:
mySensor.setSensitivityMode(VEML7700_SENSITIVITY_x2);
//Confirm that the sensitivity mode was set correctly
Serial.print(F("The sensor gain (sensitivity mode) is: "));
Serial.println(mySensor.getSensitivityModeStr());
//We can also change the persistence ptotect number. Default is 1.
//Possible values are:
//VEML7700_PERSISTENCE_1
//VEML7700_PERSISTENCE_2
//VEML7700_PERSISTENCE_4
//VEML7700_PERSISTENCE_8
//Let's change the persistence protect to 4:
mySensor.setPersistenceProtect(VEML7700_PERSISTENCE_4);
//Confirm that the persistence protect was set correctly
Serial.print(F("The sensor persistence protect setting is: "));
Serial.println(mySensor.getPersistenceProtectStr());
Serial.println(F("Lux:\tAmbient:\tWhite Level:"));
}
void loop()
{
Serial.print(mySensor.getLux(), 4); // Read the lux from the sensor and print it
Serial.print("\t");
Serial.print(mySensor.getAmbientLight()); // Read the ambient light level
Serial.print("\t");
Serial.println(mySensor.getWhiteLevel()); // Read the white channel level
delay(250);
}

View File

@@ -0,0 +1,99 @@
/*!
* @file Example3_threshold.ino
*
* This example was written by:
* Paul Clark
* SparkFun Electronics
* November 4th 2021
*
* This example demonstrates how to change the VEML7700's threshold settings.
*
* Want to support open source hardware? Buy a board from SparkFun!
* <br>SparkX smôl Environmental Peripheral Board (SPX-18976): https://www.sparkfun.com/products/18976
*
* Please see LICENSE.md for the license information
*
*/
#include <SparkFun_VEML7700_Arduino_Library.h> // Click here to get the library: http://librarymanager/All#SparkFun_VEML7700
VEML7700 mySensor; // Create a VEML7700 object
void setup()
{
Serial.begin(115200);
Serial.println(F("SparkFun VEML7700 Example"));
Wire.begin();
//mySensor.enableDebugging(); // Uncomment this line to enable helpful debug messages on Serial
// Begin the VEML7700 using the Wire I2C port
// .begin will return true on success, or false on failure to communicate
if (mySensor.begin() == false)
{
Serial.println("Unable to communicate with the VEML7700. Please check the wiring. Freezing...");
while (1)
;
}
//Let's change the high threshold to 30000 counts:
mySensor.setHighThreshold(30000);
//Confirm the high threshold was set correctly
Serial.print(F("The high threshold is: "));
Serial.println(mySensor.getHighThreshold());
//Let's change the low threshold to 1000 counts:
mySensor.setLowThreshold(1000);
//Confirm the low threshold was set correctly
Serial.print(F("The low threshold is: "));
Serial.println(mySensor.getLowThreshold());
//Enable the high and low threshold interrupts
mySensor.setInterruptEnable(VEML7700_INT_ENABLE);
//Check that the interrupts are enabled
Serial.print(F("Interrupts are "));
VEML7700_interrupt_enable_t ie;
mySensor.getInterruptEnable(&ie);
if ((ie == VEML7700_INT_DISABLE) || ( ie == VEML7700_INT_INVALID))
Serial.print(F("not "));
Serial.println(F("enabled"));
}
void loop()
{
Serial.print(F("Ambient: "));
Serial.print(mySensor.getAmbientLight()); // Read the ambient light level from the sensor and print it
// Note: reading the interrupt status register clears the interrupts, so we need to check both
// the high and low interrupt flags in a single read
VEML7700_interrupt_status_t intStatus = mySensor.getInterruptStatus(); // Check the interrupt status
// Possible values for intStatus are:
// VEML7700_INT_STATUS_NONE
// VEML7700_INT_STATUS_HIGH
// VEML7700_INT_STATUS_LOW
// VEML7700_INT_STATUS_BOTH
// VEML7700_INT_STATUS_INVALID
if (intStatus == VEML7700_INT_STATUS_INVALID)
{
Serial.print(F("\tInterrupt Status Read Error!"));
}
else
{
if (intStatus & VEML7700_INT_STATUS_HIGH) // Use a logical AND to check if the high flag is set
Serial.print(F("\tHigh Threshold Exceeded"));
if (intStatus & VEML7700_INT_STATUS_LOW) // Use a logical AND to check if the low flag is set
Serial.print(F("\tLow Threshold Exceeded"));
}
Serial.println();
delay(250);
}

View File

@@ -0,0 +1,77 @@
/*!
* @file Example4_shutDown.ino
*
* This example was written by:
* Paul Clark
* SparkFun Electronics
* November 4th 2021
*
* This example demonstrates how to shut down the VEML7700.
*
* Want to support open source hardware? Buy a board from SparkFun!
* <br>SparkX smôl Environmental Peripheral Board (SPX-18976): https://www.sparkfun.com/products/18976
*
* Please see LICENSE.md for the license information
*
*/
#include <SparkFun_VEML7700_Arduino_Library.h> // Click here to get the library: http://librarymanager/All#SparkFun_VEML7700
VEML7700 mySensor; // Create a VEML7700 object
unsigned long lastMillis = 0; // Keep track of time
VEML7700_shutdown_t shutdownState = VEML7700_POWER_ON; // Toggle between VEML7700_POWER_ON and VEML7700_SHUT_DOWN
void setup()
{
Serial.begin(115200);
Serial.println(F("SparkFun VEML7700 Example"));
Wire.begin();
//mySensor.enableDebugging(); // Uncomment this line to enable helpful debug messages on Serial
// Begin the VEML7700 using the Wire I2C port
// .begin will return true on success, or false on failure to communicate
if (mySensor.begin() == false)
{
Serial.println("Unable to communicate with the VEML7700. Please check the wiring. Freezing...");
while (1)
;
}
lastMillis = millis(); // Keep track of time
}
void loop()
{
if (shutdownState == VEML7700_POWER_ON) // Are we "On"? (Comment this line if you are interested in how it effects the sleep current)
{
Serial.print(F("Lux: "));
Serial.println(mySensor.getLux(), 4); // Read the lux from the sensor and print it
}
//Check if it is time to change the power state
if (millis() > (lastMillis + 5000)) // Change state every 5 seconds
{
lastMillis = millis(); // Keep track of time
if (shutdownState == VEML7700_POWER_ON) // Are we "On"?
{
shutdownState = VEML7700_SHUT_DOWN; // Put sensor to sleep
mySensor.setShutdown(shutdownState);
//mySensor.shutDown(); // This would do the same thing
}
else
{
shutdownState = VEML7700_POWER_ON; // Power sensor on
mySensor.setShutdown(shutdownState);
//mySensor.powerOn(); // This would do the same thing
}
}
delay(125);
}

View File

@@ -0,0 +1,50 @@
/*!
* @file Example5_alternatePorts.ino
*
* This example was written by:
* Paul Clark
* SparkFun Electronics
* November 4th 2021
*
* This example demonstrates how to use alternate Wire and Serial ports when communicating with the VEML7700.
*
* Want to support open source hardware? Buy a board from SparkFun!
* <br>SparkX smôl Environmental Peripheral Board (SPX-18976): https://www.sparkfun.com/products/18976
*
* Please see LICENSE.md for the license information
*
*/
#include <SparkFun_VEML7700_Arduino_Library.h> // Click here to get the library: http://librarymanager/All#SparkFun_VEML7700
VEML7700 mySensor; // Create a VEML7700 object
#define myWire Wire // Change this to (e.g.) Wire1 if required
#define mySerial Serial // Change this to (e.g.) Serial1 if required
void setup()
{
mySerial.begin(115200);
mySerial.println(F("SparkFun VEML7700 Example"));
myWire.begin();
//mySensor.enableDebugging(mySerial); // Uncomment this line to enable helpful debug messages on mySerial
// Begin the VEML7700 using the myWire I2C port
// .begin will return true on success, or false on failure to communicate
if (mySensor.begin(myWire) == false)
{
mySerial.println("Unable to communicate with the VEML7700. Please check the wiring. Freezing...");
while (1)
;
}
mySerial.println(F("Lux:"));
}
void loop()
{
mySerial.println(mySensor.getLux(), 4); // Read the lux from the sensor and print it
delay(250);
}

View File

@@ -0,0 +1,89 @@
#######################################
# Syntax Coloring Map
#######################################
#######################################
# Datatypes (KEYWORD1)
#######################################
SparkFun_VEML7700_Arduino_Library KEYWORD1
VEML7700 KEYWORD1
VEML7700_t KEYWORD1
VEML7700_error_t KEYWORD1
VEML7700_sensitivity_mode_t KEYWORD1
VEML7700_integration_time_t KEYWORD1
VEML7700_persistence_protect_t KEYWORD1
VEML7700_interrupt_enable_t KEYWORD1
VEML7700_shutdown_t KEYWORD1
VEML7700_interrupt_status_t KEYWORD1
#######################################
# Methods and Functions (KEYWORD2)
#######################################
begin KEYWORD2
enableDebugging KEYWORD2
disableDebugging KEYWORD2
isConnected KEYWORD2
setShutdown KEYWORD2
powerOn KEYWORD2
shutdown KEYWORD2
getShutdown KEYWORD2
setInterruptEnable KEYWORD2
getInterruptEnable KEYWORD2
setPersistenceProtect KEYWORD2
getPersistenceProtect KEYWORD2
getPersistenceProtectStr KEYWORD2
setIntegrationTime KEYWORD2
getIntegrationTime KEYWORD2
getIntegrationTimeStr KEYWORD2
setSensitivityMode KEYWORD2
getSensitivityMode KEYWORD2
getSensitivityModeStr KEYWORD2
setHighThreshold KEYWORD2
getHighThreshold KEYWORD2
setLowThreshold KEYWORD2
getLowThreshold KEYWORD2
getAmbientLight KEYWORD2
getWhiteLevel KEYWORD2
getLux KEYWORD2
getInterruptStatus KEYWORD2
#######################################
# Constants (LITERAL1)
#######################################
VEML7700_ERROR_READ LITERAL1
VEML7700_ERROR_WRITE LITERAL1
VEML7700_ERROR_INVALID_ADDRESS LITERAL1
VEML7700_ERROR_UNDEFINED LITERAL1
VEML7700_ERROR_SUCCESS LITERAL1
VEML7700_SUCCESS LITERAL1
VEML7700_SENSITIVITY_x1 LITERAL1
VEML7700_SENSITIVITY_x2 LITERAL1
VEML7700_SENSITIVITY_x1_8 LITERAL1
VEML7700_SENSITIVITY_x1_4 LITERAL1
VEML7700_SENSITIVITY_INVALID LITERAL1
VEML7700_INTEGRATION_25ms LITERAL1
VEML7700_INTEGRATION_50ms LITERAL1
VEML7700_INTEGRATION_100ms LITERAL1
VEML7700_INTEGRATION_200ms LITERAL1
VEML7700_INTEGRATION_400ms LITERAL1
VEML7700_INTEGRATION_800ms LITERAL1
VEML7700_INTEGRATION_INVALID LITERAL1
VEML7700_PERSISTENCE_1 LITERAL1
VEML7700_PERSISTENCE_2 LITERAL1
VEML7700_PERSISTENCE_4 LITERAL1
VEML7700_PERSISTENCE_8 LITERAL1
VEML7700_PERSISTENCE_INVALID LITERAL1
VEML7700_INT_DISABLE LITERAL1
VEML7700_INT_ENABLE LITERAL1
VEML7700_INT_INVALID LITERAL1
VEML7700_POWER_ON LITERAL1
VEML7700_SHUT_DOWN LITERAL1
VEML7700_SHUTDOWN_INVALID LITERAL1
VEML7700_INT_STATUS_NONE LITERAL1
VEML7700_INT_STATUS_HIGH LITERAL1
VEML7700_INT_STATUS_LOW LITERAL1
VEML7700_INT_STATUS_BOTH LITERAL1
VEML7700_INT_STATUS_INVALID LITERAL1

View File

@@ -0,0 +1,9 @@
name=SparkFun VEML7700 Arduino Library
version=1.0.0
author=SparkFun Electronics <techsupport@sparkfun.com>
maintainer=SparkFun Electronics <sparkfun.com>
sentence=Library for the VEML7700 Ambient Light Sensor
paragraph=An Arduino Library for the VEML7700 ambient light sensor. This library configures the sensor and reads the ambient light level.
category=Sensors
url=https://github.com/sparkfun/SparkFun_VEML7700_Arduino_Library
architectures=*

View File

@@ -0,0 +1,967 @@
/*!
* @file SparkFun_VEML7700_Arduino_Library.h
*
* @mainpage SparkFun VEML7700 Ambient Light Sensor Arduino Library
*
* @section intro_sec Introduction
*
* This library facilitates communication with the VEML7700 over I<sup>2</sup>C.
*
* Want to support open source hardware? Buy a board from SparkFun!
* <br>SparkX smôl Environmental Peripheral Board (SPX-18976): https://www.sparkfun.com/products/18976
*
* @section author Author
*
* This library was written by:
* Paul Clark
* SparkFun Electronics
* November 4th 2021
*
* @section license License
*
* MIT: please see LICENSE.md for the full license information
*
*/
#include "SparkFun_VEML7700_Arduino_Library.h"
#define VEML7700_REGISTER_LENGTH 2 // 2 bytes per register (16-bit)
#define VEML7700_NUM_INTEGRATION_TIMES 6 // Number of supported integration times
#define VEML7700_NUM_GAIN_SETTINGS 4 // Number of supported gain settings
#define VEML7700_NUM_PERSISTENCE_PROTECT 4 // Number of supported persistence protect settings
/** The sensor resolution vs. gain and integration time. Taken from the VEML7700 Application Note. */
const float VEML7700_LUX_RESOLUTION[VEML7700_NUM_GAIN_SETTINGS][VEML7700_NUM_INTEGRATION_TIMES] =
{
// 25ms 50ms 100ms 200ms 400ms 800ms
{0.2304, 0.1152, 0.0576, 0.0288, 0.0144, 0.0072}, // Gain (sensitivity) 1
{0.1152, 0.0576, 0.0288, 0.0144, 0.0072, 0.0036}, // Gain (sensitivity) 2
{1.8432, 0.9216, 0.4608, 0.2304, 0.1152, 0.0576}, // Gain (sensitivity) 1/8
{0.9216, 0.4608, 0.2304, 0.1152, 0.0576, 0.0288} // Gain (sensitivity) 1/4
};
/** The VEML7700 gain (sensitivity) settings as text (string) */
const char *VEML7700_GAIN_SETTINGS[VEML7700_NUM_GAIN_SETTINGS + 1] =
{
// Note: these are in the order defined by ALS_SM and VEML7700_sensitivity_mode_t
"x1","x2","x1/8","x1/4","INVALID"
};
/** The VEML7700 integration time settings as text (strting) */
const char *VEML7700_INTEGRATION_TIMES[VEML7700_NUM_INTEGRATION_TIMES + 1] =
{
// Note: these are in ascending (VEML7700_integration_time_t) order
// _not_ in ALS_IT (VEML7700_config_integration_time_t) order
"25ms","50ms","100ms","200ms","400ms","800ms","INVALID"
};
/** The VEML7700 persistence protect settings as text (string) */
const char *VEML7700_PERSISTENCE_PROTECT_SETTINGS[VEML7700_NUM_PERSISTENCE_PROTECT + 1] =
{
"1", "2", "4", "8", "INVALID"
};
VEML7700::VEML7700()
{
_i2cPort = NULL;
_debugPort = NULL;
_deviceAddress = VEML7700_I2C_ADDRESS;
_debugEnabled = false;
}
/**************************************************************************/
/*!
@brief Begin communication with the VEML7700
@param wirePort
<br>The TwoWire (I2C) port used to communicate with the sensor.
<br>Default is Wire.
@return True if communication with the VEML7700 was successful, otherwise false.
*/
/**************************************************************************/
bool VEML7700::begin(TwoWire &wirePort)
{
VEML7700_error_t err;
_i2cPort = &wirePort;
/** Write _configurationRegister into the VEML7700_CONFIGURATION_REGISTER.
This will place the device into a known state, in case it was configured previously
and remained powered on when the code was restarted. */
_configurationRegister.all = 0x0000; // Clear the reserved bits
_configurationRegister.CONFIG_REG_SD = VEML7700_POWER_ON;
_configurationRegister.CONFIG_REG_INT_EN = VEML7700_INT_DISABLE;
_configurationRegister.CONFIG_REG_PERS = VEML7700_PERSISTENCE_1;
_configurationRegister.CONFIG_REG_IT = (VEML7700_t)integrationTimeConfig(VEML7700_INTEGRATION_100ms);
_configurationRegister.CONFIG_REG_SM = VEML7700_SENSITIVITY_x1;
err = writeI2CRegister(_configurationRegister.all, VEML7700_CONFIGURATION_REGISTER);
if (_debugEnabled)
{
_debugPort->print(F("VEML7700::begin: I2C error: "));
_debugPort->println(err);
}
return (err == VEML7700_ERROR_SUCCESS);
}
/**************************************************************************/
/*!
@brief Enable debug messages on the chosen Serial port (Stream)
@param debugPort
<br>The Serial port (Stream) the debug messages will be printed to.
<br>Default is Serial.
*/
/**************************************************************************/
void VEML7700::enableDebugging(Stream &debugPort)
{
_debugPort = &debugPort;
_debugEnabled = true;
}
/**************************************************************************/
/*!
@brief Disable debug messages
*/
/**************************************************************************/
void VEML7700::disableDebugging()
{
_debugEnabled = false;
}
/**************************************************************************/
/*!
@brief Check that the VEML7700 is awake and communicating.
@return True if communication with the VEML7700 was successful, otherwise false.
*/
/**************************************************************************/
boolean VEML7700::isConnected()
{
if (_connected() != VEML7700_ERROR_SUCCESS)
{
return false;
}
return true;
}
VEML7700_error_t VEML7700::_connected()
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
if (_debugEnabled)
{
_debugPort->print(F("VEML7700::_connected: error: "));
_debugPort->println(err);
}
return err;
}
if (_debugEnabled) _debugPort->println("VEML7700::_connected: success!");
return VEML7700_ERROR_SUCCESS;
}
/**************************************************************************/
/*!
@brief Set the VEML7700's shut down setting (ALS_SD)
@param sd
<br>The shut down setting. Possible values are:
<br>VEML7700_POWER_ON
<br>VEML7700_SHUT_DOWN
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::setShutdown(VEML7700_shutdown_t sd)
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return err;
}
_configurationRegister.CONFIG_REG_SD = (VEML7700_t)sd;
return writeI2CRegister(_configurationRegister.all, VEML7700_CONFIGURATION_REGISTER);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's shut down setting (ALS_SD)
@return VEML7700_POWER_ON or VEML7700_SHUT_DOWN if successful, VEML7700_SHUTDOWN_INVALID otherwise
*/
/**************************************************************************/
VEML7700_shutdown_t VEML7700::getShutdown()
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return VEML7700_SHUTDOWN_INVALID;
}
return ((VEML7700_shutdown_t)_configurationRegister.CONFIG_REG_SD);
}
/**************************************************************************/
/*!
@brief Set the VEML7700's interrupt enable setting (ALS_INT_EN)
@param ie
<br>The interrupt enable setting. Possible values are:
<br>VEML7700_INT_DISABLE
<br>VEML7700_INT_ENABLE
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::setInterruptEnable(VEML7700_interrupt_enable_t ie)
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return err;
}
_configurationRegister.CONFIG_REG_INT_EN = (VEML7700_t)ie;
return writeI2CRegister(_configurationRegister.all, VEML7700_CONFIGURATION_REGISTER);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's interrupt enable setting (ALS_INT_EN)
@param ie
<br>Will be set to the interrupt enable setting on return
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getInterruptEnable(VEML7700_interrupt_enable_t *ie)
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err == VEML7700_ERROR_SUCCESS)
{
*ie = (VEML7700_interrupt_enable_t)_configurationRegister.CONFIG_REG_INT_EN;
}
else
{
*ie = VEML7700_INT_INVALID;
}
return (err);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's interrupt enable setting (ALS_INT_EN)
@return VEML7700_INT_DISABLE or VEML7700_INT_ENABLE if successful, VEML7700_INT_INVALID otherwise
*/
/**************************************************************************/
VEML7700_interrupt_enable_t VEML7700::getInterruptEnable()
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return VEML7700_INT_INVALID;
}
return ((VEML7700_interrupt_enable_t)_configurationRegister.CONFIG_REG_INT_EN);
}
/**************************************************************************/
/*!
@brief Set the VEML7700's persistence protect number setting (ALS_PERS)
@param pp
<br>The persistence protect setting. Possible values are:
<br>VEML7700_PERSISTENCE_1
<br>VEML7700_PERSISTENCE_2
<br>VEML7700_PERSISTENCE_4
<br>VEML7700_PERSISTENCE_8
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::setPersistenceProtect(VEML7700_persistence_protect_t pp)
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return err;
}
_configurationRegister.CONFIG_REG_PERS = (VEML7700_t)pp;
return writeI2CRegister(_configurationRegister.all, VEML7700_CONFIGURATION_REGISTER);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's persistence protect number setting (ALS_PERS)
@param pp
<br>Will be set to the persistence protect number on return
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getPersistenceProtect(VEML7700_persistence_protect_t *pp)
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err == VEML7700_ERROR_SUCCESS)
{
*pp = (VEML7700_persistence_protect_t)_configurationRegister.CONFIG_REG_PERS;
}
else
{
*pp = VEML7700_PERSISTENCE_INVALID;
}
return (err);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's persistence protect number setting (ALS_PERS)
@return If successful:
<br>VEML7700_PERSISTENCE_1
<br>VEML7700_PERSISTENCE_2
<br>VEML7700_PERSISTENCE_4
<br>VEML7700_PERSISTENCE_8
<br>Otherwise:
<br>VEML7700_PERSISTENCE_INVALID
*/
/**************************************************************************/
VEML7700_persistence_protect_t VEML7700::getPersistenceProtect()
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return VEML7700_PERSISTENCE_INVALID;
}
return ((VEML7700_persistence_protect_t)_configurationRegister.CONFIG_REG_PERS);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's persistence protect number setting (ALS_PERS) as printable text
*/
/**************************************************************************/
const char * VEML7700::getPersistenceProtectStr()
{
VEML7700_persistence_protect_t pp;
getPersistenceProtect(&pp);
return (VEML7700_PERSISTENCE_PROTECT_SETTINGS[pp]);
}
/**************************************************************************/
/*!
@brief Set the VEML7700's integration time setting (ALS_IT)
<br>Note: these are defined here in simple sequential order
<br>The actual register settings are defined in VEML7700_config_integration_time_t
@param it
<br>The integration time setting. Possible values are:
<br>VEML7700_INTEGRATION_25ms
<br>VEML7700_INTEGRATION_50ms
<br>VEML7700_INTEGRATION_100ms
<br>VEML7700_INTEGRATION_200ms
<br>VEML7700_INTEGRATION_400ms
<br>VEML7700_INTEGRATION_800ms
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::setIntegrationTime(VEML7700_integration_time_t it)
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return err;
}
_configurationRegister.CONFIG_REG_IT = (VEML7700_t)integrationTimeConfig(it);
return writeI2CRegister(_configurationRegister.all, VEML7700_CONFIGURATION_REGISTER);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's integration time setting (ALS_IT)
@param it
<br>Will be set to the intergration time setting on return
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getIntegrationTime(VEML7700_integration_time_t *it)
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err == VEML7700_ERROR_SUCCESS)
{
*it = (VEML7700_integration_time_t)integrationTimeFromConfig((VEML7700_config_integration_time_t)_configurationRegister.CONFIG_REG_IT);
}
else
{
*it = VEML7700_INTEGRATION_INVALID;
}
return (err);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's integration time setting (ALS_IT)
@return If successful:
<br>VEML7700_INTEGRATION_25ms
<br>VEML7700_INTEGRATION_50ms
<br>VEML7700_INTEGRATION_100ms
<br>VEML7700_INTEGRATION_200ms
<br>VEML7700_INTEGRATION_400ms
<br>VEML7700_INTEGRATION_800ms
<br>Otherwise:
<br>VEML7700_INTEGRATION_INVALID
*/
/**************************************************************************/
VEML7700_integration_time_t VEML7700::getIntegrationTime()
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return VEML7700_INTEGRATION_INVALID;
}
return ((VEML7700_integration_time_t)integrationTimeFromConfig((VEML7700_config_integration_time_t)_configurationRegister.CONFIG_REG_IT));
}
/**************************************************************************/
/*!
@brief Get the VEML7700's integration time setting (ALS_IT) as printable text
*/
/**************************************************************************/
const char * VEML7700::getIntegrationTimeStr()
{
VEML7700_integration_time_t it;
getIntegrationTime(&it);
return (VEML7700_INTEGRATION_TIMES[it]);
}
/**************************************************************************/
/*!
@brief Set the VEML7700's sensitivity mode selection (ALS_SM)
@param it
<br>The sensitivity mode selection. Possible values are:
<br>VEML7700_SENSITIVITY_x1
<br>VEML7700_SENSITIVITY_x2
<br>VEML7700_SENSITIVITY_x1_8
<br>VEML7700_SENSITIVITY_x1_4
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::setSensitivityMode(VEML7700_sensitivity_mode_t sm)
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return err;
}
_configurationRegister.CONFIG_REG_SM = (VEML7700_t)sm;
return writeI2CRegister(_configurationRegister.all, VEML7700_CONFIGURATION_REGISTER);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's sensitivity mode selection (ALS_SM)
@param sm
<br>Will be set to the sensitivity mode selection on return
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getSensitivityMode(VEML7700_sensitivity_mode_t *sm)
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err == VEML7700_ERROR_SUCCESS)
{
*sm = (VEML7700_sensitivity_mode_t)_configurationRegister.CONFIG_REG_SM;
}
else
{
*sm = VEML7700_SENSITIVITY_INVALID;
}
return (err);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's sensitivity mode selection (ALS_SM)
@return If successful:
<br>VEML7700_SENSITIVITY_x1
<br>VEML7700_SENSITIVITY_x2
<br>VEML7700_SENSITIVITY_x1_8
<br>VEML7700_SENSITIVITY_x1_4
<br>Otherwise:
<br>VEML7700_SENSITIVITY_INVALID
*/
/**************************************************************************/
VEML7700_sensitivity_mode_t VEML7700::getSensitivityMode()
{
VEML7700_error_t err;
err = readI2CRegister((VEML7700_t *)&_configurationRegister, VEML7700_CONFIGURATION_REGISTER);
if (err != VEML7700_ERROR_SUCCESS)
{
return VEML7700_SENSITIVITY_INVALID;
}
return ((VEML7700_sensitivity_mode_t)_configurationRegister.CONFIG_REG_SM);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's sensitivity mode selection (ALS_SM) as printable text
*/
/**************************************************************************/
const char * VEML7700::getSensitivityModeStr()
{
VEML7700_sensitivity_mode_t sm;
getSensitivityMode(&sm);
return (VEML7700_GAIN_SETTINGS[sm]);
}
/**************************************************************************/
/*!
@brief Set the VEML7700's ALS high threshold window setting (ALS_WH)
@param threshold
<br>The threshold setting: 0x0000 to 0xFFFF
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::setHighThreshold(uint16_t threshold)
{
return (writeI2CRegister((VEML7700_t)threshold, VEML7700_HIGH_THRESHOLD));
}
/**************************************************************************/
/*!
@brief Get the VEML7700's ALS high threshold window setting (ALS_WH)
@param threshold
<br>Will be set to the threshold setting on return
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getHighThreshold(uint16_t *threshold)
{
return (readI2CRegister((VEML7700_t *)threshold, VEML7700_HIGH_THRESHOLD));
}
/**************************************************************************/
/*!
@brief Get the VEML7700's ALS high threshold window setting (ALS_WH)
@return The threshold setting
*/
/**************************************************************************/
uint16_t VEML7700::getHighThreshold()
{
uint16_t threshold;
getHighThreshold(&threshold);
return (threshold);
}
/**************************************************************************/
/*!
@brief Set the VEML7700's ALS low threshold window setting (ALS_WL)
@param threshold
<br>The threshold setting: 0x0000 to 0xFFFF
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::setLowThreshold(uint16_t threshold)
{
return (writeI2CRegister((VEML7700_t)threshold, VEML7700_LOW_THRESHOLD));
}
/**************************************************************************/
/*!
@brief Get the VEML7700's ALS low threshold window setting (ALS_WL)
@param threshold
<br>Will be set to the threshold setting on return
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getLowThreshold(uint16_t *threshold)
{
return (readI2CRegister((VEML7700_t *)threshold, VEML7700_LOW_THRESHOLD));
}
/**************************************************************************/
/*!
@brief Get the VEML7700's ALS low threshold window setting (ALS_WL)
@return The threshold setting
*/
/**************************************************************************/
uint16_t VEML7700::getLowThreshold()
{
uint16_t threshold;
getLowThreshold(&threshold);
return (threshold);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's ambient light sensor data (ALS)
@param ambient
<br>Will be set to the ambient level on return
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getAmbientLight(uint16_t *ambient)
{
return (readI2CRegister((VEML7700_t *)ambient, VEML7700_ALS_OUTPUT));
}
/**************************************************************************/
/*!
@brief Get the VEML7700's ambient light sensor data (ALS)
@return The ambient light reading
*/
/**************************************************************************/
uint16_t VEML7700::getAmbientLight()
{
uint16_t ambient;
getAmbientLight(&ambient);
return (ambient);
}
/**************************************************************************/
/*!
@brief Get the VEML7700's white level data (WHITE)
@param whiteLevel
<br>Will be set to the white level on return
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getWhiteLevel(uint16_t *whiteLevel)
{
return (readI2CRegister((VEML7700_t *)whiteLevel, VEML7700_WHITE_OUTPUT));
}
/**************************************************************************/
/*!
@brief Get the VEML7700's white level data (WHITE)
@return The white level reading
*/
/**************************************************************************/
uint16_t VEML7700::getWhiteLevel()
{
uint16_t whiteLevel;
getWhiteLevel(&whiteLevel);
return (whiteLevel);
}
/**************************************************************************/
/*!
@brief Read the sensor data and calculate the lux
@param lux
<br>Will be set to the lux on return
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getLux(float *lux)
{
/** First, we need to extract the correct resolution from the VEML7700_LUX_RESOLUTION
gain and integration time look up table. Let's begin by reading the gain
(sensitivity) and integration time. */
VEML7700_error_t err;
VEML7700_sensitivity_mode_t sm;
err = getSensitivityMode(&sm);
if (err != VEML7700_ERROR_SUCCESS)
return (err);
if (_debugEnabled)
{
_debugPort->print(F("VEML7700::getLux: gain / sensitivity: "));
_debugPort->println(VEML7700_GAIN_SETTINGS[sm]);
}
VEML7700_integration_time_t it;
err = getIntegrationTime(&it);
if (err != VEML7700_ERROR_SUCCESS)
return (err);
if (_debugEnabled)
{
_debugPort->print(F("VEML7700::getLux: integration time: "));
_debugPort->println(VEML7700_INTEGRATION_TIMES[it]);
}
/** Now we can extract the correct resolution from the look up table. */
float resolution = VEML7700_LUX_RESOLUTION[sm][it];
if (_debugEnabled)
{
_debugPort->print(F("VEML7700::getLux: resolution: "));
_debugPort->println(resolution, 4);
}
/** Now we read the ambient level and multiply it by the resolution */
uint16_t ambient;
err = getAmbientLight(&ambient);
if (err != VEML7700_ERROR_SUCCESS)
return (err);
if (_debugEnabled)
{
_debugPort->print(F("VEML7700::getLux: ambient: "));
_debugPort->println(ambient);
}
*lux = (float)ambient * resolution;
if (_debugEnabled)
{
_debugPort->print(F("VEML7700::getLux: lux: "));
_debugPort->println(*lux, 4);
}
return (VEML7700_ERROR_SUCCESS);
}
/**************************************************************************/
/*!
@brief Read the sensor data and calculate the lux
@return The lux
*/
/**************************************************************************/
float VEML7700::getLux()
{
float lux = 0.0;
getLux(&lux);
return (lux);
}
/**************************************************************************/
/*!
@brief Read the VEML7700's interrupt status register
<br>Note: reading the interrupt status register clears the interrupts.
<br> So, we need to check both interrupt flags in a single read.
@param status
<br>Will be set to the logical OR of ALS_IF_L and ALS_IF_H on return
<br>Possible values are:
<br>VEML7700_INT_STATUS_NONE
<br>VEML7700_INT_STATUS_HIGH
<br>VEML7700_INT_STATUS_LOW
<br>VEML7700_INT_STATUS_BOTH
<br>If an I2C error occurred, status will be:
<br>VEML7700_INT_STATUS_INVALID
@return VEML7700_SUCCESS (VEML7700_ERROR_SUCCESS) if successful
*/
/**************************************************************************/
VEML7700_error_t VEML7700::getInterruptStatus(VEML7700_interrupt_status_t *status)
{
VEML7700_error_t err;
VEML7700_INTERRUPT_STATUS_REGISTER_t isr;
err = readI2CRegister((VEML7700_t *)&isr, VEML7700_INTERRUPT_STATUS);
if (err == VEML7700_ERROR_SUCCESS)
{
*status = (VEML7700_interrupt_status_t)isr.INT_STATUS_REG_INT_FLAGS;
}
else
{
*status = VEML7700_INT_STATUS_INVALID;
}
return (err);
}
/**************************************************************************/
/*!
@brief Read the VEML7700's interrupt status register
<br>Note: reading the interrupt status register clears the interrupts.
<br> So, we need to check both interrupt flags in a single read.
@return If successful:
<br>VEML7700_INT_STATUS_NONE
<br>VEML7700_INT_STATUS_HIGH
<br>VEML7700_INT_STATUS_LOW
<br>VEML7700_INT_STATUS_BOTH
<br>Otherwise:
<br>VEML7700_INT_STATUS_INVALID
*/
/**************************************************************************/
VEML7700_interrupt_status_t VEML7700::getInterruptStatus()
{
VEML7700_error_t err;
VEML7700_INTERRUPT_STATUS_REGISTER_t isr;
err = readI2CRegister((VEML7700_t *)&isr, VEML7700_INTERRUPT_STATUS);
if (err != VEML7700_ERROR_SUCCESS)
return (VEML7700_INT_STATUS_INVALID);
return ((VEML7700_interrupt_status_t)isr.INT_STATUS_REG_INT_FLAGS);
}
VEML7700_error_t VEML7700::readI2CBuffer(uint8_t *dest, VEML7700_registers_t startRegister, uint16_t len)
{
_i2cPort->beginTransmission(_deviceAddress);
_i2cPort->write(startRegister);
if (_i2cPort->endTransmission(false) != 0)
{
if (_debugEnabled) _debugPort->println(F("VEML7700::readI2CBuffer: endTransmission error"));
return VEML7700_ERROR_READ;
}
_i2cPort->requestFrom(_deviceAddress, (uint8_t)len);
if (_debugEnabled)
{
_debugPort->print(F("VEML7700::readI2CBuffer: register: 0x"));
_debugPort->println(startRegister, HEX);
_debugPort->print(F("VEML7700::readI2CBuffer: device returned:"));
}
for (uint16_t i = 0; i < len; i++)
{
dest[i] = _i2cPort->read();
if (_debugEnabled)
{
_debugPort->print(F(" 0x"));
_debugPort->print(dest[i], HEX);
}
}
if (_debugEnabled) _debugPort->println(F(""));
return VEML7700_ERROR_SUCCESS;
}
VEML7700_error_t VEML7700::writeI2CBuffer(uint8_t *src, VEML7700_registers_t startRegister, uint16_t len)
{
_i2cPort->beginTransmission(_deviceAddress);
_i2cPort->write(startRegister);
for (uint16_t i = 0; i < len; i++)
{
_i2cPort->write(src[i]);
}
if (_i2cPort->endTransmission(true) != 0)
{
return VEML7700_ERROR_WRITE;
}
return VEML7700_ERROR_SUCCESS;
}
VEML7700_error_t VEML7700::readI2CRegister(VEML7700_t *dest, VEML7700_registers_t registerAddress)
{
VEML7700_error_t err;
uint8_t tempDest[2];
err = readI2CBuffer(tempDest, registerAddress, VEML7700_REGISTER_LENGTH);
if (err == VEML7700_ERROR_SUCCESS)
{
*dest = (tempDest[0]) | ((VEML7700_t)tempDest[1] << 8);
}
return err;
}
VEML7700_error_t VEML7700::writeI2CRegister(VEML7700_t data, VEML7700_registers_t registerAddress)
{
uint8_t d[2];
// Write LSB first
d[0] = (uint8_t)(data & 0x00FF);
d[1] = (uint8_t)((data & 0xFF00) >> 8);
return writeI2CBuffer(d, registerAddress, VEML7700_REGISTER_LENGTH);
}
VEML7700::VEML7700_config_integration_time_t VEML7700::integrationTimeConfig(VEML7700_integration_time_t it)
{
switch (it)
{
case VEML7700_INTEGRATION_25ms:
return (VEML7700_CONFIG_INTEGRATION_25ms);
break;
case VEML7700_INTEGRATION_50ms:
return (VEML7700_CONFIG_INTEGRATION_50ms);
break;
case VEML7700_INTEGRATION_100ms:
return (VEML7700_CONFIG_INTEGRATION_100ms);
break;
case VEML7700_INTEGRATION_200ms:
return (VEML7700_CONFIG_INTEGRATION_200ms);
break;
case VEML7700_INTEGRATION_400ms:
return (VEML7700_CONFIG_INTEGRATION_400ms);
break;
case VEML7700_INTEGRATION_800ms:
return (VEML7700_CONFIG_INTEGRATION_800ms);
break;
default:
break;
}
return (VEML7700_CONFIG_INTEGRATION_INVALID);
}
VEML7700_integration_time_t VEML7700::integrationTimeFromConfig(VEML7700::VEML7700_config_integration_time_t it)
{
switch (it)
{
case VEML7700_CONFIG_INTEGRATION_25ms:
return (VEML7700_INTEGRATION_25ms);
break;
case VEML7700_CONFIG_INTEGRATION_50ms:
return (VEML7700_INTEGRATION_50ms);
break;
case VEML7700_CONFIG_INTEGRATION_100ms:
return (VEML7700_INTEGRATION_100ms);
break;
case VEML7700_CONFIG_INTEGRATION_200ms:
return (VEML7700_INTEGRATION_200ms);
break;
case VEML7700_CONFIG_INTEGRATION_400ms:
return (VEML7700_INTEGRATION_400ms);
break;
case VEML7700_CONFIG_INTEGRATION_800ms:
return (VEML7700_INTEGRATION_800ms);
break;
default:
break;
}
return (VEML7700_INTEGRATION_INVALID);
}

View File

@@ -0,0 +1,252 @@
/*!
* @file SparkFun_VEML7700_Arduino_Library.h
*
* SparkFun VEML7700 Ambient Light Sensor Arduino Library
*
* This library facilitates communication with the VEML7700 over I<sup>2</sup>C.
*
* Want to support open source hardware? Buy a board from SparkFun!
* <br>SparkX smôl Environmental Peripheral Board (SPX-18976): https://www.sparkfun.com/products/18976
*
* This library was written by:
* Paul Clark
* SparkFun Electronics
* November 4th 2021
*
* Please see LICENSE.md for the license information
*
*/
#ifndef __SFE_SMOL_POWER_BOARD__
#define __SFE_SMOL_POWER_BOARD__
#include <Arduino.h>
#include <Wire.h>
typedef uint16_t VEML7700_t;
/** VEML7700 I2C address */
#define VEML7700_I2C_ADDRESS 0x10
/** VEML7700 error code returns */
typedef enum
{
VEML7700_ERROR_READ = -4,
VEML7700_ERROR_WRITE = -3,
VEML7700_ERROR_INVALID_ADDRESS = -2,
VEML7700_ERROR_UNDEFINED = -1,
VEML7700_ERROR_SUCCESS = 1
} VEML7700_error_t;
const VEML7700_error_t VEML7700_SUCCESS = VEML7700_ERROR_SUCCESS;
/** Sensitivity mode selection */
typedef enum
{
VEML7700_SENSITIVITY_x1,
VEML7700_SENSITIVITY_x2,
VEML7700_SENSITIVITY_x1_8,
VEML7700_SENSITIVITY_x1_4,
VEML7700_SENSITIVITY_INVALID
} VEML7700_sensitivity_mode_t;
/** ALS integration time setting
Note: these are defined here in simple sequential order.
The actual register settings are defined in VEML7700_config_integration_time_t */
typedef enum
{
VEML7700_INTEGRATION_25ms,
VEML7700_INTEGRATION_50ms,
VEML7700_INTEGRATION_100ms,
VEML7700_INTEGRATION_200ms,
VEML7700_INTEGRATION_400ms,
VEML7700_INTEGRATION_800ms,
VEML7700_INTEGRATION_INVALID
} VEML7700_integration_time_t;
/** ALS persistence protect number setting */
typedef enum
{
VEML7700_PERSISTENCE_1,
VEML7700_PERSISTENCE_2,
VEML7700_PERSISTENCE_4,
VEML7700_PERSISTENCE_8,
VEML7700_PERSISTENCE_INVALID
} VEML7700_persistence_protect_t;
/** ALS interrupt enable setting */
typedef enum
{
VEML7700_INT_DISABLE,
VEML7700_INT_ENABLE,
VEML7700_INT_INVALID
} VEML7700_interrupt_enable_t;
/** ALS interrupt status, logical OR of the crossing low and high thrteshold INT triggers */
typedef enum
{
VEML7700_INT_STATUS_NONE,
VEML7700_INT_STATUS_HIGH,
VEML7700_INT_STATUS_LOW,
VEML7700_INT_STATUS_BOTH,
VEML7700_INT_STATUS_INVALID
} VEML7700_interrupt_status_t;
/** ALS shut down setting */
typedef enum
{
VEML7700_POWER_ON,
VEML7700_SHUT_DOWN,
VEML7700_SHUTDOWN_INVALID
} VEML7700_shutdown_t;
/** Communication interface for the VEML7700 */
class VEML7700
{
public:
/** @brief Class to communicate with the VEML7700 */
VEML7700();
/** Begin the VEML7700. Default to Wire */
bool begin(TwoWire &wirePort = Wire);
/** Enable debug messages. Default to Serial */
void enableDebugging(Stream &debugPort = Serial);
void disableDebugging();
bool isConnected();
/** Configuration controls */
VEML7700_error_t setShutdown(VEML7700_shutdown_t);
VEML7700_error_t powerOn() { return setShutdown(VEML7700_POWER_ON); };
VEML7700_error_t shutdown() { return setShutdown(VEML7700_SHUT_DOWN); };
VEML7700_shutdown_t getShutdown();
VEML7700_error_t setInterruptEnable(VEML7700_interrupt_enable_t ie);
VEML7700_error_t getInterruptEnable(VEML7700_interrupt_enable_t *ie);
VEML7700_interrupt_enable_t getInterruptEnable();
VEML7700_error_t setPersistenceProtect(VEML7700_persistence_protect_t pp);
VEML7700_error_t getPersistenceProtect(VEML7700_persistence_protect_t *pp);
VEML7700_persistence_protect_t getPersistenceProtect();
const char * getPersistenceProtectStr();
VEML7700_error_t setIntegrationTime(VEML7700_integration_time_t it);
VEML7700_error_t getIntegrationTime(VEML7700_integration_time_t *it);
VEML7700_integration_time_t getIntegrationTime();
const char * getIntegrationTimeStr();
VEML7700_error_t setSensitivityMode(VEML7700_sensitivity_mode_t sm);
VEML7700_error_t getSensitivityMode(VEML7700_sensitivity_mode_t *sm);
VEML7700_sensitivity_mode_t getSensitivityMode();
const char * getSensitivityModeStr();
VEML7700_error_t setHighThreshold(uint16_t threshold);
VEML7700_error_t getHighThreshold(uint16_t *threshold);
uint16_t getHighThreshold();
VEML7700_error_t setLowThreshold(uint16_t threshold);
VEML7700_error_t getLowThreshold(uint16_t *threshold);
uint16_t getLowThreshold();
/** Read the sensor data */
VEML7700_error_t getAmbientLight(uint16_t *ambient);
uint16_t getAmbientLight();
VEML7700_error_t getWhiteLevel(uint16_t *whiteLevel);
uint16_t getWhiteLevel();
VEML7700_error_t getLux(float *lux);
float getLux();
/** Note: reading the interrupt status register clears the interrupts.
So, we need to check both interrupt flags in a single read. */
VEML7700_error_t getInterruptStatus(VEML7700_interrupt_status_t *status);
VEML7700_interrupt_status_t getInterruptStatus();
private:
/** Provide bit field access to the configuration register */
typedef struct
{
union
{
VEML7700_t all;
struct
{
VEML7700_t CONFIG_REG_SD : 1; // ALS shut down
VEML7700_t CONFIG_REG_INT_EN : 1; // ALS interrupt enable
VEML7700_t CONFIG_REG_RES1 : 2; // Reserved
VEML7700_t CONFIG_REG_PERS : 2; // ALS persistence protect number
VEML7700_t CONFIG_REG_IT : 4; // ALS integration time
VEML7700_t CONFIG_REG_RES2 : 1; // Reserved
VEML7700_t CONFIG_REG_SM : 2; // ALS sensitivity mode
VEML7700_t CONFIG_REG_RES3 : 3; // Reserved
};
};
} VEML7700_CONFIGURATION_REGISTER_t;
VEML7700_CONFIGURATION_REGISTER_t _configurationRegister;
/** Provide bit field access to the interrupt status register
Note: reading the interrupt status register clears the interrupts.
So, we need to check both interrupt flags in a single read. */
typedef struct
{
union
{
VEML7700_t all;
struct
{
VEML7700_t INT_STATUS_REG_RES : 14; // Reserved
// Bit 14 indicates if the high threshold was exceeded
// Bit 15 indicates if the low threshold was exceeded
VEML7700_t INT_STATUS_REG_INT_FLAGS : 2;
};
};
} VEML7700_INTERRUPT_STATUS_REGISTER_t;
/** VEML7700 Registers */
typedef enum
{
VEML7700_CONFIGURATION_REGISTER,
VEML7700_HIGH_THRESHOLD,
VEML7700_LOW_THRESHOLD,
VEML7700_ALS_OUTPUT = 4,
VEML7700_WHITE_OUTPUT,
VEML7700_INTERRUPT_STATUS
} VEML7700_registers_t;
/** ALS integration time setting */
typedef enum
{
VEML7700_CONFIG_INTEGRATION_25ms = 0b1100,
VEML7700_CONFIG_INTEGRATION_50ms = 0b1000,
VEML7700_CONFIG_INTEGRATION_100ms = 0b0000,
VEML7700_CONFIG_INTEGRATION_200ms = 0b0001,
VEML7700_CONFIG_INTEGRATION_400ms = 0b0010,
VEML7700_CONFIG_INTEGRATION_800ms = 0b0011,
VEML7700_CONFIG_INTEGRATION_INVALID
} VEML7700_config_integration_time_t;
TwoWire *_i2cPort;
Stream *_debugPort;
uint8_t _deviceAddress;
bool _debugEnabled;
VEML7700_error_t _connected(void);
/** I2C Read/Write */
VEML7700_error_t readI2CBuffer(uint8_t *dest, VEML7700_registers_t startRegister, uint16_t len);
VEML7700_error_t writeI2CBuffer(uint8_t *src, VEML7700_registers_t startRegister, uint16_t len);
VEML7700_error_t readI2CRegister(VEML7700_t *dest, VEML7700_registers_t registerAddress);
VEML7700_error_t writeI2CRegister(VEML7700_t data, VEML7700_registers_t registerAddress);
/** Convert the (sequential) integration time into the corresponding (non-sequential) configuration value */
VEML7700_config_integration_time_t integrationTimeConfig(VEML7700_integration_time_t it);
/** Convert the (non-sequential) integration time config into the corresponding (sequential) integration time */
VEML7700_integration_time_t integrationTimeFromConfig(VEML7700_config_integration_time_t it);
};
#endif