Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

parallel flash memory ST39SF010A

Status
Not open for further replies.
I do not understand what that means? Why do two addresses?

This means that:

Flash_Write(0x5555, toWrite)
Flash_Write(0xAAA2, toWrite)
 
To write to flash memory you need a byte sequence, its to stop inadvertent writing ( corruption )... You need to sent AAH and 55H to initiate the internal circuitry so you can write to it..

Some flash memories are different... some you can disable this security... Unfortunately this chip has hardware and software security....
 
The sad thing highlighted to myself in this thread is that you are so close to writing an assembler file to do exactly what you want, but is further confused by some form of intermediate language like Visual Basic. Don't they teach anyone assembler at college anymore?

Yes you have to move the CE, RD and WR lines manually, it can take time to get it correct, maybe cumbersome but it's highly effective, fast and MAKES you understand what's going on at the interface. It also makes you a far better programmer for the future and less reliant on someone elses routines that may have bugs in them....but that's another thread entirely.
 
There is no command!!!! you have to address parallel memory... First you set the address lines.. Then put the data on the data bus ( in this case portc ) then you manipulate the control bus ( WE, OE and CE )

The trouble is YOU HAVE A FIXED ADDRESS BUS.... You can only read and write to ONE location... If you want to use this flash memory you will need to control the address bus as well.

Assume you place the address bus on PORTB and PORTA... Then you need to send 0x5555h on the address bus... Place 0x55 on PORTC manipulate the control.. then do the same for the next three operations.... Its not as easy as " write (PORTC) " The 8051 systems are better equipped for parallel memory...
 
Status
Not open for further replies.

New Articles From Microcontroller Tips

Back
Top