ACwing Flow bridge firmware
STM32C011: PMW3901 optical flow over SPI, I2C target 0x3B
Loading...
Searching...
No Matches
bridge.h
Go to the documentation of this file.
1
10#ifndef BRIDGE_H
11#define BRIDGE_H
12
13#include <stdint.h>
14
15void bridge_init(void);
16void bridge_set_sensor_ok(uint8_t ok);
19void bridge_add_sample(int16_t dx, int16_t dy, uint8_t squal, uint16_t shutter,
20 uint8_t valid, uint32_t dt_us);
21
22/* ---- I2C target, interrupt context ---- */
23void bridge_i2c_addr_write(void);
24void bridge_i2c_rx(uint8_t b);
25void bridge_i2c_addr_read(void);
26uint8_t bridge_i2c_tx(void);
27void bridge_i2c_stop(void);
28
29/* ---- main loop ---- */
30uint8_t bridge_take_ctrl(void);
31uint8_t bridge_reads(void);
33#endif /* BRIDGE_H */
void bridge_add_sample(int16_t dx, int16_t dy, uint8_t squal, uint16_t shutter, uint8_t valid, uint32_t dt_us)
one motion burst: deltas since the previous burst, dt_us = time between the two bursts; valid = 0 for...
Definition bridge.c:32
void bridge_i2c_addr_read(void)
address matched, master reads: snapshot
Definition bridge.c:92
void bridge_i2c_addr_write(void)
address matched, master writes
Definition bridge.c:82
void bridge_i2c_rx(uint8_t b)
first byte = register pointer
Definition bridge.c:84
void bridge_set_sensor_ok(uint8_t ok)
Definition bridge.c:26
uint8_t bridge_reads(void)
FRAME reads since boot (LED activity), wraps.
Definition bridge.c:114
void bridge_init(void)
Definition bridge.c:19
uint8_t bridge_take_ctrl(void)
CTRL bits written by the master, cleared.
Definition bridge.c:107
uint8_t bridge_i2c_tx(void)
next byte to send
Definition bridge.c:98
void bridge_i2c_stop(void)
Definition bridge.c:105