I'm designing a circuit that uses the combined Program/Data bus from Intel MSC-51 as advantage.

By the MCS-51 specification it has an internal 4K ROM and a EA/VPP pin that if set to high will access this 4K internal ROM and if set to low will access any external ROM (using PORT0 and PORT2) and i want to change this value by software connecting this pin to PORT1.0 for instance.

I cant find any reference on datasheet to check how is the behaviour of the EA/VPP pin and if its specific to the MCU design or is default for every MCS-51 MCU.

  • \$\begingroup\$ There's a decent overview here. The EA pin is even on the 8031/32 chip, which by definition doesn't include any internal ROM so the EA pin must be grounded. The pin is still there. But companies are allowed to do other things. So take a close look at SiLabs (they bought up Cygnal many years ago) 8051 core devices and check. Also check with Atmel (now owned by Microchip) -- their AT89 series I think -- and Dallas Semiconductor. If someone felt dumping a pin for more function buys them customers, they'd do it. \$\endgroup\$ – jonk Apr 14 '19 at 1:06
  • \$\begingroup\$ @jonk, Thanks. The 8031 family is a ROMless version of the 8051, so the EA pin must be grounded since there are no internal ROM. For the 8051 family the EA pin is used to access the internal ROM, if grounded the 8051 will act like a 8031. What most manufactures dont declare is how this pin works, for instance, if its a boot only feature or can be changed on the fly \$\endgroup\$ – h0m3 Apr 14 '19 at 1:11
  • 1
    \$\begingroup\$ Yes. I think that's what I wrote. I just cannot tell you if every single manufacturer of every single 8051 core-similar device includes the pin on every IC they produce. I think so. Probably so. But I'm not sure. I haven't seen all of them. (By the way, I have 100 Intel 80C32 DIP chips in a box here. Perfect shape -- but original manufacture from the early 1980's. And some tubes of the Atmel AT89 devices from years back.) Toggling the pin in software seems to be something I'd want to think about, though. But I've seen some crazy stuff done with the 8080/8085 memory systems. \$\endgroup\$ – jonk Apr 14 '19 at 1:14
  • \$\begingroup\$ @jonk Yeah. But fortunally i'll be limited to MCUs who have the EA pin and have the 4K ROM. Correct me if im wrong but for 8051 IP Intel specify a EA pin and for 8031 its optional. But every manufacture does some small changes for their specific MCU line. \$\endgroup\$ – h0m3 Apr 14 '19 at 1:18
  • 1
    \$\begingroup\$ So far as I'm aware (going on memory that is 35 years dated) the 8031 must have the EA pin grounded. I could be wrong. \$\endgroup\$ – jonk Apr 14 '19 at 2:08

It depends.

Many years ago I wrote a small program to read the contents of the internal ROM by using the EA pin. The EA pin was driven inverted from a port pin, so that the external ROM was active after reset. It worked well for a mouse's microcontroller. But unfortunately I don't remember the manufacturer or the exact type.

But it didn't work with another 8051 derivative whose type I also don't remember. :-( Its data sheet had a note that the level at EA was read on reset and stored, but I read it only afterwards.

Anyway, it depends. You have to try.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.