📄 tsc_ssp.h
字号:
// Developped for TI's TSC2301
// 20SEP02
// Copyright (c) 2002, 2003, Texas Instruments
// - added the remaining defines for use with TSC2301GenericReadReg
/* ----
Module Name:
tsc_ssp.h
Abstract:
This module contains the functions prototypes to the SSP functions for communicating with the part.
Functions:
Revision History:
Bob Green (Embedded Express for Texas' Intruments) FEB 2002
--*/
#include <tsc_regs.h>
BOOL Is_DAV_Open(void);
BOOL TSC2301ReadData(unsigned __int16 iSetupValue, unsigned __int16 iReadValue, unsigned __int16 *pDataVal);
BOOL TSC2301ReadPortScan(unsigned __int16 *pBat1Val, unsigned __int16 *pBat2Val, unsigned __int16 *pAux1Val, unsigned __int16 *pAux2Val);
// functions for SSP setup and configuration
void setupSSP();
void SetupSSPRegisters(void);
void DisableSSP(void);
void EnableSSP(void);
// functions to control the actual TSC2200 part.
unsigned __int16 TSC2200ReadADCReg(void);
void TSC2200WriteADCReg(unsigned __int16 newValue);
void TSC2200ReadXY(unsigned __int16 *pXdata, unsigned __int16 *pYdata);
void TSC2200Reset(void);
unsigned __int16 TSC2200ReadKPDataReg(void);
unsigned __int16 TSC2200ReadKeyReg(void);
void TSC2200WriteKeyReg(unsigned __int16 newValue);
void TSC2200WriteKeyMaskReg(unsigned __int16 newValue);
unsigned __int16 TSC2200ReadKeyMaskReg(void);
void TSC2200StopConversions(void);
void TSC2200StartConversions(void);
void InitSSP(void);
unsigned __int16 TSC2200ReadCFGReg(void);
unsigned __int16 TSC2200ReadREFReg(void);
unsigned __int16 TSC2200ReadDACReg(void);
void TSC2200WriteCFGReg(unsigned __int16 newValue);
void TSC2200WriteREFReg(unsigned __int16 newValue);
void TSC2200WriteDACReg(unsigned __int16 newValue);
// Audio Registers for the TSC2301
// Bg 18JUL02
unsigned __int16 TSC2301ReadAudioControlReg(void);
unsigned __int16 TSC2301ReadAudioByPassReg(void);
unsigned __int16 TSC2301ReadAudioADCVolumeReg(void);
unsigned __int16 TSC2301ReadAudioDACVolumeReg(void);
unsigned __int16 TSC2301ReadAudioKeyClickReg(void);
unsigned __int16 TSC2301ReadAudioPowerReg(void);
unsigned __int16 TSC2301ReadAudioGPIOReg(void);
void TSC2301WriteAudioControlReg(unsigned __int16 newValue);
void TSC2301WriteAudioByPassReg(unsigned __int16 newValue);
void TSC2301WriteAudioADCVolumeReg(unsigned __int16 newValue);
void TSC2301WriteAudioDACVolumeReg(unsigned __int16 newValue);
void TSC2301WriteAudioKeyClickReg(unsigned __int16 newValue);
void TSC2301WriteAudioPowerReg(unsigned __int16 newValue);
void TSC2301WriteAudioGPIOReg(unsigned __int16 newValue);
void TSC2301GenericWriteReg(unsigned __int16 targetReg, unsigned __int16 newValue);
unsigned __int16 TSC2301GenericReadReg(unsigned __int16 sourceReg);
unsigned __int16 TSC2200ReadCFG2Reg(void);
void TSC2200WriteCFG2Reg(unsigned __int16 newValue);
// defines for TSC2200 configuration
#define ADC_SETUP_VALUE (ADC_PSM_TSC2200 | ADC_STS_NORMAL | ADC_AD_XY_SCAN | ADC_RS_TWELVE | ADC_AV_FOUR | ADC_CL_2 | ADC_PV_1_MS)
#define ADC_SETUP_VALUE_2 (ADC_PSM_HOST | ADC_STS_NORMAL | ADC_AD_X_SCAN | ADC_RS_TWELVE | ADC_AV_FOUR | ADC_CL_2 | ADC_PV_1_MS)
#define ADC_STOP_CONVERSIONS (ADC_PSM_TSC2200 | ADC_STS_STOP | ADC_AD_XY_SCAN | ADC_RS_TWELVE | ADC_AV_FOUR | ADC_CL_2 | ADC_PV_1_MS)
#define KEYREG_SETUP_VALUE (KEY_STC_NO | KEY_SCS_NORMAL | KEY_DB_20)
#define KEYMASKREG_SETUP_VALUE (KPMASK_ALL)
#define PORT_SCAN_VALUE (ADC_PSM_TSC2200 | ADC_STS_NORMAL | ADC_AD_PORT_SCAN | ADC_RS_TWELVE | ADC_AV_SIXTEEN | ADC_CL_1 | ADC_PV_100_MS)
#define SETUP_BATT1_VALUE (ADC_PSM_HOST | ADC_STS_NORMAL | ADC_AD_BAT1_CONV | ADC_RS_TWELVE | ADC_AV_ZERO | ADC_CL_2 | ADC_PV_1_MS)
#define SETUP_BATT2_VALUE (ADC_PSM_HOST | ADC_STS_NORMAL | ADC_AD_BAT2_CONV | ADC_RS_TWELVE | ADC_AV_ZERO | ADC_CL_2 | ADC_PV_1_MS)
#define SETUP_AUX1_VALUE (ADC_PSM_HOST | ADC_STS_NORMAL | ADC_AD_AUX1_CONV | ADC_RS_TWELVE | ADC_AV_ZERO | ADC_CL_2 | ADC_PV_1_MS)
#define SETUP_AUX2_VALUE (ADC_PSM_HOST | ADC_STS_NORMAL | ADC_AD_AUX2_CONV | ADC_RS_TWELVE | ADC_AV_ZERO | ADC_CL_2 | ADC_PV_1_MS)
#define SETUP_TEMP1_VALUE (ADC_PSM_HOST | ADC_STS_NORMAL | ADC_AD_TEMP1_CONV | ADC_RS_TWELVE | ADC_AV_ZERO | ADC_CL_2 | ADC_PV_1_MS)
#define SETUP_TEMP2_VALUE (ADC_PSM_HOST | ADC_STS_NORMAL | ADC_AD_TEMP2_CONV | ADC_RS_TWELVE | ADC_AV_ZERO | ADC_CL_2 | ADC_PV_1_MS)
#define SETUP_PORT_SCAN_VALUE (ADC_PSM_HOST | ADC_STS_NORMAL | ADC_AD_PORT_SCAN | ADC_RS_TWELVE | ADC_AV_ZERO | ADC_CL_2 | ADC_PV_1_MS)
#define READ_X_VALUE 0x8000
#define READ_Y_VALUE 0x8020
#define READ_Z1_VALUE 0x8040
#define READ_Z2_VALUE 0x8060
#define READ_KPDATA_VALUE 0x8080
#define READ_BATT1_VALUE 0x80A0
#define READ_BATT2_VALUE 0x80C0
#define READ_AUX1_VALUE 0x80E0
#define READ_AUX2_VALUE 0x8100
#define READ_TEMP1_VALUE 0x8120
#define READ_TEMP2_VALUE 0x8140
#define READ_DAC_VALUE 0x8160
// Bg 12SEP02 - new functions to handle the touch ADC reg setup bug in the TSC2301
void TSC2200ReadX(unsigned __int16 *pXdata);
void TwoTwoWordSPITransactions(unsigned __int16 *iWord1, unsigned __int16 *iWord2, unsigned __int16 *iWord3, unsigned __int16 *iWord4);
void TSC2301SetupADCReg(unsigned __int16 newValue);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -