⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csl_h3ahwcontrol.c

📁 TI达芬奇dm644x各硬件模块测试代码
💻 C
字号:
/** @file csl_h3aHwControl.c
 *
 *    @brief    File for functional layer of CSL API @a CSL_h3aHwControl()
 *
 *  Description
 *    - The @a CSL_h3aHwControl() function definition & it's associated
 *      functions
 *
 *  Modification 1
 *    - Modified on: 10/18/2004
 *    - Reason: created the sources
 *
 *  @date 18th Oct, 2004
 *  @author Sandeep Tiwari.
 */


#include <csl_h3a.h>
#include <csl_h3a_aux.h>

#pragma CODE_SECTION (CSL_h3aHwControl,".text:csl_section:h3a");

/** @brief Takes a command with an optional argument & implements it.
 */
CSL_Status CSL_h3aHwControl(
	/** Pointer to the object that holds reference to the
	 *  instance of H3A requested after the call
	 */
	CSL_H3aHandle             hH3a,
	/** The command to this API indicates the action to be taken
	 */
	CSL_H3aHwControlCmd       cmd,
	/** An optional argument @a void* casted
	 */
	void                       *arg
	){
      
	CSL_Status  status=CSL_SOK;

	switch(cmd){
   
		case CSL_H3A_CMD_ENABLE_AF:
			status = CSL_h3aEnableAf(hH3a, *(Uint16*)arg);
            break;
	
		case CSL_H3A_CMD_ENABLE_AE_AWB:
			status = CSL_h3aEnableAewb(hH3a, *(Uint16*)arg);
            break;

		case CSL_H3A_CMD_SET_AF_SDRAM_ADDR:
			status = CSL_h3aSetAfAddr(hH3a, (Uint32*)arg);
            break;

		case CSL_H3A_CMD_SET_AEWB_SDRAM_ADDR:
			status = CSL_h3aSetAewbAddr(hH3a, (Uint32*)arg);
            break;

		case CSL_H3A_CMD_ENABLE_AF_ALAW:
            status = CSL_h3aAfAlawEn(hH3a, *(Uint16*)arg);
            break;

		case CSL_H3A_CMD_ENABLE_AEWB_ALAW:
			status = CSL_h3aAewbAlawEn(hH3a, *(Uint16*)arg);
            break;

		case CSL_H3A_CMD_ENABLE_AF_MEDIAN_FILT:
			status = CSL_h3aAfMedianEn(hH3a, *(Uint16*)arg);
			break;

		case CSL_H3A_CMD_SET_MEDIAN_FILT_THR:
			status = CSL_h3aSetMedianThr(hH3a, *(Uint16*)arg);
			break;

        case CSL_H3A_CMD_SET_AF_FV_ACCUM_MODE:
			status = CSL_h3aSetAfAccMode(hH3a, *(Uint16*)arg);
			break;

        case CSL_H3A_CMD_SELECT_AF_RGBPOS_WIN:
			status = CSL_h3aSelectAfRgbPosWin(hH3a, *(Uint16*)arg);
			break;

		case CSL_H3A_CMD_SET_AEWB_SATURATION_LIMIT:
			status = CSL_h3aSetAewbSatLimit(hH3a, *(Uint16*)arg);
            break;

		case CSL_H3A_CMD_SET_AF_CONFIG:
			status = CSL_h3aSetAfConfig(hH3a, (CSL_H3aAfConfig *)arg);
            break;

		case CSL_H3A_CMD_SET_AEWB_CONFIG:
			status = CSL_h3aSetAewbConfig(hH3a, (CSL_H3aAewbConfig *)arg);
            break;

		default:
			status = CSL_ESYS_INVCMD ;
			break;
	};
  return status;

}




⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -