1604Views59Replies

Author Options:

AT28C64B Answered

i am really having a big problem with that EEPROM AT28C64B how i can load the data from this IC ? .. i am not sure if i programmed it right ? .. i tried to connect the output to LEDS but none of them worked .. can someone explain how to write into the data ?! .. and the important thing how to read the data i wrote ?! .. how to use them ? .. thanks in advance

Tags:memory

50 Replies

user
steveastroukBest Answer (author)2013-06-18

Is there any particular reason to use a parallel addressed EEPROM, and not a serially addressed EEPROM ?

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-18

yea listen .. im a student in faculty of engineering .. my project is to make propeller clock with logic gates without control like AVR or arduino .. i know it is stupid thing but it is just a challenge in our department .. so my idea was to use that parallel memory to store the data i want to display ! .. and to use a counter to count the addresses automatically and i will adjust the clock of the counter with the speed of the motor .. and if i want to shift the words i want to display, i can enter the data shifted into the memory .. so i was searching for a ROM memory i can store data 0 and 1 and i can load the data when the counter do its work ! so it loads 8 bit of data >> those 8 bits i will use to turn on or off the LEDS i want, to make the propeller display

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-18

Right, now I understand your design parameters. You can use an EEPROM, or even a FLASH memory to do this. Take a look at the data sheet for the device - it won't drive an LED directly, you need to add some buffering to the output.

What package are you using ? Your pinout in your diagram is for the TSOP package - surely you're actually using a DIP ?

Select as Best AnswerUndo Best Answer

user
BeauH3 (author)steveastrouk2016-07-09

I am also using the AT28C64B, I need V+ or Ground for 1 and 0 because I will be using this as a control matrix for a TTL CPU I am building. Instead of V+ or Ground, it will do a voltage difference instead of Ground or V+. I need it to control the I/O of devices talking to the bus. Can the buffers solve my problem. If not, what can I do, I already tried resistors, 100k to be specific, but it did not do much, please help me!

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-18

also im not sure if i should always connect the output enable to GND always and chip enable to GND always ? i asked ATMEL techincal support and they said

"The only way to tell if your firmware impliments the datasheet required
parallel protocol is by study of all signals with a logic analyzer. Please
send logic analyzer captures of the write and read protocol."

is there any other " easy " ROM without that read and write protocols ?! .. or when i add some buffering to the output it will work ?!

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-18

First of all, correct the wiring to the pinout of the DIP version of the device. If your programmer verifies the EEPROM data in accordance with your design, the rest can be done simply. On the FALLING edge of /OE, the data selected by your address will be presented on the data pins. When its read, the line should be driven high again.

Have you got access to a logic analyser ?

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-18

well no .. and i have got no access to the programmer too right now .. but i can get access to them in the faculty tomorrow ... can u explain more ? what is wrong the wiring ? .... is there any simple way better than EEPROM to store data and use them to drive LEDS just like registers but holds alot of data as i still dont have that much time ... the programmer reads the data i entered by the way i explained u in the photo .. so there is a data in the EEPROM as i entered by changing FF

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-18

Check the pinout ! You've drawn the pins of the TSOP package, when you have the DIP.
I think the EEPROM's a good way to do it, though you could do it with multiplexers too.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-18

it is DIP .. and the drawn here is DIP package .. i use eagle software it didnot have that kind of memory so i made a library for it .. i dont know what is wrong with my connection ? u r saying that the OE should go high after low ? that means i shouldnot connect it to GND .. and i should put buffers on the output ?! ... if i used multiplexers the board will be huge and i want to display alot of things .. i find it kinda complicated to use that EEPROM ! i dont know why .

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-18

It is NOT DIP in your DRAWING. EG DIP Pin 28 = Vcc, pin 27 = /WE YOU HAVE Pin 28=A10 and Pin 27 = /CE.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-18

omg sry .. !!! ... it is stupid mistake cause of my colleagues sharing my project .. do u think it will work if i reconnected it ? i mean the OE is still connected to GND

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-18

I'm more worried about Vcc on pin 28 than the enables !!! YOu have GROUNDED the supply pin. That's why I want you to verify the device is still OK in your programmer tomorrow.

FIRST RULE OF CIRCUIT CHECKING. Leave your assumptions at the door.....

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-19

i programmed another one and connected it right ... but LEDS didnot turn on again

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-19

Did you buffer the LEDs like I said ?

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-19

no i didnot try to buffer them ! .. what does it mean strobe ? ...

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-20

Strobe means pulse.
Set up address. On the FALLING EDGE of OE, the data becomes valid. AFTER OE goes high, the logic resets for the next address.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-22

thank you very much !!!!! ... it worked ! ... can i ask anothe question ?! .. i programmed my memory to write a word ! .. do u have any ideas to make these word move ? >> moving text ? .. i want to make 2 lines ! and the word beings from the 1st line and keeps moving to end within the 2nd line ! >> those lines ( led lines ) like that .. i mean i want to shift my data !

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-23

All you need is an address counter. If you're really clever, you program certain ranges of address with certain messages, and you can switch between them

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-23

yea i am using a counter .. mmmm .. do u have any experience with bq4802 >> paralllel RTC ! .. im thinking to use it as long as it doesnot use I2C protocol

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-23

Forget it for now. Concentrate on the sequencing next. Trying to read the BQ4802 into memory is too hard for your current skill set.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-23

i know how to connect it .. just not sure about how to programm it or what to programm !

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-23

You aren't programming anything: that would be easy. You have to work out how to make a state machine to sequence the memory.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-24

