iLLD_TC27xD  1.0
IfxCif_Cam.h File Reference

CIF CAM details. More...

#include "Cif/Std/IfxCif.h"
#include "_PinMap/IfxCif_PinMap.h"
#include "Emem/Std/IfxEmem.h"
#include "I2c/I2c/IfxI2c_I2c.h"
#include "string.h"

Go to the source code of this file.

Data Structures

struct  IfxCif_Cam_TableInfo
 
struct  IfxCif_Cam_JpegTable
 Single component JPEG tables. More...
 
struct  IfxCif_Cam_PictureInfo
 Picture info. More...
 
struct  IfxCif_Cam_JpegTables
 JPEG tables for all components. More...
 
struct  IfxCif_Cam_MemConfig
 Single path memory interface configuration (used in initialisation/configuration) More...
 
struct  IfxCif_Cam_MemInfo
 Single path memory interface information (used in Runtime) More...
 
struct  IfxCif_Cam_Common
 Common configuration. More...
 
struct  IfxCif_Cam_Downscaling
 Downscaler configuration. More...
 
struct  IfxCif_Cam_JfifHeader
 JPEG JFIF header structure. More...
 
struct  IfxCif_Cam_MemAreas
 All paths memory partitioning. More...
 
struct  IfxCif_Cam
 Structure which is used as handle for the CIF-CAM functions. This stores cached variables useful for run-time operations. More...
 
struct  IfxCif_Cam_Config
 Camera specific configuration. More...
 

Macros

#define IFXCIF_CAM_MEM_ALIGN_SIZE   (64)
 
#define IFXCIF_CAM_MEM_GAPSIZE   0x0
 

Enumerations

enum  IfxCif_Cam_IspMode {
  IfxCif_Cam_IspMode_undefined = -1,
  IfxCif_Cam_IspMode_raw = 0,
  IfxCif_Cam_IspMode_yuvInterleaved = 1,
  IfxCif_Cam_IspMode_yuvPlanar = 2
}
 CIF ISP mode. More...
 
enum  IfxCif_Cam_State {
  IfxCif_Cam_State_stopped = 0,
  IfxCif_Cam_State_running = 1
}
 Driver acquisition state. More...
 
enum  IfxCif_Cam_Status {
  IfxCif_Cam_Status_ok = 0,
  IfxCif_Cam_Status_notEnoughMemory = 1,
  IfxCif_Cam_Status_cameraCommError = 2,
  IfxCif_Cam_Status_notAvailable = 3
}
 Driver status. More...
 

Functions

IFX_INLINE void IfxCif_Cam_clearFrameReceptionFlag (const IfxCif_Cam *cam)
 Clear the frame reception flag. More...
 
IFX_INLINE void IfxCif_Cam_clearJpegEncodingCompleteFlag (const IfxCif_Cam *cam)
 Clear the JPEG encoder completed flag. More...
 
IFX_INLINE Ifx_AddressValue IfxCif_Cam_getBbbAddress (const IfxCif_Cam *cam, Ifx_AddressValue cpuAddress)
 Convert the CPU address into BBB address. More...
 
IFX_INLINE uint32 IfxCif_Cam_getExtraFrameSize (const IfxCif_Cam *cam, IfxCif_ExtraPath z)
 Returns the size (in bytes) of one last acquired extra-path image data. More...
 
IFX_INLINE const
IfxCif_Cam_MemInfo
IfxCif_Cam_getExtraPathMemInfo (const IfxCif_Cam *cam, IfxCif_ExtraPath z)
 
IFX_INLINE uint32 IfxCif_Cam_getFrameSize (const IfxCif_Cam *cam)
 Returns the size (in bytes) of last acquired main-path image data. More...
 
IFX_INLINE uint32 IfxCif_Cam_getJpegEncodedSize (const IfxCif_Cam *cam)
 Returns the size (in bytes) of last encoded main-path image data. More...
 
IFX_INLINE Ifx_AddressValue IfxCif_Cam_getLastExtraAddress (const IfxCif_Cam *cam, IfxCif_ExtraPath z)
 Returns the address location of last acquired extra-path image frame data. More...
 
