C
Qt Quick Ultralite camera Example
/* * Copyright 2017-2019 NXP * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ /* This code is copied from NXP's CSI driver example. */ // clang-format off #ifndef _BOARD_LPI2C_H_ #define _BOARD_LPI2C_H_ #include "clock_config.h" #include "fsl_common.h" #include "fsl_gpio.h" #include "fsl_clock.h" /* @Brief Board CAMERA configuration */ #define BOARD_CAMERA_I2C_BASEADDR LPI2C1 #define BOARD_CAMERA_I2C_CLOCK_SOURCE_DIVIDER (5U) #define BOARD_CAMERA_I2C_CLOCK_SOURCE_SELECT (0U) /* Select USB1 PLL (480 MHz) as LPI2C's clock source */ #define BOARD_CAMERA_I2C_CLOCK_FREQ \ (CLOCK_GetFreq(kCLOCK_Usb1PllClk) / 8 / (BOARD_CAMERA_I2C_CLOCK_SOURCE_DIVIDER + 1U)) #define BOARD_CAMERA_I2C_SCL_GPIO GPIO1 #define BOARD_CAMERA_I2C_SCL_PIN 16 #define BOARD_CAMERA_I2C_SDA_GPIO GPIO1 #define BOARD_CAMERA_I2C_SDA_PIN 17 #define BOARD_CAMERA_PWDN_GPIO GPIO1 #define BOARD_CAMERA_PWDN_PIN 4 #if defined(__cplusplus) extern "C" { #endif /* __cplusplus */ void BOARD_LPI2C_Init(LPI2C_Type *base, uint32_t clkSrc_Hz); status_t BOARD_LPI2C_Send(LPI2C_Type *base, uint8_t deviceAddress, uint32_t subAddress, uint8_t subaddressSize, uint8_t *txBuff, uint8_t txBuffSize); status_t BOARD_LPI2C_Receive(LPI2C_Type *base, uint8_t deviceAddress, uint32_t subAddress, uint8_t subaddressSize, uint8_t *rxBuff, uint8_t rxBuffSize); status_t BOARD_LPI2C_SendSCCB(LPI2C_Type *base, uint8_t deviceAddress, uint32_t subAddress, uint8_t subaddressSize, uint8_t *txBuff, uint8_t txBuffSize); status_t BOARD_LPI2C_ReceiveSCCB(LPI2C_Type *base, uint8_t deviceAddress, uint32_t subAddress, uint8_t subaddressSize, uint8_t *rxBuff, uint8_t rxBuffSize); void BOARD_Accel_I2C_Init(void); status_t BOARD_Accel_I2C_Send(uint8_t deviceAddress, uint32_t subAddress, uint8_t subaddressSize, uint32_t txBuff); status_t BOARD_Accel_I2C_Receive( uint8_t deviceAddress, uint32_t subAddress, uint8_t subaddressSize, uint8_t *rxBuff, uint8_t rxBuffSize); void BOARD_Codec_I2C_Init(void); status_t BOARD_Codec_I2C_Send( uint8_t deviceAddress, uint32_t subAddress, uint8_t subAddressSize, const uint8_t *txBuff, uint8_t txBuffSize); status_t BOARD_Codec_I2C_Receive( uint8_t deviceAddress, uint32_t subAddress, uint8_t subAddressSize, uint8_t *rxBuff, uint8_t rxBuffSize); void BOARD_Camera_I2C_Init(void); status_t BOARD_Camera_I2C_Send( uint8_t deviceAddress, uint32_t subAddress, uint8_t subAddressSize, const uint8_t *txBuff, uint8_t txBuffSize); status_t BOARD_Camera_I2C_Receive( uint8_t deviceAddress, uint32_t subAddress, uint8_t subAddressSize, uint8_t *rxBuff, uint8_t rxBuffSize); status_t BOARD_Camera_I2C_SendSCCB( uint8_t deviceAddress, uint32_t subAddress, uint8_t subAddressSize, const uint8_t *txBuff, uint8_t txBuffSize); status_t BOARD_Camera_I2C_ReceiveSCCB( uint8_t deviceAddress, uint32_t subAddress, uint8_t subAddressSize, uint8_t *rxBuff, uint8_t rxBuffSize); #if defined(__cplusplus) } #endif /* __cplusplus */ #endif /* _BOARD_LPI2C_H_ */