- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
I learned S25FS512S on I.MXrt1060 platform, i.mxrt1060 used Flexspi controller to operate external nor flash, but I don't know if the value of S25FS512S register changed when using FlexSpi controller to program S25FS512S; I want to know how to send commands to change the value of S25FS512S register;
I would appreciate it if you could provide examples.
Solved! Go to Solution.
- Labels:
-
Parallel NOR
-
Part Number Query
-
Serial NOR
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Ding,
Thank you for contacting Cypress Semiconductor.
- We are not aware about the functioning of I.MXrt1060 platform, hence we cannot comment on FlexSPI controller.
- I would like to inform you that CR3V[3] bit is a Volatile read only bit. Which means this bit shall not be written to a value different than the value of CR3NV[3]. The value of CR3V[3] may only be changed by writing CR3NV[3].
- I would also like to inform you that CR3NV[3] bit is an OTP (one time programmable) bit with default value 0 (4 KB Erase enabled), which means it can be programmed to 1 (4 KB Erase disabled) only once in the entire lifetime of the chip. It cannot be programmed to 0 again.
WRAR (71h) command is used to program CR3NV register. The steps that should be followed for writing to CR3NV[3] bit is as follows -
- Make CS LOW.
- Send WREN(06h) command.
- Make CS HIGH.
- Make CS LOW.
- Send WRAR(71h) command.
- Send the address of CR3NV register (0x00000004)
- Send the data to be programmed to CR3NV.
- Make CS HIGH.
- Make CS LOW.
- Read status register to check value of WIP bit.
- Make CS HIGH.
- Keep polling the WIP bit till the value becomes zero, which means successful completion of write operation.
I am attaching our low level driver for serial flash devices with this response. You can use it in your code for easy implementation of the above code.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Ding,
Thank you for contacting Cypress Semiconductor.
- We are not aware about the functioning of I.MXrt1060 platform, hence we cannot comment on FlexSPI controller.
- I would like to inform you that CR3V[3] bit is a Volatile read only bit. Which means this bit shall not be written to a value different than the value of CR3NV[3]. The value of CR3V[3] may only be changed by writing CR3NV[3].
- I would also like to inform you that CR3NV[3] bit is an OTP (one time programmable) bit with default value 0 (4 KB Erase enabled), which means it can be programmed to 1 (4 KB Erase disabled) only once in the entire lifetime of the chip. It cannot be programmed to 0 again.
WRAR (71h) command is used to program CR3NV register. The steps that should be followed for writing to CR3NV[3] bit is as follows -
- Make CS LOW.
- Send WREN(06h) command.
- Make CS HIGH.
- Make CS LOW.
- Send WRAR(71h) command.
- Send the address of CR3NV register (0x00000004)
- Send the data to be programmed to CR3NV.
- Make CS HIGH.
- Make CS LOW.
- Read status register to check value of WIP bit.
- Make CS HIGH.
- Keep polling the WIP bit till the value becomes zero, which means successful completion of write operation.
I am attaching our low level driver for serial flash devices with this response. You can use it in your code for easy implementation of the above code.