0
\$\begingroup\$

I am working with a 25LC640A EEPROM, which is having active low control Pins like CS,Hold,wp (Write Protect). I have Connected Pull up Resistor for CS only alone. Its working fine. Please refer the Circuit.

enter image description here

As per the application notes which is from microchip, they are advised to connect Pull-up resistor for all active low pins. enter image description here

My Doubt: What is the necessity of Pull up resistor in active low pin where as it can directly connected to vfc . If it is not connected what will be the impact on EEPROM performance?

\$\endgroup\$
  • 1
    \$\begingroup\$ Pulling up write protect is considered a best practice to make sure that the EEPROM does not accidentally get erased. Following suggestions of the datasheet is also a best practice, but you can do as you wish. \$\endgroup\$ – mkeith Jul 3 '17 at 6:54
  • \$\begingroup\$ @mkeith.. at which condition eeprom values get erased ?? What might be the cause ? \$\endgroup\$ – Photon001 Jul 3 '17 at 8:13
  • \$\begingroup\$ Actually, now that I think about it, WP is active low, so pulling it up does not help prevent erasing anyway. There could be other reasons. Having to do with the state machine inside the EEPROM. It could maybe get out of sync with the master. But I am just guessing. \$\endgroup\$ – mkeith Jul 3 '17 at 8:43
1
\$\begingroup\$

If I understand correctly, you ask why should we use a pull-up (or pull-down) instead of directly connecting the pin to the power supply (or GND).

Well, the thing is, if the pin you want to pull-up is not used by any other active circuit, you can do both. Either use a resistor or directly connect to the power supply.

This seems to be the case in your application. You just connect HOLD and WP pins to 5V and you don't want to drive them otherwise. So what you have done is correct, not necessary to use resistors.

But imagine what happens if you wanted your MCU to drive these signals, as it shown in the application note of Microchip. If you had connected these pins directly to 5V, as you did, when the MCU would need to drive them LOW there would be a short circuit, which is obviously not good! If you had the pull-ups instead, as it is advised, when the MCU would drive the pins LOW there would be no short circuit, only some current flowing from the 5V through the pull-up to ground.

And then, why need pull-up anyway? Well, that is to have a well defined state on these pins, even when the MCU has not yet booted (at startup) and its pins are most probably floating. This helps avoiding accidentally driving these pins to LOW during this time.

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ @Mkeith says, there might be possibility to eeprom values getting erased while connecting without pull up.. is it so? \$\endgroup\$ – Photon001 Jul 3 '17 at 12:06
  • \$\begingroup\$ @Raj But... he said on his next comment that he doesn't believe this is correct. He says he is just guessing. And I anyway disagree with him, having a pull-up or connecting the pin directly to the power supply doesn't make any difference in this direction. WP is in both cases protected against going LOW unintentionally. \$\endgroup\$ – nickagian Jul 3 '17 at 12:10
  • \$\begingroup\$ as per your point those pull up are required to avoid the floating when wp, hold connected to MCU. But in application notes those pins were not connected to MCU. So in that case why they are insisting to add pull up. \$\endgroup\$ – Photon001 Jul 3 '17 at 12:19
  • \$\begingroup\$ Inputs can never float. Any pins not connected to any driving source must have a pullup or pulldown (the choice depends on the function of the pin). \$\endgroup\$ – mkeith Jul 6 '17 at 4:21
0
\$\begingroup\$

Every pin connected with connector or other IC is prone of having undetermined state during some situations(Undetermined power sequencing or losing the contact on the connector). You want it to be determined and explicitly defined. Go ask yourself what will be the pin value immediately after power is being delivered.

Ok, since input impedance in case of internal pullup/pulldown is most often >100kR you may wondering why I need to put pull the pin at all. This answer covers that problem How do I calculate the required value for a pull-up resistor?

| improve this answer | |
\$\endgroup\$
  • \$\begingroup\$ But this doesn't explain what the OP asks, which is why use pull-up resistors instead of directly connecting the pin to the power supply rail. The state is determined and explicitly defined in both ways. \$\endgroup\$ – nickagian Jul 3 '17 at 8:52

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.