I'm working with an IC that can't take more than 3.3V (+/- 0.2V), including on its I/O pins. I want to control it using Arduino, but its PIN's are 5V. Now I'm wondering if I can use PWM to archieve the 3.3V by setting the correct duty cycle. It doesn't seem that good a solution since the voltage will transiently be above 5V which might harm the IC.
So what is the best solution for this? Given I need to control 6 PIN's both in and out (two PIN's are only input to the IC whereas 4 are both in/out depending on the IC's state), I would prefer something involving as few components as possible since I will need to dublicate the solution 6 times!
Given the current draw will likely be very small, I'm thinking I could use a voltage divider on each PIN (= 2 resistors) to get the 5V down to 3.3V. Is that a good solution? Or is there a better one?
Another solution could be to put a 3.3 Zener in reverse from signal to ground (after the resistor)?