Skip to content

Commit 94a4c5a

Browse files
committed
Updates after testing.
1 parent de695dc commit 94a4c5a

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@ Each chip should have a 0.1 uF decoupling capacitor connected between Vcc and GN
7070

7171
When using a 74LVC245 or other transceiver, the library assumes that the A side of the 74LVC245 is connected to the EEPROM data lines, and the B side is connected to the microcontroller.
7272

73+
In order to support both 28C256 and 28C16, the programming hardware needs to account for slightly different pinouts between the chips. In particular, the 28C256/X28256 has 28 pins and the 28C16 has 24. Pin 26 is an address pin on the 28C256/X28256, which corresponds to Vcc pin 24 on the 28C16. The programming hardware therefore has a jumper at pin 26/24 so that A13 can be selected when using a 28 pin device, and Vcc can be selected when using a 24 pin device.
74+
7375
In other words, connect as follows:
7476
```
7577
EEPROM Pin 74LVC245 Pin Chip Signal Name

src/ParallelEEPROM.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,8 @@ void ParallelEEPROM::begin() {
182182
void ParallelEEPROM::write(uint16_t address, byte data) {
183183
int i;
184184

185+
_lastAddressWritten = address;
186+
_lastByteWritten = data;
185187
setAddressLines(address);
186188
setDataOutputMode();
187189
if (_LVC245_DIR != NO_PIN) digitalWrite(_LVC245_DIR, LOW);
@@ -202,8 +204,6 @@ void ParallelEEPROM::write(uint16_t address, byte data) {
202204
// No delay needed, data already read above
203205
if (_LVC245_OE != NO_PIN) digitalWrite(_LVC245_OE, HIGH);
204206
setDataInputMode();
205-
_lastAddressWritten = address;
206-
_lastByteWritten = data;
207207
}
208208

209209
// This method uses Data Polling to check if prevous write

0 commit comments

Comments
 (0)