|
|
#ifndef __VL53L0_I2C_H
|
|
|
#define __VL53L0_I2C_H
|
|
|
|
|
|
#include "ALLinclude.h"
|
|
|
|
|
|
|
|
|
#define VL_IIC_SDA VL_SDA_OUT()//PAout(6) //SDA
|
|
|
#define VL_READ_SDA VL_SDA_IN()//PAin(6) //<2F><><EFBFBD><EFBFBD>SDA
|
|
|
|
|
|
#define STATUS_OK 0x00
|
|
|
#define STATUS_FAIL 0x01
|
|
|
|
|
|
#define u8 unsigned char
|
|
|
#define u16 unsigned short
|
|
|
#define u32 unsigned int
|
|
|
|
|
|
#define P_PORT_SCL GPIOB
|
|
|
#define P_PIN_SCL GPIO_PIN_8
|
|
|
|
|
|
#define P_PORT_SDA GPIOB
|
|
|
#define P_PIN_SDA GPIO_PIN_9
|
|
|
|
|
|
#define GPIO_SDA P_PORT_SDA
|
|
|
#define GPIO_PIN_SDA P_PIN_SDA
|
|
|
|
|
|
#define GPIO_CLK P_PORT_SCL
|
|
|
#define GPIO_PIN_CLK P_PIN_SCL
|
|
|
|
|
|
#define MCU_STM32G030 0
|
|
|
#define MCU_PY32F002A 0
|
|
|
#define MCU_STM32G431 1
|
|
|
|
|
|
#define IICAddress_7BIT 1
|
|
|
#define IICAddress_8BIT 0
|
|
|
|
|
|
#define DeviceAddress 0x72
|
|
|
|
|
|
|
|
|
void VL53L0X_i2c_init(void);
|
|
|
|
|
|
static void delay_us(u32 delay_data);
|
|
|
|
|
|
u8 VL53L0X_write_byte(u8 address,u8 index,u8 data); //
|
|
|
u8 VL53L0X_write_word(u8 address,u8 index,u16 data); //
|
|
|
u8 VL53L0X_write_dword(u8 address,u8 index,u32 data); //
|
|
|
u8 VL53L0X_write_multi(u8 address, u8 index,u8 *pdata,u16 count);//
|
|
|
|
|
|
u8 VL53L0X_read_byte(u8 address,u8 index,u8 *pdata); //
|
|
|
u8 VL53L0X_read_word(u8 address,u8 index,u16 *pdata); //
|
|
|
u8 VL53L0X_read_dword(u8 address,u8 index,u32 *pdata); //
|
|
|
u8 VL53L0X_read_multi(u8 address,u8 index,u8 *pdata,u16 count); //
|
|
|
|
|
|
|
|
|
void VL_SDA_IN(void);
|
|
|
void VL_SDA_OUT(void);
|
|
|
void VL_IIC_SCL(void);
|
|
|
void VL_IIC_SCL_IN(void);
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|