i finished the sequencing ! .. now im thinking to use that RTC .. i will use IR remote control 1 button for sequencing text or normal text and the other for the clock ! ... the remote is easy thing .. but do u recommend any tutorial before using RTC ?.. or u can tell me how to sequence the memory ? .. i mean im not using any micro processor ! but in the data sheet pins like RST WDO INT OE WE these should go to my memory ? .. and Vout CE out to external ram memory ?

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-24

The BQ4802 is NOT the part you want to use, its designed specifically for processor systems.

If you HAVE to use an RTC chip, the DP8537 is a better choice, but you have to SET the RTC, as well as read it.

You might be better building an RTC in logic, from counter/timer parts than buying in the function.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-24

im ordering it from uk-rs online .. it is discontinued product .. any other options u recommend ?

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-24

Just look for RTCs with proper parallel interfaces. I suspect these days you may struggle.

Is there any reason why you can't type the word "you" on your keyboard ? Writing "u" looks like you're about 12 years old, and not serious about this.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-24

aha .. no there isnot any reason to write " u " instead of "you" .. is there any reason why (you) prefer you instead of " u " .. seems that you are too old emmm ? :D .. I am 18 years old mate :) .. RTC-7301DG i found this and in stock

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-25

Yes, talking in text speak is not the way to be treated seriously. Drop it in the wrong place as a working engineer is not the way to get on. If you applied to me for a job with text speak, I, like many, will bin it.

We don't charge for extra letters on here. Text speak is the result of the old limit on characters in a text, and the speed you can type them.

I'm not "too old", I choose to communicate clearly.

I think using the RTC is too hard for your skill set. You are going to have to create the setting interface too. The chip's fine.

Lead me through how you're going to sequence data in and out of it ?

Are you allowed FPGAs or PLDs to do this ?

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-25

well I am still learning .. yea i think we are allowed as long as we dont use AVR s chip or arduino but i also dont have any experience with them but i can try ! .. I am still thinking how to sequence data in and out of it ? .. I know it might be hard for me but I want to try to improve my skills .. thanks for your advice about text speak ! :)

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-25

What you need to explore next are "state machines"

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-25

ok i am exploring it nw .. do you think i have any chance to make it work in 5 - 7 days .. i think i will be able to write into it .. just need to write its datasheet again .. RD and WR in this image ? should stand for OE and WE if im using my memory right ?

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-25

Are you imagining that all you do is fasten the memory and the clock together?

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-25

i know i will need to set the clock first

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-25

First you have to master WRITING to EEPROM. That means
1.) Set RTC address
2.) Drop RTC /CS and then /RD
3.) Read RTC into data latch.
4.) Raise RTC /RD, raise /CS
5.) Drop EEPROM /CS
6.) Set EEPROM address.
7.) Set EEPROM /OE high.
8.) Drop EEPROM /WE
9.) Assert EEPROM /WE - write cycle initiated.
10.) Drop /OE, copy data to latch 2. Raise /OE
12.) XOR latch2 with latch1. if its 0xFF, the write cycle is continuing
13.) Loop 10-13 until its not 0xFF
14.) INC RTC address

That;'s read the RTC into the EEPROM. What it HASN'T done is converted that into characters in your video mapping. You need to implement a lookup table in the memory to do that.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-29

u mean by drop >> setting them low and raise setting them high ? .. and INC = ?

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-29

thank you ! :) ... if im using 4 memories .. each memory for a specific display .. i want to use a remote control .. which one should i use ? .. do u recommend any circuit to build it ? or ? .. i want to control the CE of the 4 memories >> if i press the 1st button >>> 0 will turn on the 1st memory and the other are off ( 1 to CE ) .. 2nd button >> 0 will turn on the 2nd memory and the other are off and so on

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-29

Buy in the remote. Take a look on Ebay. That will determine what you do for the memory control.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-29

there are alot of kinds ? .. Infra red or RF remotes .. i want something simple

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-29

Hard to say. Go for cheapest ?

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-25

well yea .. first i was thinking to use I2C RTC and interfacing I2C to logic but i found that will be hard ! .. so after i found parallel memory and parallel RTC yea .. that will need interfacing too right ?

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-25

Are you imagining that all you do is fasten the memory and the clock together?

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-24

so i have to set the RTC and read it and it will work with that kind of memory right ?

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-25

Yes, if you have something which can do the transfer for you, in your logic.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-24

mmm .. more ICS wider board >> need motor with good torque .. also i will have to think how to build it from counter and timers .. u mean dp8573 right ?

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-24

You'll need barely any torque. The design should be balanced, or it will shake itself to bits.

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-23

Consider too how are you going to control the stepping of the sequence.

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-19

Look at the timing diagram, You HAVE to strobe OE to make the data appear.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-18

as u said falling edge ? so i can do this with push button pull up resistance and when i click on the push button there will be rising edge so i can put not gate .. but about the buffer ? ... ah and if i read the data in it as i put that means it is working right ?

Select as Best AnswerUndo Best Answer

user
steveastrouk (author)mac002013-06-19

Are you using an oscilloscope, at the very least, or better, a logic analyser.

You START with the timing diagram for the part you have selected. You look at what you have to do with the control lines CE and OE and WHEN you have to use them.

From the datasheet ONLY after the falling edge of OE and CE does data become valid on the outputs.

Without buffers, you WILL damage the memory chip - try 74HCT245 devices as buffers.

Select as Best AnswerUndo Best Answer

user
mac00 (author)steveastrouk2013-06-18

im really very grateful for ur help !!

Select as Best AnswerUndo Best Answer