I2C Interface

Hi, i want to use i2c interface to expand the i/o ports in my arduino uno.
I heard about the library 'wire.h' but i can't use it because i need to write my own code without use any library (this is the requirements of the project).
Does it difficult to do it? or it similar like any other microcontroller? such as 8051

Does it difficult to do it?

That depends entirely on your skills and your understanding of the hardware and the processor data sheet.

And don't crosspost anymore:
http://forum.arduino.cc/index.php?topic=365160.msg2516796#msg2516796

jremington:
That depends entirely on your skills and your understanding of the hardware and the processor data sheet.

My question is if it more difficult to do it compared to 8051 for example

Delta_G:
Depends on what part you find difficult. Have you looked at the datasheet (I gave you a link) yet? It should answer most of your questions.

The problem is that i'm begginer on arduino, i know how to implement i2c in 8051..does it similar?

Probably similar to any other uC with hardware i2c support - poke some registers, wait until it's done and check the appropriate registers to see if it succeeded or what data it got back. See datasheet for specifics for a given chip.

Or open up the library and copy-paste the relevant functions into your own sketch.

Forbidding #include is a silly requirement but not the most stupid one I've seen here.