Quoting "Alan B. Pearce" : > >And I shouldn't be communicating using bsf/bcf on > >the ports.. instead use the TRIS bits? This seems odd. > > What is even more odd is why you seem to be using a software bit bang of the > I2C instead of using the internal MSSP I2C hardware. Your subject line says > you are using an 877 which has this and it is real easy to use. When searching for information on the 877, it seemed that I could only find software implementations of the I2C routines when the PIC would be acting as a master. For slave I found plenty of implementations using the built in hardware, but I could not find anything using hardware as a master. Could you perhaps point me in some direction? (I was using AN554 on Microchip's website is my main reference). Then I won't have to go through the uneccessary hell of coding this by hand - and re-coding it with TRIS registers now (since I have been doing that much wrong so far). > > And yes, you should be using pull up resistors on both the clock and data > line as your PIC should have both lines as "open collector" types. This is > done automatically by the MSSP hardware, but is why you need to use the TRIS > registers to set the bits to a 0 state when doing a bit bang implementation. > > -- > http://www.piclist.com hint: The PICList is archived three different > ways. See http://www.piclist.com/#archives for details. > ---------------------------------------- This mail sent through www.mywaterloo.ca -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.