OPAMP - Operational Amplifier#
Operational Amplifier (OPAMP) peripheral API.
This module contains functions to:
All OPAMP functions assume that the DAC clock is running. If DAC is not used, the clock can be turned off when OPAMPs are configured.
If the available gain values don't suit the application at hand, the resistor ladders can be disabled and external gain programming resistors used.
A number of predefined OPAMP setup macros are available for configuration of the most common OPAMP topologies (see figures below).
Note
Unity gain voltage follower.
Use predefined macros OPA_INIT_UNITY_GAIN and OPA_INIT_UNITY_GAIN_OPA2.
|\
___________|+\
| \_______
___|_ / |
| | / |
| |/ |
|___________|
Non-inverting amplifier.
Use predefined macros OPA_INIT_NON_INVERTING and OPA_INIT_NON_INVERTING_OPA2.
|\
___________|+\
| \_______
___|_ / |
| | / |
| |/ |
|_____R2____|
|
R1
|
NEGPAD
Inverting amplifier.
Use predefined macros OPA_INIT_INVERTING and OPA_INIT_INVERTING_OPA2.
_____R2____
| |
| |\ |
____R1_|___|_\ |
| \____|___
___| /
| |+/
| |/
|
POSPAD
Cascaded non-inverting amplifiers.
Use predefined macros OPA_INIT_CASCADED_NON_INVERTING_OPA0, OPA_INIT_CASCADED_NON_INVERTING_OPA1 and OPA_INIT_CASCADED_NON_INVERTING_OPA2.
|\ |\ |\
___________|+\ OPA0 ___________|+\ OPA1 ___________|+\ OPA2
| \_________| | \_________| | \_______
___|_ / | ___|_ / | ___|_ / |
| | / | | | / | | | / |
| |/ | | |/ | | |/ |
|_____R2____| |_____R2____| |_____R2____|
| | |
R1 R1 R1
| | |
NEGPAD NEGPAD NEGPAD
Cascaded inverting amplifiers.
Use predefined macros OPA_INIT_CASCADED_INVERTING_OPA0, OPA_INIT_CASCADED_INVERTING_OPA1 and OPA_INIT_CASCADED_INVERTING_OPA2.
_____R2____ _____R2____ _____R2____
| | | | | |
| |\ | | |\ | | |\ |
____R1_|___|_\ | ____R1_|___|_\ | ____R1_|___|_\ |
| \____|____| | \____|___| | \____|__
___| / ___| / ___| /
| |+/ OPA0 | |+/ OPA1 | |+/ OPA2
| |/ | |/ | |/
| | |
POSPAD POSPAD POSPAD
Differential driver with two opamp's.
Use predefined macros OPA_INIT_DIFF_DRIVER_OPA0 and OPA_INIT_DIFF_DRIVER_OPA1.
__________________________
| +
| _____R2____
|\ | | |
___________|+\ OPA0 | | |\ OPA1 |
| \_________|____R1_|___|_\ | _
___|_ / | | \____|______
| | / | ___| /
| |/ | | |+/
|________________| | |/
|
POSPAD
Differential receiver with three opamp's.
Use predefined macros OPA_INIT_DIFF_RECEIVER_OPA0, OPA_INIT_DIFF_RECEIVER_OPA1 and OPA_INIT_DIFF_RECEIVER_OPA2.
|\
__________|+\ OPA1
_ | \_________
___|_ / | | _____R2____
| | / | | | |
| |/ | | | |\ |
|___________| |____R1_|___|_\ |
| \____|___
|\ ____R1_ ___| /
+__________|+\ OPA0 | | |+/ OPA2
| \_________| | |/
___|_ / | R2
| | / | |
| |/ | NEGPAD OPA0
|___________|
Modules#
OPAMP_Init_TypeDef
Enumerations#
enum
OPA0 = 0
OPA1 = 1
OPA2 = 2
}
enum
opaNegSelDisable = DAC_OPA0MUX_NEGSEL_DISABLE
opaNegSelUnityGain = DAC_OPA0MUX_NEGSEL_UG
opaNegSelResTap = DAC_OPA0MUX_NEGSEL_OPATAP
opaNegSelNegPad = DAC_OPA0MUX_NEGSEL_NEGPAD
}
OPAMP negative terminal input selection values.
enum
opaPosSelDisable = DAC_OPA0MUX_POSSEL_DISABLE
opaPosSelDac = DAC_OPA0MUX_POSSEL_DAC
opaPosSelPosPad = DAC_OPA0MUX_POSSEL_POSPAD
opaPosSelOpaIn = DAC_OPA0MUX_POSSEL_OPA0INP
opaPosSelResTapOpa0 = DAC_OPA0MUX_POSSEL_OPATAP
}
OPAMP positive terminal input selection values.
enum
opaOutModeDisable = DAC_OPA0MUX_OUTMODE_DISABLE
opaOutModeMain = DAC_OPA0MUX_OUTMODE_MAIN
opaOutModeAlt = DAC_OPA0MUX_OUTMODE_ALT
opaOutModeAll = DAC_OPA0MUX_OUTMODE_ALL
}
OPAMP output terminal selection values.
enum
opaResSelDefault = DAC_OPA0MUX_RESSEL_DEFAULT
opaResSelR2eq0_33R1 = DAC_OPA0MUX_RESSEL_RES0
opaResSelR2eqR1 = DAC_OPA0MUX_RESSEL_RES1
opaResSelR1eq1_67R1 = DAC_OPA0MUX_RESSEL_RES2
opaResSelR2eq2R1 = DAC_OPA0MUX_RESSEL_RES3
opaResSelR2eq3R1 = DAC_OPA0MUX_RESSEL_RES4
opaResSelR2eq4_33R1 = DAC_OPA0MUX_RESSEL_RES5
opaResSelR2eq7R1 = DAC_OPA0MUX_RESSEL_RES6
opaResSelR2eq15R1 = DAC_OPA0MUX_RESSEL_RES7
}
enum
opaResInMuxDisable = DAC_OPA0MUX_RESINMUX_DISABLE
opaResInMuxOpaIn = DAC_OPA0MUX_RESINMUX_OPA0INP
opaResInMuxNegPad = DAC_OPA0MUX_RESINMUX_NEGPAD
opaResInMuxPosPad = DAC_OPA0MUX_RESINMUX_POSPAD
opaResInMuxVss = DAC_OPA0MUX_RESINMUX_VSS
}
OPAMP resistor ladder input selector values.
Functions#
void
Disable an Operational Amplifier.
void
OPAMP_Enable(DAC_TypeDef *dac, OPAMP_TypeDef opa, const OPAMP_Init_TypeDef *init)
Configure and enable an Operational Amplifier.
Macros#
#define
Configuration of OPA0/1 in unity gain voltage follower mode.
#define
Configuration of OPA2 in unity gain voltage follower mode.
#define
Configuration of OPA0/1 in non-inverting amplifier mode.
#define
Configuration of OPA2 in non-inverting amplifier mode.
#define
Configuration of OPA0/1 in inverting amplifier mode.
#define
Configuration of OPA2 in inverting amplifier mode.
#define
Configuration of OPA0 in cascaded non-inverting amplifier mode.
#define
Configuration of OPA1 in cascaded non-inverting amplifier mode.
#define
Configuration of OPA2 in cascaded non-inverting amplifier mode.
#define
Configuration of OPA0 in cascaded inverting amplifier mode.
#define
Configuration of OPA1 in cascaded inverting amplifier mode.
#define
Configuration of OPA2 in cascaded inverting amplifier mode.
#define
Configuration of OPA0 in two-opamp differential driver mode.
#define
Configuration of OPA1 in two-opamp differential driver mode.
#define
Configuration of OPA0 in three-opamp differential receiver mode.
#define
Configuration of OPA1 in three-opamp differential receiver mode.
#define
Configuration of OPA2 in three-opamp differential receiver mode.
Enumeration Documentation#
OPAMP_TypeDef#
OPAMP_TypeDef
OPAMP selector values.
Enumerator |
---|
OPA0 | Select OPA0. |
OPA1 | Select OPA1. |
OPA2 | Select OPA2. |
Definition at line 80
of file platform/emlib/inc/em_opamp.h
OPAMP_NegSel_TypeDef#
OPAMP_NegSel_TypeDef
OPAMP negative terminal input selection values.
Enumerator |
---|
opaNegSelDisable | Input disabled. |
opaNegSelUnityGain | Unity gain feedback path. |
opaNegSelResTap | Feedback resistor ladder tap. |
opaNegSelNegPad | Negative pad as input. |
Definition at line 96
of file platform/emlib/inc/em_opamp.h
OPAMP_PosSel_TypeDef#
OPAMP_PosSel_TypeDef
OPAMP positive terminal input selection values.
Enumerator |
---|
opaPosSelDisable | Input disabled. |
opaPosSelDac | DAC as input (not OPA2). |
opaPosSelPosPad | Positive pad as input. |
opaPosSelOpaIn | Input from OPAx. |
opaPosSelResTapOpa0 | Feedback resistor ladder tap from OPA0. |
Definition at line 175
of file platform/emlib/inc/em_opamp.h
OPAMP_OutMode_TypeDef#
OPAMP_OutMode_TypeDef
OPAMP output terminal selection values.
Enumerator |
---|
opaOutModeDisable | OPA output disabled. |
opaOutModeMain | Main output to pin enabled. |
opaOutModeAlt | Alternate output(s) enabled (not OPA2). |
opaOutModeAll | Both main and alternate enabled (not OPA2). |
Definition at line 256
of file platform/emlib/inc/em_opamp.h
OPAMP_ResSel_TypeDef#
OPAMP_ResSel_TypeDef
OPAMP gain values.
Enumerator |
---|
opaResSelDefault | Default value when resistor ladder is unused. |
opaResSelR2eq0_33R1 | R2 = 0.33 * R1. |
opaResSelR2eqR1 | R2 = R1 |
opaResSelR1eq1_67R1 | R2 = 1.67 R1 |
opaResSelR2eq2R1 | R2 = 2 * R1 |
opaResSelR2eq3R1 | R2 = 3 * R1 |
opaResSelR2eq4_33R1 | R2 = 4.33 * R1. |
opaResSelR2eq7R1 | R2 = 7 * R1 |
opaResSelR2eq15R1 | R2 = 15 * R1 |
Definition at line 335
of file platform/emlib/inc/em_opamp.h
OPAMP_ResInMux_TypeDef#
OPAMP_ResInMux_TypeDef
OPAMP resistor ladder input selector values.
Enumerator |
---|
opaResInMuxDisable | Resistor ladder disabled. |
opaResInMuxOpaIn | Input from OPAx. |
opaResInMuxNegPad | Input from negative pad. |
opaResInMuxPosPad | Input from positive pad. |
opaResInMuxVss | Input connected to Vss. |
Definition at line 360
of file platform/emlib/inc/em_opamp.h
Function Documentation#
OPAMP_Disable#
void OPAMP_Disable (DAC_TypeDef * dac, OPAMP_TypeDef opa)
Disable an Operational Amplifier.
Parameters[in] | dac | A pointer to the DAC peripheral register block. |
[in] | opa | Selects an OPA, valid values are OPA0, OPA1, and OPA2. |
Definition at line 252
of file platform/emlib/src/em_opamp.c
OPAMP_Enable#
void OPAMP_Enable (DAC_TypeDef * dac, OPAMP_TypeDef opa, const OPAMP_Init_TypeDef * init)
Configure and enable an Operational Amplifier.
Parameters[in] | dac | A pointer to the DAC peripheral register block. |
[in] | opa | Selects an OPA, valid values are OPA0, OPA1, and OPA2. |
[in] | init | A pointer to a structure containing OPAMP initialization information. |
Note
The value of the alternate output enable bit mask in the OPAMP_Init_TypeDef structure should consist of one or more of the DAC_OPA[opa#]MUX_OUTPEN_OUT[output#] flags (defined in <part_name>_dac.h) OR'ed together.
For OPA0:
DAC_OPA0MUX_OUTPEN_OUT0
DAC_OPA0MUX_OUTPEN_OUT1
DAC_OPA0MUX_OUTPEN_OUT2
DAC_OPA0MUX_OUTPEN_OUT3
DAC_OPA0MUX_OUTPEN_OUT4
For OPA1:
DAC_OPA1MUX_OUTPEN_OUT0
DAC_OPA1MUX_OUTPEN_OUT1
DAC_OPA1MUX_OUTPEN_OUT2
DAC_OPA1MUX_OUTPEN_OUT3
DAC_OPA1MUX_OUTPEN_OUT4
For OPA2:
DAC_OPA2MUX_OUTPEN_OUT0
DAC_OPA2MUX_OUTPEN_OUT1
E.g:
init.outPen = DAC_OPA0MUX_OUTPEN_OUT0 | DAC_OPA0MUX_OUTPEN_OUT4;
Definition at line 363
of file platform/emlib/src/em_opamp.c
Macro Definition Documentation#
OPA_INIT_UNITY_GAIN#
#define OPA_INIT_UNITY_GAIN
Value: { \
opaNegSelUnityGain, /* Unity gain. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelDefault, /* Resistor ladder is not used. */ \
opaResInMuxDisable, /* Resistor ladder disabled. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
false, /* Negative pad disabled. */ \
true, /* Positive pad enabled, used as signal input. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA0/1 in unity gain voltage follower mode.
Definition at line 530
of file platform/emlib/inc/em_opamp.h
OPA_INIT_UNITY_GAIN_OPA2#
#define OPA_INIT_UNITY_GAIN_OPA2
Value: { \
opaNegSelUnityGain, /* Unity gain. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelDefault, /* Resistor ladder is not used. */ \
opaResInMuxDisable, /* Resistor ladder disabled. */ \
DAC_OPA0MUX_OUTPEN_OUT0, /* Alternate output 0 enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
false, /* Negative pad disabled. */ \
true, /* Positive pad enabled, used as signal input. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA2 in unity gain voltage follower mode.
Definition at line 552
of file platform/emlib/inc/em_opamp.h
OPA_INIT_NON_INVERTING#
#define OPA_INIT_NON_INVERTING
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelR2eq0_33R1, /* R2 = 1/3 R1 */ \
opaResInMuxNegPad, /* Resistor ladder input from negative pad. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
true, /* Negative pad enabled, used as signal ground. */ \
true, /* Positive pad enabled, used as signal input. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA0/1 in non-inverting amplifier mode.
Definition at line 574
of file platform/emlib/inc/em_opamp.h
OPA_INIT_NON_INVERTING_OPA2#
#define OPA_INIT_NON_INVERTING_OPA2
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelR2eq0_33R1, /* R2 = 1/3 R1 */ \
opaResInMuxNegPad, /* Resistor ladder input from negative pad. */ \
DAC_OPA0MUX_OUTPEN_OUT0, /* Alternate output 0 enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
true, /* Negative pad enabled, used as signal ground. */ \
true, /* Positive pad enabled, used as signal input. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA2 in non-inverting amplifier mode.
Definition at line 596
of file platform/emlib/inc/em_opamp.h
OPA_INIT_INVERTING#
#define OPA_INIT_INVERTING
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelR2eqR1, /* R2 = R1 */ \
opaResInMuxNegPad, /* Resistor ladder input from negative pad. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
true, /* Negative pad enabled, used as signal input. */ \
true, /* Positive pad enabled, used as signal ground. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA0/1 in inverting amplifier mode.
Definition at line 618
of file platform/emlib/inc/em_opamp.h
OPA_INIT_INVERTING_OPA2#
#define OPA_INIT_INVERTING_OPA2
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelR2eqR1, /* R2 = R1 */ \
opaResInMuxNegPad, /* Resistor ladder input from negative pad. */ \
DAC_OPA0MUX_OUTPEN_OUT0, /* Alternate output 0 enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
true, /* Negative pad enabled, used as signal input. */ \
true, /* Positive pad enabled, used as signal ground. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA2 in inverting amplifier mode.
Definition at line 640
of file platform/emlib/inc/em_opamp.h
OPA_INIT_CASCADED_NON_INVERTING_OPA0#
#define OPA_INIT_CASCADED_NON_INVERTING_OPA0
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeAll, /* Both main and alternate outputs. */ \
opaResSelR2eq0_33R1, /* R2 = 1/3 R1 */ \
opaResInMuxNegPad, /* Resistor ladder input from negative pad. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
true, /* Pass output to next stage (OPA1). */ \
true, /* Negative pad enabled, used as signal ground. */ \
true, /* Positive pad enabled, used as signal input. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA0 in cascaded non-inverting amplifier mode.
Definition at line 662
of file platform/emlib/inc/em_opamp.h
OPA_INIT_CASCADED_NON_INVERTING_OPA1#
#define OPA_INIT_CASCADED_NON_INVERTING_OPA1
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelOpaIn, /* Positive input from OPA0 output. */ \
opaOutModeAll, /* Both main and alternate outputs. */ \
opaResSelR2eq0_33R1, /* R2 = 1/3 R1 */ \
opaResInMuxNegPad, /* Resistor ladder input from negative pad. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
true, /* Pass output to next stage (OPA2). */ \
true, /* Negative pad enabled, used as signal ground. */ \
false, /* Positive pad disabled. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA1 in cascaded non-inverting amplifier mode.
Definition at line 684
of file platform/emlib/inc/em_opamp.h
OPA_INIT_CASCADED_NON_INVERTING_OPA2#
#define OPA_INIT_CASCADED_NON_INVERTING_OPA2
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelOpaIn, /* Positive input from OPA1 output. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelR2eq0_33R1, /* R2 = 1/3 R1 */ \
opaResInMuxNegPad, /* Resistor ladder input from negative pad. */ \
DAC_OPA0MUX_OUTPEN_OUT0, /* Alternate output 0 enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
true, /* Negative pad enabled, used as signal ground. */ \
false, /* Positive pad disabled. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA2 in cascaded non-inverting amplifier mode.
Definition at line 706
of file platform/emlib/inc/em_opamp.h
OPA_INIT_CASCADED_INVERTING_OPA0#
#define OPA_INIT_CASCADED_INVERTING_OPA0
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeAll, /* Both main and alternate outputs. */ \
opaResSelR2eqR1, /* R2 = R1 */ \
opaResInMuxNegPad, /* Resistor ladder input from negative pad. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
true, /* Pass output to next stage (OPA1). */ \
true, /* Negative pad enabled, used as signal input. */ \
true, /* Positive pad enabled, used as signal ground. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA0 in cascaded inverting amplifier mode.
Definition at line 728
of file platform/emlib/inc/em_opamp.h
OPA_INIT_CASCADED_INVERTING_OPA1#
#define OPA_INIT_CASCADED_INVERTING_OPA1
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeAll, /* Both main and alternate outputs. */ \
opaResSelR2eqR1, /* R2 = R1 */ \
opaResInMuxOpaIn, /* Resistor ladder input from OPA0. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
true, /* Pass output to next stage (OPA2). */ \
false, /* Negative pad disabled. */ \
true, /* Positive pad enabled, used as signal ground. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA1 in cascaded inverting amplifier mode.
Definition at line 750
of file platform/emlib/inc/em_opamp.h
OPA_INIT_CASCADED_INVERTING_OPA2#
#define OPA_INIT_CASCADED_INVERTING_OPA2
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelR2eqR1, /* R2 = R1 */ \
opaResInMuxOpaIn, /* Resistor ladder input from OPA1. */ \
DAC_OPA0MUX_OUTPEN_OUT0, /* Alternate output 0 enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
false, /* Negative pad disabled. */ \
true, /* Positive pad enabled, used as signal ground. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA2 in cascaded inverting amplifier mode.
Definition at line 772
of file platform/emlib/inc/em_opamp.h
OPA_INIT_DIFF_DRIVER_OPA0#
#define OPA_INIT_DIFF_DRIVER_OPA0
Value: { \
opaNegSelUnityGain, /* Unity gain. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeAll, /* Both main and alternate outputs. */ \
opaResSelDefault, /* Resistor ladder is not used. */ \
opaResInMuxDisable, /* Resistor ladder disabled. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
true, /* Pass output to next stage (OPA1). */ \
false, /* Negative pad disabled. */ \
true, /* Positive pad enabled, used as signal input. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA0 in two-opamp differential driver mode.
Definition at line 794
of file platform/emlib/inc/em_opamp.h
OPA_INIT_DIFF_DRIVER_OPA1#
#define OPA_INIT_DIFF_DRIVER_OPA1
Value: { \
opaNegSelResTap, /* Negative input from resistor ladder tap. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelR2eqR1, /* R2 = R1 */ \
opaResInMuxOpaIn, /* Resistor ladder input from OPA0. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
false, /* Negative pad disabled. */ \
true, /* Positive pad enabled, used as signal ground. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA1 in two-opamp differential driver mode.
Definition at line 816
of file platform/emlib/inc/em_opamp.h
OPA_INIT_DIFF_RECEIVER_OPA0#
#define OPA_INIT_DIFF_RECEIVER_OPA0
Value: { \
opaNegSelUnityGain, /* Unity gain. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeAll, /* Both main and alternate outputs. */ \
opaResSelR2eqR1, /* R2 = R1 */ \
opaResInMuxNegPad, /* Resistor ladder input from negative pad. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
true, /* Pass output to next stage (OPA2). */ \
true, /* Negative pad enabled, used as signal ground. */ \
true, /* Positive pad enabled, used as signal input. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA0 in three-opamp differential receiver mode.
Definition at line 838
of file platform/emlib/inc/em_opamp.h
OPA_INIT_DIFF_RECEIVER_OPA1#
#define OPA_INIT_DIFF_RECEIVER_OPA1
Value: { \
opaNegSelUnityGain, /* Unity gain. */ \
opaPosSelPosPad, /* Positive input from pad. */ \
opaOutModeAll, /* Both main and alternate outputs. */ \
opaResSelDefault, /* Resistor ladder is not used. */ \
opaResInMuxDisable, /* Disable resistor ladder. */ \
0, /* No alternate outputs enabled. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
true, /* Pass output to next stage (OPA2). */ \
false, /* Negative pad disabled. */ \
true, /* Positive pad enabled, used as signal input. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA1 in three-opamp differential receiver mode.
Definition at line 860
of file platform/emlib/inc/em_opamp.h
OPA_INIT_DIFF_RECEIVER_OPA2#
#define OPA_INIT_DIFF_RECEIVER_OPA2
Value: { \
opaNegSelResTap, /* Input from resistor ladder tap. */ \
opaPosSelResTapOpa0, /* Input from OPA0 resistor ladder tap. */ \
opaOutModeMain, /* Main output enabled. */ \
opaResSelR2eqR1, /* R2 = R1 */ \
opaResInMuxOpaIn, /* Resistor ladder input from OPA1. */ \
DAC_OPA0MUX_OUTPEN_OUT0, /* Enable alternate output 0. */ \
_DAC_BIASPROG_BIASPROG_DEFAULT, /* Default bias setting. */ \
_DAC_BIASPROG_HALFBIAS_DEFAULT, /* Default half-bias setting. */ \
false, /* No low pass filter on positive pad. */ \
false, /* No low pass filter on negative pad. */ \
false, /* No nextout output enabled. */ \
false, /* Negative pad disabled. */ \
false, /* Positive pad disabled. */ \
false, /* No shorting of inputs. */ \
false, /* Rail-to-rail input enabled. */ \
true, /* Use factory calibrated opamp offset. */ \
0 /* Opamp offset value (not used). */ \
}
Configuration of OPA2 in three-opamp differential receiver mode.
Definition at line 882
of file platform/emlib/inc/em_opamp.h