|
@@ -18,12 +18,12 @@
|
|
|
|
|
|
#ifdef POINTING_DEVICE_ENABLE
|
|
|
|
|
|
+#include "wait.h"
|
|
|
+#include "debug.h"
|
|
|
+#include "print.h"
|
|
|
#include "pmw3360.h"
|
|
|
#include "pmw3360_firmware.h"
|
|
|
|
|
|
-#ifdef CONSOLE_ENABLE
|
|
|
-# include "print.h"
|
|
|
-#endif
|
|
|
bool _inBurst = false;
|
|
|
|
|
|
#ifndef PMW_CPI
|
|
@@ -36,10 +36,7 @@ bool _inBurst = false;
|
|
|
# define ROTATIONAL_TRANSFORM_ANGLE 0x00
|
|
|
#endif
|
|
|
|
|
|
-#ifdef CONSOLE_ENABLE
|
|
|
void print_byte(uint8_t byte) { dprintf("%c%c%c%c%c%c%c%c|", (byte & 0x80 ? '1' : '0'), (byte & 0x40 ? '1' : '0'), (byte & 0x20 ? '1' : '0'), (byte & 0x10 ? '1' : '0'), (byte & 0x08 ? '1' : '0'), (byte & 0x04 ? '1' : '0'), (byte & 0x02 ? '1' : '0'), (byte & 0x01 ? '1' : '0')); }
|
|
|
-#endif
|
|
|
-
|
|
|
|
|
|
bool spi_start_adv(void) {
|
|
|
bool status = spi_start(SPI_SS_PIN, false, 3, SPI_DIVISOR);
|
|
@@ -173,9 +170,7 @@ bool pmw_check_signature(void) {
|
|
|
|
|
|
report_pmw_t pmw_read_burst(void) {
|
|
|
if (!_inBurst) {
|
|
|
-#ifdef CONSOLE_ENABLE
|
|
|
dprintf("burst on");
|
|
|
-#endif
|
|
|
spi_write_adv(REG_Motion_Burst, 0x00);
|
|
|
_inBurst = true;
|
|
|
}
|
|
@@ -200,14 +195,12 @@ report_pmw_t pmw_read_burst(void) {
|
|
|
|
|
|
spi_stop();
|
|
|
|
|
|
-#ifdef CONSOLE_ENABLE
|
|
|
print_byte(data.motion);
|
|
|
print_byte(data.dx);
|
|
|
print_byte(data.mdx);
|
|
|
print_byte(data.dy);
|
|
|
print_byte(data.mdy);
|
|
|
dprintf("\n");
|
|
|
-#endif
|
|
|
|
|
|
data.isMotion = (data.motion & 0x80) != 0;
|
|
|
data.isOnSurface = (data.motion & 0x08) == 0;
|