In my circuits I've used ceramic caps (which are not polarized). Following the reference circuit I've run in to some stability issues. I've had some problems with serial communication connecting it to a PIC micrcontroller. Also in an I2C circuit using an Arduino and a couple MAX232A's, the I2C bus gets messed up after about 5 minutes of transactions.
In both cases I've narrowed the problem down to C4 in the reference circuit mentioned above. C4 is connected to V- on the chip. In the circuit C4 is connected between V- and GND. However, I've found that if I move the capacitor to between V- and +5V, stability becomes perfect. If I measure the voltage on the chip pin in both cases it's around -9V which is proper. If I remove C4, voltage is around -5V and communication gets really flaky.
Am I using the wrong type of capacitors?
Can anyone explain why I'm having these problems and why the workaround works?
I write some electronics tutorials on my website and I don't want to recommend going against the datasheet without some reasoning behind it.
The 0.1uF can be non polarized and it must be the MAX232A or equivalent to use 0.1 caps. 9V is about right. I've used the MAX232A in many projects with 0.1uF caps and it works fine. Sounds like bad power supply decoupling could be your problem.
You need a 0.1uF cap on as close as you can get to every digital IC. A good power supply filter cap is also essential. As an example the little blueish parts near all the ICs are decoupling caps. **broken link removed**
100uF thru 220uF will work for the average circuit, larger if you're drawing some serious current. I don't have the formula handy but look at your voltage regulators data sheet. The big one should be near the regulator. **broken link removed**
For my little prototype I2C circuit, I'm using the Arduino +5V and GND. I believe there's a 7805 in there that has been properly filtered. I'm only using about 50mA max.
I've always had the 0.1uF caps on the digital ICs.
Is there any other explanation for the behaviour I'm seeing? It has been very predictable.
The I2C chips I'm using are MAX5696's which are LED controllers. I've got 2 of them, each blinking a single led in my test circuit.
I don't know much about the Arduino's power supply or your circuit. Could you post a schematic of your circuit? What are you using to program the PIC? If it has a debugger you could watch it happen.
The PIC communication stability issue happened months ago, so I can't say for sure that I can duplicate it.
For the I2C circuit, I've had C4 connected between V- and +5V and its been working fine for days. If I move C4 between V- and GND it will stop working within 5 minutes.
The code actually stops running in the microcontroller. I've tried 2 different Arduino versions to verify there wasn't something wrong with mine. A similar result is seen if I short SDA and SCL.