enter image description here

All the active filters I've found 0n books and google are inverting type (i.e. input signal is applied at the negative input pin of the op-amp).

I thought if I apply the input signal at the positive terminal, it may work as a non-inverting high pass filter. But the frequency response (Proteus 8.6 simulation) looks like a low pass filter.

As my power supply is either 0-5 or 0-3.3 volts, I need to design a filter that does not create a negative output voltage. Plus I'll connect the output to a microcontroller ( or Arduino), which also can't have negative voltage.

Can anyone help me by providing a circuit diagram of Active Non-Inverting High Pass Filter?

  • 1
    \$\begingroup\$ Your title says band pass. \$\endgroup\$
    – Andy aka
    Sep 7, 2020 at 19:25
  • \$\begingroup\$ Oh sorry. Typing mistake. \$\endgroup\$
    – Sadat Rafi
    Sep 7, 2020 at 19:28
  • 2
    \$\begingroup\$ Sure. Classic unity gain Sallen & Key for one. \$\endgroup\$ Sep 7, 2020 at 19:33
  • \$\begingroup\$ Thanks @BrianDrummond. \$\endgroup\$
    – Sadat Rafi
    Sep 7, 2020 at 19:46
  • 1
    \$\begingroup\$ Your upper circuit should have a gain of 1 at DC, breaking upward at about 8kHz, then breaking downward at 16kHz to settle out at a gain of 2. So something is wrong -- perhaps because you have Vee = ground instead of some negative voltage? It's still not what you want, of course. \$\endgroup\$
    – TimWescott
    Sep 7, 2020 at 20:19

2 Answers 2


Just use a standard passive high pass filter and stick a non-inverting op-amp buffer on the output. Use two resistors for the filter with one to Vcc and the other to ground to add the required DC offset. Job done.


One of the reasons involve the changing of the transfer function. Considering \$Z_f\$ as the feedback equivalent impedance and \$Z_i\$ as the input equivalent impedance, the transfer function for an inverting opamp is \$-Z_f/Z_i\$, while for a non-inverting opamp, \$Z_i\$ is the grounded equivalent impedance, and the gain is \$1+Z_f/Z_i\$.

Now let's consider a simple lowpass, \$\omega/(s+\omega)\$. If you were to use a capacitor (\$C_1\$) in parallel with a resistor (\$R_1\$) as \$Z_f\$, and a resistor (\$R_2\$) as \$Z_i\$, you'd have this resultant transfer function:

$$ H(s)=-\frac{C_1||R_1}{R_2}=-\frac{\frac{1}{sC_1+\frac{1}{R_1}}}{R_2}=-\frac{R_1}{R_1R_2Cs+R_2}=-\frac{R_1}{R_2}\frac{\frac{1}{R_1C}}{s+\frac{1}{R_1C}} $$

Which is the lowpass transfer function with a gain. If you apply the same elements to the non-inverting configuration, this is what you get:

$$ H(s)=\left(1+\frac{R_1}{R_2}\right)\frac{\frac{1}{R_1C}}{s+\frac{1}{R_1C}}=\left(1+\frac{R_1}{R_2}\right)\frac{\frac{R_2}{R_1+R_2}s+\frac{1}{R_1C}}{s+\frac{1}{R_1C}} $$

Which is a shelf-lowpass, of the form \$(s+\omega_z)/(s+\omega_p)\$. That \$1\$ changes everything: it adds the denominator to the numerator.

What you have there is a high-pass, as an inverting configuration, which transforms into a shelf-highpass for the non-inverting configuration. The reason why you don't see this response in your picture is because you're using unipolar supply for the inverting opamp, while using bipolar supply for the non-inverting one. If you'll make both opamps suplied from the same sources, the results should change.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.