<EDIT>
I'm happy to say that I found my own error and fixed it!! I had forgotten the "Begin Programming Only" step in my sequence below. Now I am able to read the address bits that I programmed
!
</EDIT>
Ah, I see. Thanks for the quick lesson. So I have to make sure my program holds the parallel port pin at low during a read.
Ok, so I've run my program now with this consideration and I'm not getting an expected response. My test program attempts to write 14 bits of code to address 0x0000 and then read it back. I'm still trying to debug this, but I'd appreciate it if someone could just give me a sanity check for now.
My program does this (after resetting and going into program mode):
Begin Erase
End Programming
Load Data For Program Memory
Burn data (sixteen 0's and 1's)
End Programming
Read Data From Program Memory
Read data (cycle clock 16 times and record input pin)
I attached LED's to the relevent pins and inserted huge delays so I could physically watch the cycles. I recorded the LED blinks as I saw them and got this:
000100 111010 010000 0_ _ _ _ _ _ _ _ _ _ _ _ _ _ 0 111010 001000 0111111111111111
I put underscores for my burning input because it didn't matter what those values were. The ouput was
always all 1's at the end.
I just want to make sure that there's nothing silly I'm doing wrong before I move on. Thank you!