We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi I want to connect many devices like Serial EEPROM, ADC,DAC,RTC and many other I/O devices to 8051.
My question is how address mapping can be done ? How to address them??
Please reply i am in need.
do not even think of bit-banging.
Oh, pfffft. Where's your sense of adventure?
Next you'll be suggesting that he abondon the '51 altogether and opt for an embedded Windows CE system and where .NET can solve all problems. ;)
Bit-banging is quite ok for a master, but pure hell for a slave.
Shockingly, I'll agree with erik, even though I have a project with bit-banged I2C.
If you know at design time that I2C is important to your system, and you have a bunch of devices to run, why would you not select a part that has a built-in I2C port? Pick the right hardware for the job.
It's not that hard to bit-bang, but it's just not necessary. Save the effort for all the other problems your project will run into.
If you don't have the luxury of choosing the micro... banging it is.
(Incidentally, we had trouble pushing 100 kbps using a 62.5MHz 4-clock core (but non-standard I/O ports). So I also agree that it's only going to work well if you're the master and can control the I2C clock, unless your 8051 is really screaming along.)
Oh, pfffft. Where's your sense of adventure? my "sense of adventure" went away the day, long ago, when somone told me that code designed to be reliable is better than tested code.
Oh, yes, I bit-banged IIC in the olden days, before the chipmakers made it obsolete, but would not even dream of doing so today.
Next you'll be suggesting that he abondon the '51 altogether and opt for an embedded Windows CE system and where .NET can solve all problems. ;) chips with HW IIC (which can be had for less than $1) are not made by Microsoft.
There is a huge difference between taking advantage of hardware that makes your thingy smarter/better/faster and implementing something in the belief that a '51 can be a universal solution to everything.
Erik
If you need 8 I2C (IIC) Buses that leaves Bit-Banging, or muxing. Yes, this is the exception not the rule.