00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041 #ifndef ADS7870_H
00042 #define ADS7870_H
00043
00044 #include "global.h"
00045
00046
00047 #define ADS7870_CS_PORT PORTB
00048 #define ADS7870_CS_DDR DDRB
00049 #define ADS7870_CS_PIN PB0
00050
00051
00052 #define ADS7870_CONVERT 0x80
00053
00054 #define ADS7870_REG_READ 0x40
00055 #define ADS7870_REG_WRITE 0x00
00056 #define ADS7870_REG_16BIT 0x20
00057
00058
00059 #define ADS7870_RESULTLO 0x00
00060 #define ADS7870_RESULTHI 0x01
00061 #define ADS7870_PGAVALID 0x02
00062 #define ADS7870_ADCTRL 0x03
00063 #define ADS7870_GAINMUX 0x04
00064 #define ADS7870_DIGIOSTATE 0x05
00065 #define ADS7870_DIGIOCTRL 0x06
00066 #define ADS7870_REFOSC 0x07
00067 #define ADS7870_SERIFCTRL 0x18
00068 #define ADS7870_ID 0x1F
00069
00070
00071 #define ADS7870_RESULTLO_OVR 0x01
00072
00073 #define ADS7870_ADCTRL_BIN 0x20
00074 #define ADS7870_ADCTRL_RMB1 0x08
00075 #define ADS7870_ADCTRL_RMB0 0x04
00076 #define ADS7870_ADCTRL_CFD1 0x02
00077 #define ADS7870_ADCTRL_CFD0 0x01
00078
00079 #define ADS7870_GAINMUX_CNVBSY 0x80
00080
00081 #define ADS7870_REFOSC_OSCR 0x20
00082 #define ADS7870_REFOSC_OSCE 0x10
00083 #define ADS7870_REFOSC_REFE 0x08
00084 #define ADS7870_REFOSC_BUFE 0x04
00085 #define ADS7870_REFOSC_R2V 0x02
00086 #define ADS7870_REFOSC_RBG 0x01
00087
00088 #define ADS7870_SERIFCTRL_LSB 0x01
00089 #define ADS7870_SERIFCTRL_2W3W 0x02
00090 #define ADS7870_SERIFCTRL_8051 0x04
00091
00092 #define ADS7870_ID_VALUE 0x01
00093
00094
00095 #define ADS7870_GAIN_1X 0x00
00096 #define ADS7870_GAIN_2X 0x10
00097 #define ADS7870_GAIN_4X 0x20
00098 #define ADS7870_GAIN_5X 0x30
00099 #define ADS7870_GAIN_8X 0x40
00100 #define ADS7870_GAIN_10X 0x50
00101 #define ADS7870_GAIN_16X 0x60
00102 #define ADS7870_GAIN_20X 0x70
00103
00104 #define ADS7870_CH_0_1_DIFF 0x00
00105 #define ADS7870_CH_2_3_DIFF 0x01
00106 #define ADS7870_CH_4_5_DIFF 0x02
00107 #define ADS7870_CH_6_7_DIFF 0x03
00108 #define ADS7870_CH_1_0_DIFF 0x04
00109 #define ADS7870_CH_3_2_DIFF 0x05
00110 #define ADS7870_CH_5_4_DIFF 0x06
00111 #define ADS7870_CH_7_6_DIFF 0x07
00112 #define ADS7870_CH_SINGLE_ENDED 0x08
00113 #define ADS7870_CH_0 0x08
00114 #define ADS7870_CH_1 0x09
00115 #define ADS7870_CH_2 0x0A
00116 #define ADS7870_CH_3 0x0B
00117 #define ADS7870_CH_4 0x0C
00118 #define ADS7870_CH_5 0x0D
00119 #define ADS7870_CH_6 0x0E
00120 #define ADS7870_CH_7 0x0F
00121
00122
00123
00124
00125
00126
00127
00128 u08 ads7870Init(void);
00129
00130
00131
00132 s16 ads7870Convert(u08 channel);
00133
00134
00135
00136 s16 ads7870ConvertDiff(u08 channel);
00137
00138
00139
00140 s16 ads7870ConvertRaw(u08 channel);
00141
00142
00143
00144 u08 ads7870ReadReg(u08 reg);
00145
00146
00147
00148 void ads7870WriteReg(u08 reg, u08 value);
00149
00150
00151
00152 #endif
00153