mirror of
https://github.com/firewalkwithm3/qmk_firmware.git
synced 2024-11-22 19:40:29 +08:00
[Core] Add configuration of PMW3360 lift off distance (#15424)
* sensor code add * update documentation * add default #define * Update drivers/sensors/pmw3360.c Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Drashna Jaelre <drashna@live.com>
This commit is contained in:
parent
b2576dcf12
commit
b09c44ced7
|
@ -150,6 +150,7 @@ The PMW 3360 is an SPI driven optical sensor, that uses a built in IR LED for su
|
||||||
|`PMW3360_SPI_LSBFIRST` | (Optional) Sets the Least/Most Significant Byte First setting for SPI. | `false` |
|
|`PMW3360_SPI_LSBFIRST` | (Optional) Sets the Least/Most Significant Byte First setting for SPI. | `false` |
|
||||||
|`PMW3360_SPI_MODE` | (Optional) Sets the SPI Mode for the sensor. | `3` |
|
|`PMW3360_SPI_MODE` | (Optional) Sets the SPI Mode for the sensor. | `3` |
|
||||||
|`PMW3360_SPI_DIVISOR` | (Optional) Sets the SPI Divisor used for SPI communication. | _varies_ |
|
|`PMW3360_SPI_DIVISOR` | (Optional) Sets the SPI Divisor used for SPI communication. | _varies_ |
|
||||||
|
|`PMW3360_LIFTOFF_DISTANCE` | (Optional) Sets the lift off distance at run time | `0x02` |
|
||||||
|`ROTATIONAL_TRANSFORM_ANGLE` | (Optional) Allows for the sensor data to be rotated +/- 30 degrees directly in the sensor. | `0` |
|
|`ROTATIONAL_TRANSFORM_ANGLE` | (Optional) Allows for the sensor data to be rotated +/- 30 degrees directly in the sensor. | `0` |
|
||||||
|
|
||||||
The CPI range is 100-12000, in increments of 100. Defaults to 1600 CPI.
|
The CPI range is 100-12000, in increments of 100. Defaults to 1600 CPI.
|
||||||
|
|
|
@ -186,6 +186,8 @@ bool pmw3360_init(void) {
|
||||||
|
|
||||||
spi_write_adv(REG_Angle_Tune, constrain(ROTATIONAL_TRANSFORM_ANGLE, -30, 30));
|
spi_write_adv(REG_Angle_Tune, constrain(ROTATIONAL_TRANSFORM_ANGLE, -30, 30));
|
||||||
|
|
||||||
|
spi_write_adv(REG_Lift_Config, PMW3360_LIFTOFF_DISTANCE);
|
||||||
|
|
||||||
bool init_success = pmw3360_check_signature();
|
bool init_success = pmw3360_check_signature();
|
||||||
|
|
||||||
writePinLow(PMW3360_CS_PIN);
|
writePinLow(PMW3360_CS_PIN);
|
||||||
|
|
|
@ -46,6 +46,10 @@
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef PMW3360_LIFTOFF_DISTANCE
|
||||||
|
# define PMW3360_LIFTOFF_DISTANCE 0x02
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef ROTATIONAL_TRANSFORM_ANGLE
|
#ifndef ROTATIONAL_TRANSFORM_ANGLE
|
||||||
# define ROTATIONAL_TRANSFORM_ANGLE 0x00
|
# define ROTATIONAL_TRANSFORM_ANGLE 0x00
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue