-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy patharducam_arch_raspberrypi.h
executable file
·54 lines (37 loc) · 1.64 KB
/
arducam_arch_raspberrypi.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/*-----------------------------------------
//Update History:
//2016/06/13 V1.1 by Lee add support for burst mode
------------------------------------------------*/
#ifndef __ARDUCAM_ARCH_H__
#define __ARDUCAM_ARCH_H__
#include "ArduCAM.h"
#ifdef __cplusplus
extern "C" {
#endif
extern bool wiring_init(void);
extern bool arducam_i2c_init(uint8_t sensor_addr);
extern void arducam_spi_write(uint8_t address, uint8_t value);
extern uint8_t arducam_spi_read(uint8_t address);
extern uint8_t arducam_spi_transfer(uint8_t data);
extern void arducam_spi_transfers(uint8_t *buf, uint32_t size);
// Delay execution for delay milliseconds
extern void arducam_delay_ms(uint32_t delay);
// Read/write 8 bit value to/from 8 bit register address
extern uint8_t arducam_i2c_write(uint8_t regID, uint8_t regDat);
extern uint8_t arducam_i2c_read(uint8_t regID, uint8_t* regDat);
// Read/write 16 bit value to/from 8 bit register address
extern uint8_t arducam_i2c_write16(uint8_t regID, uint16_t regDat);
extern uint8_t arducam_i2c_read16(uint8_t regID, uint16_t* regDat);
// Read/write 8 bit value to/from 16 bit register address
extern uint8_t arducam_i2c_word_write(uint16_t regID, uint8_t regDat);
extern uint8_t arducam_i2c_word_read(uint16_t regID, uint8_t* regDat);
// Write 8 bit values to 8 bit register address
extern int arducam_i2c_write_regs(const struct sensor_reg reglist[]);
// Write 16 bit values to 8 bit register address
extern int arducam_i2c_write_regs16(const struct sensor_reg reglist[]);
// Write 8 bit values to 16 bit register address
extern int arducam_i2c_write_word_regs(const struct sensor_reg reglist[]);
#ifdef __cplusplus
}
#endif
#endif