All my programms with I2C are work.
I use 10K from 5v to pin of pic16f628a.
Now i want to control with i2c (pic16f628a) one NS73M which work at 3,3V.
May i have any problem if i use 10K from 5V to pin from NS73M.
Printable View
All my programms with I2C are work.
I use 10K from 5v to pin of pic16f628a.
Now i want to control with i2c (pic16f628a) one NS73M which work at 3,3V.
May i have any problem if i use 10K from 5V to pin from NS73M.
I would suggest a 1/3 devider, see schematic.
Al.
Maybe you don't understand well because my english is not good.
I want to control the NS73M with 16f628a with I2C , but NS73M works at 3,3 volts.
Set your pull-up to 3.3v and see what happen on the SCL/SDA line with a scope and a I2CREAD/WRITE tight loop.
I suspect the I2CREAD/WRITE would play with TRIS... worth to have a look at this.
Your device is not 5 volt tolerant (well as per the datasheet) so I would say you will have problem with direct connection. Arrati's suggestion might work, but I would be concerned about the shape of the data though AND I2C line work usually @4.7K or lower pull-up value...
There's still some I2C level shifter available. Philips use to do some. PCA9512A, P82B96 spring to mind now.
If at all possible, run the whole thing at 3.3 volt.
Always i use on my projects with I2C , 1OK resistor without problem.
Now i am afraid for the NS73M , because work at 3,3 volt.
I have make the PCB and tomorrow maybe i will test.
Maybe i Set pull-up to 3.3v to test , or i run all at 3,3 volt (and LCD).
Have any problem with 16f628a with 3,3 volt;
You might not be able to get the LCD to work on 3.3v, but you can always put a regulator or resistors in to drop voltage for the NS73M...
I am having my own problems with this situation.
I hope you are successful, and I hope you share ;)
Cheers!
SmugWimp
curious, but doesn't PBP run the clock and data as open collector? (playing with tris).
the 628a doesn't have i2c hardware so would have to be done by PBP.
as I've seen the define to make the clock bipolar I've wondered about that.
and reading the lib seen :
or similar all about the i2c routines.Code:i2chigh
ifndef I2C_INTERNAL
bsf FSR, 7 ; 1 Point to TRIS
endif
iorwf INDF, F ; 1 Set high (input)
if so, then pullups to 3.3v appears to be all that's needed.?
(assuming the pic recognises 3.3v as a high)
maye that's why Acetronics saidSomething I'm missing?Quote:
But just verify you use TTL inputs of the PIC and not Schmitt trigger ones ...
You need a bidirektional Level-shifter !
Look here:
http://www.standardics.philips.com/s...df/an97055.pdf
http://www.semiconductors.philips.co...#levelshifting
You need only 2 little MOSFETs!
Yesterday i test it and all is ok.
I use 5volt for 16f628a + LCD and 3,3 volt for NS73M
My problem with NS73M is that have spurius near the local frequency.
Thanks all for help.