I was thinking of using my PIC at 5v but to interface with nokia LCD at 3.3v max. and then I came across this relay IC ULN2803 which drives signal HIGHER instead of lower. I wanted to ask is it OK if my input is 5v but I supply 3v to ULN2803 to get 3v signal?
I was thinking of using my PIC at 5v but to interface with nokia LCD at 3.3v max. and then I came across this relay IC ULN2803 which drives signal HIGHER instead of lower. I wanted to ask is it OK if my input is 5v but I supply 3v to ULN2803 to get 3v signal?
An easy thing to do is to use a non inverting buffer (74AC245) and supply it with 3.3VDC, and have the 5VDC input and a 3.3VDC output. It is a level converter commonly used.
If the input impedance of the I/O line on the display is known you can use a single resistor between the I/O lines to drop the rest of the voltage, just like a voltage divider. You could also use a smaller resistor and a zener diode to get a more reliable voltage.
Wouldn't the 74AC245 be a easier solution? All you would need is the level conversion supply, and you would have 8 lines to deal with, perfect for a Parallel or serial LCD depending on the lines required. If more lines are needed, you can multiplex them and drive them all into a 245 at 3.3vdc. The AC series can be powered between 2VDC and 6VDC and can drive up to 50 milliamps. A popular chip series for BEAM robotic hobbyists.
If the I/O impedance is known all you have to do is calculate the resistor required that's it, you can't get any simpler than that. 3.3V logic can easily trigger a 5 volt input so you don't need reverse conversion. The only problem is if you need really high speeds as the resistor value is likely going to be pretty large so with cmos logic the RC time constant on the line is going to be pretty high.