#ifndef EYETRACK_FPGA_H_ #define EYETRACK_FPGA_H_ #define FPGA_RESET_COMMAND ('R') #define FPGA_RECONFIG_COMMAND ('B') #define FPGA_I2C_COMMAND ('I') #define FPGA_I2C_READ ('i') #define FPGA_I2C_MAX_LEN (32) #define FPGA_I2C_ADDR (0x78) #define FPGA_REG_CAM_ADDR_HI (0x00) #define FPGA_REG_CAM_ADDR_LO (0x01) #define FPGA_REG_CAM_DATA (0x02) #define FPGA_REG_PWM_HI (0x10) #define FPGA_REG_PWM_LO (0x11) #define FPGA_CURRENT_MEAS_LENGTH (9) #define FPGA_REG_IR_LEFT_RUN_MEAS_HI (0x70) #define FPGA_REG_IR_LEFT_RUN_MEAS_LO (0x71) #define FPGA_REG_IR_LEFT_IDLE_MEAS_HI (0x72) #define FPGA_REG_IR_LEFT_IDLE_MEAS_LO (0x73) #define FPGA_REG_IR_RIGHT_RUN_MEAS_HI (0x74) #define FPGA_REG_IR_RIGHT_RUN_MEAS_LO (0x75) #define FPGA_REG_IR_RIGHT_IDLE_MEAS_HI (0x76) #define FPGA_REG_IR_RIGHT_IDLE_MEAS_LO (0x77) #define FPGA_REG_IR_ERRORS (0x78) #define FPGA_ID_LEN (3) #define FPGA_REG_CONFIG_ID (0xA0) #define FPGA_REG_SW_VER_HI (0xA1) #define FPGA_REG_SW_VER_LO (0xA2) void fpga_init(void); void fpga_reset(void); void fpga_reconfig(void); uint8_t set_fpga_command_data(uint8_t len, uint8_t* data); uint8_t* get_fpga_read_data(void); uint8_t get_fpga_read_len(void); uint8_t fpga_send_i2c(void); uint8_t fpga_read_i2c(void); #endif /* EYETRACK_FPGA_H_ */