how to interface 8255 IC with 8051 microcontroller.
Note that the 8255 is obsolete, and has been obsolete for many years. Why not just choose an 8051 derivative with on-baord flash, and sufficient IO that you don't need an 8255...? http://www.keil.com/dd/parm_search.asp
"how to interface 8255 IC with 8051 microcontroller." The same way you'd interface anything to any processor: 1. Read the datasheet for the 8255 This will tell you what signals you must provide to the 8255, and the timing requirements for them. Here you may meet your first problem: where will you find the datasheet for an obsolete device? You might find a datasheet somewhere, but how can you be sure that it precisely mathches the actual chip that you have in your hand? 2. Read the Application Notes & other design support information on the manufacturer's website Again, this could be tricky. The so-called "after market" suppliers are in business to supply obsolete parts to existing users - they probably do not have the resources to support designing obsolete parts into new systems! 3. Implement it! You should now have sufficient information to enable you to proceed.
Here you may meet your first problem: where will you find the datasheet for an obsolete device? You might find a datasheet somewhere, but how can you be sure that it precisely mathches the actual chip<>/b> that you have in your hand? One of the problems with this antique is that there is no such thing as an 8255. Every version (manufacturer/letters in addition to 8255) will have subtle differences from the other. Are you making something from a book by an author that is too lazy to update to current technology? or are you in school being taught by an instructor that is too lazy to update to current technology? Erik
Note that the 8255 is obsolete, and has been obsolete for many years. You could in all fairness say the same thing about the 8051. But then, you don't always need the latest technology to solve a problem. I agree that a newer 8051 derivative with extended interrupt support would seem to be a better solution to the problem, though. A board with fewer chips is generally cheaper, lower power, more reliable, and easier to debug.
"Note that the 8255 is obsolete, and has been obsolete for many years." "You could in all fairness say the same thing about the 8051." Yes, the actual Intel 8051 chip itself is obsolete; but the 8051 architecture is most certainly alive and well, with many current derivates, and new products being introduced all the time.
"Are you making something from a book by an author that is too lazy to update to current technology?" it might not be the book Author's fault - maybe the OP has just found an old book in the library, or a second-hand bookshop, or a skip, or something... "or are you in school being taught by an instructor that is too lazy to update to current technology?" If this is purely a (school) exercise in interfacing something to an 8051 (or derivative), then it's probably perfectly worthwhile for the purpose of the exercise. In this case, the school would presumably provide the necessary materials (datasheets, etc) as handouts, in textbooks, or whatever. This would seem like a perfectly valid exercise in reading a datasheet & implementing its requirements - just so long as the students understand that it is not an illustration of current practice!