Read and write Flash EPROM W25Q128JV and IS25LQ016

Hello,
I need to develop an application to read and write memory contents in BIN files.
I want to make an application with the PICAXE-28X2 Module reference AXE201.
I want to connect the flash memory W25Q128JV and IS25LQ016 to the picaxe module and then read the contents
of the memory in a BIN file, change the values and write the new values in the memory again.
My questions are as follows:
Can this Picaxe module communicate with these type of memory?
According to what I checked, i can comunicate via I2c, is this the best way?
What is the best way to copy the contents of the memory and record new contents in the memory?
The values to be recorded and written are the total contents of the memory.
Can you help with some ideas?

Link for datasheets:

Best Regards
Manuel
 

hippy

Technical Support
Staff member
It appears both W25Q128JV and IS25LQ016 are SPI devices rather than I2C but they should both be readable and writeable using any PICAXE.

The main problem is these are 16 megabit / 2 megabyte devices and the PICAXE isn't suited to handling large amounts of data.

How usable a PICAXE would be with these devices will depend on exactly what you need to do with the data in the memory chips. If using them for data-logging it should be possible to do that. Editing blocks of data should be possible with a PICAXE. Reading what they hold and passing that data to a PC, as well as writing from a PC will also be possible but there may be speed limitations.

If you can detail exactly what you need to do, what the 'big picture' is, what you are hoping to achieve, it will be easier to give more specific advice.
 
Hello Hippy.
Thanks for the answer.
These memories are part of a device that needs to change some values in the memories, with some frequency (twice a year)
My initial idea would be to copy all the contents of the memorys to a BIN file, make the necessary changes and re-record with the new values in the respective memorys, but this will be a lot of work, because access to the memorys is difficult and obligatory to practically dismantle all the equipment.
What I thought was:
Making only the changes directly in the memories, in this case through the micro Picaxe, I could create a routine to change only the necessary values, because they are always the same, without having to copy all the values and save all the values again.
It would be mounted in the first intervention, in parallel with the hardware with the picaxe, whenever the intervention was necessary, it would be enough to turn off the equipment and start the application of the picaxe so that the values in the respective memories could be changed.
Thus, it would be exempt from dismantling all the equipment to make changes to the memories. I hope it was clear, as to my objective. But I am available for any other information you may need.
Regards
Manuel
 

lbenson

Senior Member
part of a device that needs to change some values in the memories, with some frequency (twice a year)
If only twice a year, why not go the easy way and use the internal PICAXE eeprom? Or if there would be too many values, an external I2C EEPROM like the 24C32 or the one-wire part DS28EC20 suitable on the X2 parts with the one-wire commands.
 

hippy

Technical Support
Staff member
If only twice a year, why not go the easy way and use the internal PICAXE eeprom?
I am guessing it's because these memories are embedded in a third-party product which is expecting those values to be there and not anywhere else.

One example of this might be a product which has a user name and password for one network used for half a year, requires different ones for another network the same kit is used with for the other half, with no means of changing them provided.

Making only the changes directly in the memories, in this case through the micro Picaxe, I could create a routine to change only the necessary values, because they are always the same, without having to copy all the values and save all the values again.
That could be possible. It would depend on whether the PICAXE can access the memory fitted when the main unit is powered down or held in reset.

One can connect the PICAXE to the same pins the main controller uses but that won't do any good if the main controller or circuit prevents the PICAXE from reading and writing the data.

It's hard to say if it will or won't work for whatever you have. The first thing to do would be discover what the circuit is from a schematic or by reverse engineering.
 
If only twice a year, why not go the easy way and use the internal PICAXE eeprom? Or if there would be too many values, an external I2C EEPROM like the 24C32 or the one-wire part DS28EC20 suitable on the X2 parts with the one-wire commands.
Hello lbenson.
Thank you for your contribution.
I must remember that the memorys cannot be changed, they must be W25Q128JV and IS25LQ016, this cannot be modified.
In other words, I am restricted to these 2 memorys that are in the equipment. I want to set up a circuit in parallel to change the internal values of these 2 memorys.
Thanks
 
Top