I wanted to create a square wave that alternates between positive and negative voltage with a full cycle time of 8ms and a 50% duty cycle. So is there a way I could make a circuit that takes in 0V and a voltage V_in (roughly in the voltage range of 1V-7V), and that outputs the square wave as well as the inverse of the square wave. The load I'm going to put on the signal is very minimal (below 10 mA).
You can do it with a dual opamp. The left opamp is a relaxation oscillator - can adjust the frequency with R1 - and the second opamp just inverts.
The AC-coupling at the outputs creates the bipolar output swing you wanted. The total output swing will be a volt or two less than Vin.
Here is a simulation, with Vin = 10V:
@Reinderien correctly pointed out this solution doesn't swing from Vin to -Vin. For that we need a voltage boost.
The following circuit will do that. It again uses an opamp for the relaxation oscillator: this should be a rail-to-rail type to get maximum voltage swing. The square wave feeds a cheap voltage inverter generating a negative voltage nearly equal to -Vin. A BAT54S does the two diodes in one cheap package. Dual comparator LM393 uses this negative voltage as a reference, the pullup resistor determines the high voltage.
And here is the simulation (using available opamp and comparator in the library but just use an LM393 and any rail-to-rail opamp).
As Reinderien made a topic that is related to this, I will also share my answer here. Note that this circuit only creates an additional inverted square wave from a unipolar input square wave V1 (without a negative supply), but doesn't create the square wave itself. So it is only part of the solution.