1 /******************************************************************************* 2 Filename: hal_adc.h 3 4 Copyright 2008 Texas Instruments, Inc. 5 ***************************************************************************/ 6 #ifndef HAL_ADC_H 7 #define HAL_ADC_H 8 9 #define ACC_PWR_PIN BIT0 10 #define ACC_PORT_DIR P6DIR 11 #define ACC_PORT_OUT P6OUT 12 #define ACC_PORT_SEL P6SEL 13 14 #define ACC_X_PIN BIT1 15 #define ACC_Y_PIN BIT2 16 #define ACC_Z_PIN BIT3 17 #define ACC_X_CHANNEL ADC12INCH_1 18 #define ACC_Y_CHANNEL ADC12INCH_2 19 #define ACC_Z_CHANNEL ADC12INCH_3 20 #define TEMP_CHANNEL ADC12INCH_10 21 #define VCC_CHANNEL ADC12INCH_11 22 23 #define AUDIO_PORT_DIR P6DIR 24 #define AUDIO_PORT_OUT P6OUT 25 #define AUDIO_PORT_SEL P6SEL 26 27 #define MIC_POWER_PIN BIT4 28 #define MIC_INPUT_PIN BIT5 29 #define MIC_INPUT_CHAN ADC12INCH_5 30 #define AUDIO_OUT_PWR_PIN BIT6 31 32 #define AUDIO_OUT_DIR P4DIR 33 #define AUDIO_OUT_OUT P4OUT 34 #define AUDIO_OUT_SEL P4SEL 35 36 #define AUDIO_OUT_PIN BIT4 37 38 #define ACC_X_THRESHOLD 200 39 #define ACC_Y_THRESHOLD 200 40 #define ACC_X_MAX 1000 41 #define ACC_Y_MAX 1000 42 #define ACC_Z_MAX 1000 43 44 #define ACC_X_LOW_OFFSET 1950 45 #define ACC_X_HIGH_OFFSET 2150 46 #define ACC_Y_LOW_OFFSET 1950 47 #define ACC_Y_HIGH_OFFSET 2150 48 #define ACC_Z_LOW_OFFSET 1950 49 #define ACC_Z_HIGH_OFFSET 2150 50 51 #define CELSIUS 0xFF 52 #define FAHRENHEIT 0x00 53 54 #define CELSIUS_MUL 7040 55 #define CELSIUS_OFFSET 2620 56 #define FAHRENHEIT_MUL 12672 57 #define FAHRENHEIT_OFFSET 3780 58 enum { ADC_OFF_MODE, ADC_ACC_MODE, ADC_TEMP_MODE}; 59 60 /*-------------Accelerometer Functions----------------------------------------*/ 61 void halAccelerometerInit(void); 62 void halAccelerometerCalibrate(void); 63 void halAccelerometerSetCalibratedOffset( int x, int y, int z ); 64 void halAccelerometerGetCalibratedOffset(int *x, int *y, int*z); 65 void halAccelerometerRead(int* x, int* y, int* z); 66 void halAccelerometerReadWithOffset(int* x, int* y, int* z); 67 void halAccelerometerShutDown(void); 68 69 /*-------------Temperature & VCC Functions------------------------------------*/ 70 void halAdcInitTempVcc(void); 71 void halAdcShutDownTempVcc(void); 72 void halAdcSetTempConversionType(unsigned char conversion); 73 void halAdcSetTempOffset(long offset); 74 int halAdcGetTemp(void); 75 int halAdcGetVcc(void); 76 void halAdcConvertTempVccFromADC(void); 77 void halAdcReadTempVcc(char *TemperatureStr, char *VccStr); 78 79 /*-------------Generic ADC12 Functions----------------------------------------*/ 80 void halAdcStartRead(void); 81 void halAdcSetQuitFromISR(unsigned char quit); 82 83 #endif 84