IFX_INLINE const
IfxCif_Cam_MemInfo
IfxCif_Cam_getLastExtraCaptureInfo (const IfxCif_Cam *cam, IfxCif_ExtraPath z, Ifx_AddressValue *address, uint32 *size)
 
IFX_INLINE Ifx_AddressValue IfxCif_Cam_getLastFrameAddress (const IfxCif_Cam *cam)
 Returns the address location of last acquired main-path image frame data. More...
 
IFX_INLINE const
IfxCif_Cam_MemInfo
IfxCif_Cam_getLastFrameCaptureInfo (const IfxCif_Cam *cam, Ifx_AddressValue *address, uint32 *size)
 
IFX_INLINE Ifx_AddressValue IfxCif_Cam_getNextFrameAddress (const IfxCif_Cam *cam)
 Returns the address location of next acquired main-path image frame data. More...
 
IFX_INLINE Ifx_AddressValue IfxCif_Cam_getNextJpegFrameAddress (IfxCif_Cam *cam)
 Returns the address location of next acquired JPEG image frame data. More...
 
IFX_INLINE Ifx_AddressValue IfxCif_Cam_incrementAddress (const IfxCif_Cam *cam, Ifx_AddressValue address)
 Increment the address related to memory interface of for main-path. The address is wrapped around at the boundary of the allocated RAM size. More...
 
IFX_INLINE boolean IfxCif_Cam_isFrameReceptionComplete (const IfxCif_Cam *cam)
 Returns TRUE if JPEG encoding is completed. More...
 
IFX_INLINE boolean IfxCif_Cam_isJpegEncodingComplete (const IfxCif_Cam *cam)
 
IFX_INLINE void IfxCif_Cam_skipPicture (const IfxCif_Cam *cam)
 
IFX_EXTERN void IfxCif_Cam_clearAllFlags (const IfxCif_Cam *cam)
 Clear all CIF module notification flags. More...
 
IFX_EXTERN void IfxCif_Cam_disableJpegEncoder (const IfxCif_Cam *cam)
 Disable the JPEG encoder and route the acquisition path accordingly to the 'original' configuration, i.e. RAW or main path. More...
 
IFX_EXTERN void IfxCif_Cam_enableJpegEncoder (const IfxCif_Cam *cam)
 Enable the JPEG encoder and route the acquisition path accordingly. More...
 
IFX_EXTERN const
IfxCif_Cam_PictureInfo
IfxCif_Cam_getExtraPathPictureInfo (const IfxCif_Cam *cam, IfxCif_ExtraPath z)
 Returns pointer to the variable storing picture info of an extra-path. More...
 
IFX_EXTERN boolean IfxCif_Cam_getLastJpegEncodingInfo (IfxCif_Cam *cam, Ifx_AddressValue *address, sint32 *size)
 Returns pointer to the memory structure storing last JPEG encoding process. More...
 
IFX_EXTERN IfxCif_Cam_Status IfxCif_Cam_init (IfxCif_Cam *cam, const IfxCif_Cam_Config *config, boolean initCam)
 Initialise the CIF, EMEM, PORT, I2C and the camera itself. More...
 
IFX_EXTERN void IfxCif_Cam_restartCapture (const IfxCif_Cam *cam, uint8 frames)
 Restart capture by enabling the ISP output. More...
 
IFX_EXTERN void IfxCif_Cam_startCapture (const IfxCif_Cam *cam, uint8 frames)
 Start capture by enabling the ISP output and initialising the MI counter. More...
 
IFX_EXTERN void IfxCif_Cam_stopCapture (const IfxCif_Cam *cam)
 Stop capture by disabling the ISP output. More...
 

Detailed Description

CIF CAM details.

Version
iLLD_1_0_0_11_0
                            IMPORTANT NOTICE

Infineon Technologies AG (Infineon) is supplying this file for use exclusively with Infineon's microcontroller products. This file can be freely distributed within development tools that are supporting such microcontroller products.

THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Definition in file IfxCif_Cam.h.

Macro Definition Documentation

#define IFXCIF_CAM_MEM_ALIGN_SIZE   (64)

Definition at line 51 of file IfxCif_Cam.h.

#define IFXCIF_CAM_MEM_GAPSIZE   0x0

Definition at line 53 of file IfxCif_Cam.h.