W7500 flash read and write protection


Hi all,

I have a question regarding the W7500P IAP functionality. In the IAP example for the W7500 there is some functionality for erasing, reading and writing the flash, but I can’t find anything to protect the flash from reading and writing.

The reference manual chapter 9.3.1 states one can read protect the flash by writing the CRL bit in the FLOCKR0 register. But I can’t find which bit the CRL bit is?

According to [url]W7500 flash memory interface registers] it is even not possible to control the flash without the IAP…

So my question is, how can i protect flash from reading and writing?


hello, robalflex

the FLOCKR0 is on table 6, description on flash memory in 9.2.1.

the address is 0x4100 5014 and size is 4 bytes.

thank you


Hello Lawrence,

I know the FLOCKR0 register is located at address 0x4100 5014, but my question is: which bit in this register is the CRL bit? And is this bit responsible for the read protection, or is there another way to read/write protect the chip?


hello, robalflex

sorry about datasheet including no info. of FLOCKR0.

WIZnet will update soon.

CRL is FLOCKR0[31] and it is active low.

FLOCKR0 is R=W. you can read the bit changing after writing the bit as ‘0’.

Thank you


Hello Lawrence,

Thanks for your response.

I tried writing bit 31 of the FLOCKR0 register to ‘0’ and to ‘1’, but it’s not working. The FLOCKR0 register always reads back as 0x00000000.

Maybe it is necessary to set other registers first? Can you describe the exact procedure to follow to read-protect the main flash?


hello, robalflex

I miss another bit for read protection…

for read protection active, user need to set DRL and CRL in FLOCKR0.

CRL is FLOCKR0[31]

DRL is FLOCKR0[3:2]

DRL0 is FLOCKR0[3] and it is for Data0 area.

DRL1 is FLOCKR0[2] and it is for Data1 area.

These are what reference document guides…

There is no example yet… but hopefully it will be prepared soon.

thank you


Hello Robalflex. Did you find how to protect main flash?



I’d like to share useful information about locking and/or unlocking W7500 flash memory via ISP.

I wrote a python module for ISP communication with W7500§
And above blog post is a guide for how to use it.

I expect it would be helpful for you.

Thank you.