2024-01-01 11:18 PM - edited 2024-01-01 11:19 PM
Hi, ı have a question about flash size difference between STM32F107RB nd STM32F107RC. Documentation says that stm32f107rb has 128kb flash memory and stm32f107rc has 256kb flash memory size. DOCUMENT NUMBER:PM0075 says that STM23F107 are connectivity line mcu and it has 128 page with 2kb memory on page number 9 of document. When ı calculate, it makes 256kb with 128 page with 2kb.
I am using STM32F107RB and ı tried to write to last page which is page 127 starts from 0x0803F800. I have succesfully write and read something from this address without any problem. But how can it be possible? Stm32f107rb has 128kb memory there should be maximum 64page with 2kb page size. There should be something, could you please help me about this issue ?
If stm32f107rb has 128kb flash memory, how can it be possible to write and read from 128.page which is 2kb flash memory ? there should not be any page after 64.page for stm32f107rb ?
Solved! Go to Solution.
2024-01-02 02:17 AM
No, this is not a bug, but an untested, non-guaranteed function, which has already been discussed several times here, e.g. there.
Regards
/Peter
2024-01-01 11:30 PM
They share a common die but only half has been tested.
2024-01-01 11:32 PM
Thanks for reply, so we can say that it is a bug. Because ı should not write into that address. Maybe it worked for this mcu but it will not work other f107rb ? can we say this ?
2024-01-02 02:17 AM
No, this is not a bug, but an untested, non-guaranteed function, which has already been discussed several times here, e.g. there.
Regards
/Peter
2024-01-02 02:46 AM
Dear PETER;
Thank you so much for your reply. I think the best solution will be using a page between 1-64 for stm32f107RB. As ı understand, using last page will not work for all chip since it is non-guaranteed and unsafe.
Regards;
/Gürkan TOPKARA
2024-01-02 03:50 AM
There should be a FLASH size value burned into the device at final test as a 16-bit word.
2024-01-02 03:54 AM
Yes, this is what you mentionet probably. 0x1ffff7e0 adress contains 0x80 value which says 128 in decimal. Is that what you mean ?
Altough, ı wrote data into 0x0803f800 and read it correctly. As we discussed above, ı have turned to use page 64 for make it guarantee.
Thx for reply;
Regards.
2024-01-02 09:19 AM
Yes, as I said memory present on the die, not final tested to save time/money, and the usable/tested about written as a uint16_t word into system memory.
The valid page range 0-63 for 128KB device, not 64
2024-01-02 10:15 PM
Dear Tesla;
Thank you so much for your reply. I got the point clearly.
Best Regards;
/Gürkan TOPKARA