56 lines
1.2 KiB
Markdown
56 lines
1.2 KiB
Markdown
# HMC5883L Module
|
|
| Since | Origin / Contributor | Maintainer | Source |
|
|
| :----- | :-------------------- | :---------- | :------ |
|
|
| 2016-04-09 | [Jason Schmidlapp](https://github.com/jschmidlapp) | [Jason Schmidlapp](https://github.com/jschmidlapp) | [hmc5883l.c](../../../app/modules/hmc5883l.c)|
|
|
|
|
|
|
This module provides access to the [HMC5883L](https://www.sparkfun.com/products/10530) three axis digital compass.
|
|
|
|
## hmc5883l.read()
|
|
Samples the sensor and returns X,Y and Z data.
|
|
|
|
#### Syntax
|
|
`hmc5883l.read()`
|
|
|
|
#### Returns
|
|
x,y,z measurements (integers)
|
|
temperature multiplied with 10 (integer)
|
|
|
|
#### Example
|
|
```lua
|
|
local sda, scl = 1, 2
|
|
i2c.setup(0, sda, scl, i2c.SLOW) -- call i2c.setup() only once
|
|
hmc58831.setup()
|
|
local x,y,z = hmc5883l.read()
|
|
print(string.format("x = %d, y = %d, z = %d", x, y, z))
|
|
```
|
|
|
|
## hmc5883l.init()
|
|
Initializes the module and sets the pin configuration.
|
|
|
|
!!! attention
|
|
|
|
This function is deprecated and will be removed in upcoming releases. Use `hmc5883l.setup()` instead.
|
|
|
|
#### Syntax
|
|
`hmc5883l.init(sda, scl)`
|
|
|
|
#### Parameters
|
|
- `sda` data pin
|
|
- `scl` clock pin
|
|
|
|
#### Returns
|
|
`nil`
|
|
|
|
## hmc5883l.setup()
|
|
Initializes the module.
|
|
|
|
#### Syntax
|
|
`hmc5883l.setup()`
|
|
|
|
#### Parameters
|
|
None
|
|
|
|
#### Returns
|
|
`nil`
|