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

📄 csd2x_1.h

📁 带触摸按键的高端电磁炉设计 该方案采用CYPRESS的新器件CY8C22545,是一款专门针对中高端的家电触摸产品设计。除了集成触摸按键功能外
💻 H
字号:
//*****************************************************************************
//*****************************************************************************
//  FILENAME: CSD2X_1.h
//  Version: 1.0, Updated on 2008/10/28 at 17:22:15
//  Generated by PSoC Designer ???
//
//  DESCRIPTION: CSD2X User Module C Language interface file for the 22x45 PSoC
//               family of devices
//-----------------------------------------------------------------------------
//  Copyright (c) Cypress Semiconductor 2008. All Rights Reserved.
//*****************************************************************************
//*****************************************************************************

#include <m8c.h>

//--------------------------------------------------
// Constants for CSD2X_1
//--------------------------------------------------

#define CSD2X_1_TotalSensorCount                  0xc
#define CSD2X_1_ButtonCount                       0xc
#define CSD2X_1_SliderCount                       0x0

#define CSD2X_1_BUTTONS_EXIST                     0xc
#define CSD2X_1_SLIDERS_EXIST                     0x0

#define CSD2X_1_AUTOCALIBRATION                   0x0

//--------------------------------------------------
// Constants for Thresholds values
//--------------------------------------------------
#define CSD2X_1_NOISE_THRESHOLD                   0x96
#define CSD2X_1_BASELINE_UPDATE_THRESHOLD         0xc8
#define CSD2X_1_HYSTERESIS                        0x1e

//--------------------------------------------------
// Constants for Resolution values
//--------------------------------------------------
#define CSD2X_1_MIN_RESOLUTION                    9
#define CSD2X_1_MAX_RESOLUTION                    16

//--------------------------------------------------
// Constants for DAC Ranges
//--------------------------------------------------
#define CSD2X_1_iDAC_Range_1X               00h
#define CSD2X_1_iDAC_Range_4X               01h
#define CSD2X_1_iDAC_Range_16X              08h
#define CSD2X_1_iDAC_Range_32X              09h

//--------------------------------------------------
// Variables for CSD2X_1.
//--------------------------------------------------
extern BYTE CSD2X_1_bNoiseThreshold;
extern BYTE CSD2X_1_bNegativeNoiseThreshold;
extern BYTE CSD2X_1_bBaselineUpdateThreshold;
extern BYTE CSD2X_1_bHysteresis;
extern BYTE CSD2X_1_bDebounce;
extern BYTE CSD2X_1_bLowBaselineReset;

extern WORD CSD2X_1_waSnsResult[];
extern WORD CSD2X_1_waSnsBaseline[];
extern WORD CSD2X_1_waSnsDiff[];
extern BYTE CSD2X_1_baSnsOnMask[];

#if CSD2X_1_AUTOCALIBRATION
extern BYTE CSD2X_1_baDACCodeBaselineL[];
extern BYTE CSD2X_1_baDACCodeBaselineR[];
#endif

#if CSD2X_1_BUTTONS_EXIST
extern BYTE CSD2X_1_baBtnFThreshold[];
#endif

// Low Level scan API
#pragma fastcall16 CSD2X_1_Start
#pragma fastcall16 CSD2X_1_Stop
#pragma fastcall16 CSD2X_1_ScanSensor
#pragma fastcall16 CSD2X_1_ScanAllSensors
#pragma fastcall16 CSD2X_1_ClearSensors
#pragma fastcall16 CSD2X_1_wReadSensor
#pragma fastcall16 CSD2X_1_wGetPortPinLeft
#pragma fastcall16 CSD2X_1_wGetPortPinRight
#pragma fastcall16 CSD2X_1_EnableSensor
#pragma fastcall16 CSD2X_1_DisableSensor
#pragma fastcall16 CSD2X_1_SetLeftRefValue
#pragma fastcall16 CSD2X_1_SetRightRefValue
#pragma fastcall16 CSD2X_1_SetLeftDACValue
#pragma fastcall16 CSD2X_1_SetRightDACValue
#pragma fastcall16 CSD2X_1_SetDACRange


#if CSD2X_1_AUTOCALIBRATION
#pragma fastcall16 CSD2X_1_Calibrate
#endif

// High Level API
#pragma fastcall16 CSD2X_1_UpdateSensorBaseline
#pragma fastcall16 CSD2X_1_bIsSensorActive
#pragma fastcall16 CSD2X_1_bIsAnySensorActive
#pragma fastcall16 CSD2X_1_SetDefaultFingerThresholds
#pragma fastcall16 CSD2X_1_InitializeSensorBaseline
#pragma fastcall16 CSD2X_1_InitializeBaselines
#pragma fastcall16 CSD2X_1_UpdateAllBaselines
#pragma fastcall16 CSD2X_1_wGetCentroidPos

//-------------------------------------------------
// C prototypes of the CSD2X_1 API.
//-------------------------------------------------

extern void CSD2X_1_Start(void);
extern void CSD2X_1_Stop(void);
extern void CSD2X_1_ScanSensor(BYTE bSensorLeft, BYTE bSensorRight);
extern void CSD2X_1_ScanAllSensors(void);
extern void CSD2X_1_ClearSensors(void);
extern WORD CSD2X_1_wReadSensor(BYTE bSensor);
extern WORD CSD2X_1_wGetPortPin(BYTE bSensor);
extern void CSD2X_1_EnableSensor(BYTE bMask, BYTE bPort);
extern void CSD2X_1_DisableSensor(BYTE bMask, BYTE bPort);
extern void CSD2X_1_SetLeftRefValue(BYTE bRefValue);
extern void CSD2X_1_SetRightRefValue(BYTE bRefValue);
extern void CSD2X_1_SetLeftDACValue(BYTE bDACValue);
extern void CSD2X_1_SetRightDACValue(BYTE bDACValue);
extern void CSD2X_1_SetDACRange(BYTE bRange);

#if CSD2X_1_AUTOCALIBRATION
extern void CSD2X_1_Calibrate(void);
#endif

//-------------------------------------------------
// High level functions
//-------------------------------------------------

extern void CSD2X_1_UpdateSensorBaseline(BYTE bSensorNum);
extern BYTE CSD2X_1_bIsSensorActive(BYTE bSensorNum);
extern BYTE CSD2X_1_bIsAnySensorActive(void);
extern void CSD2X_1_SetDefaultFingerThresholds(void);
extern void CSD2X_1_InitializeSensorBaseline(BYTE bSensorNum);
extern void CSD2X_1_InitializeBaselines(void);
extern void CSD2X_1_UpdateAllBaselines(void);
#if CSD2X_1_SLIDERS_EXIST
extern WORD CSD2X_1_wGetCentroidPos(BYTE bSnsGroup);
#endif

//-------------------------------------------------
// Register Addresses for CSD2X_1
//-------------------------------------------------

⌨️ 快捷键说明

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