Why there is no EEPROM in STM32F4 MCUs












1












$begingroup$


I wonder why there is no EEPROM in STM32F4 series MCUs? Mostly I have Microchip MCUs are they have EEPROM available in them but I just found out that it is not available in the STM32F4 MCUs.. and it looks like not in other families as 'F0, F1, F2 and F3 also.



Is there any way around to save parameter values in the absense of an EEPROM?



Edited: to comply with forum rules










share|improve this question











$endgroup$








  • 2




    $begingroup$
    "What could be a good reason?" questions do not fit within the Stack Exchange mission, and "such an important memory area" is very application-determined. Looks like no EEPROM in the STM32L4's either, but the L0's and L1's have it. Or you can add an extra chip if you have a need for which emulation won't work.
    $endgroup$
    – Chris Stratton
    5 hours ago












  • $begingroup$
    Is it safe enough to use an emulated eeprom vs external eeprom chip?
    $endgroup$
    – scico111
    5 hours ago








  • 2




    $begingroup$
    That would be entirely application dependent. Since you've said nothing about what you are trying to do for a question which would have to consider the specifics in extreme detail, no one can help you.
    $endgroup$
    – Chris Stratton
    5 hours ago










  • $begingroup$
    The most likely explanation is that the application(s) for which the chip was initially developed did not require it. Remember, EVERY chip ever developed was designed for a specific large-volumne application, and only later added to the manufacturer's general catalog. The overhead of a new chip design is just too high to allow designing chips speculatively.
    $endgroup$
    – Dave Tweed
    4 hours ago










  • $begingroup$
    "such an important memory area" - important to who? I'm currently working on a project using an STM32F4 device and I would have no use whatsoever for a little bit of internal EEPROM. The extra cost it would add to the device would certainly make a difference though.
    $endgroup$
    – brhans
    4 hours ago
















1












$begingroup$


I wonder why there is no EEPROM in STM32F4 series MCUs? Mostly I have Microchip MCUs are they have EEPROM available in them but I just found out that it is not available in the STM32F4 MCUs.. and it looks like not in other families as 'F0, F1, F2 and F3 also.



Is there any way around to save parameter values in the absense of an EEPROM?



Edited: to comply with forum rules










share|improve this question











$endgroup$








  • 2




    $begingroup$
    "What could be a good reason?" questions do not fit within the Stack Exchange mission, and "such an important memory area" is very application-determined. Looks like no EEPROM in the STM32L4's either, but the L0's and L1's have it. Or you can add an extra chip if you have a need for which emulation won't work.
    $endgroup$
    – Chris Stratton
    5 hours ago












  • $begingroup$
    Is it safe enough to use an emulated eeprom vs external eeprom chip?
    $endgroup$
    – scico111
    5 hours ago








  • 2




    $begingroup$
    That would be entirely application dependent. Since you've said nothing about what you are trying to do for a question which would have to consider the specifics in extreme detail, no one can help you.
    $endgroup$
    – Chris Stratton
    5 hours ago










  • $begingroup$
    The most likely explanation is that the application(s) for which the chip was initially developed did not require it. Remember, EVERY chip ever developed was designed for a specific large-volumne application, and only later added to the manufacturer's general catalog. The overhead of a new chip design is just too high to allow designing chips speculatively.
    $endgroup$
    – Dave Tweed
    4 hours ago










  • $begingroup$
    "such an important memory area" - important to who? I'm currently working on a project using an STM32F4 device and I would have no use whatsoever for a little bit of internal EEPROM. The extra cost it would add to the device would certainly make a difference though.
    $endgroup$
    – brhans
    4 hours ago














1












1








1


1



$begingroup$


I wonder why there is no EEPROM in STM32F4 series MCUs? Mostly I have Microchip MCUs are they have EEPROM available in them but I just found out that it is not available in the STM32F4 MCUs.. and it looks like not in other families as 'F0, F1, F2 and F3 also.



Is there any way around to save parameter values in the absense of an EEPROM?



Edited: to comply with forum rules










share|improve this question











$endgroup$




I wonder why there is no EEPROM in STM32F4 series MCUs? Mostly I have Microchip MCUs are they have EEPROM available in them but I just found out that it is not available in the STM32F4 MCUs.. and it looks like not in other families as 'F0, F1, F2 and F3 also.



Is there any way around to save parameter values in the absense of an EEPROM?



Edited: to comply with forum rules







microcontroller stm32 stm32f4 eeprom non-volatile-memory






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 2 hours ago







scico111

















asked 5 hours ago









scico111scico111

30010




30010








  • 2




    $begingroup$
    "What could be a good reason?" questions do not fit within the Stack Exchange mission, and "such an important memory area" is very application-determined. Looks like no EEPROM in the STM32L4's either, but the L0's and L1's have it. Or you can add an extra chip if you have a need for which emulation won't work.
    $endgroup$
    – Chris Stratton
    5 hours ago












  • $begingroup$
    Is it safe enough to use an emulated eeprom vs external eeprom chip?
    $endgroup$
    – scico111
    5 hours ago








  • 2




    $begingroup$
    That would be entirely application dependent. Since you've said nothing about what you are trying to do for a question which would have to consider the specifics in extreme detail, no one can help you.
    $endgroup$
    – Chris Stratton
    5 hours ago










  • $begingroup$
    The most likely explanation is that the application(s) for which the chip was initially developed did not require it. Remember, EVERY chip ever developed was designed for a specific large-volumne application, and only later added to the manufacturer's general catalog. The overhead of a new chip design is just too high to allow designing chips speculatively.
    $endgroup$
    – Dave Tweed
    4 hours ago










  • $begingroup$
    "such an important memory area" - important to who? I'm currently working on a project using an STM32F4 device and I would have no use whatsoever for a little bit of internal EEPROM. The extra cost it would add to the device would certainly make a difference though.
    $endgroup$
    – brhans
    4 hours ago














  • 2




    $begingroup$
    "What could be a good reason?" questions do not fit within the Stack Exchange mission, and "such an important memory area" is very application-determined. Looks like no EEPROM in the STM32L4's either, but the L0's and L1's have it. Or you can add an extra chip if you have a need for which emulation won't work.
    $endgroup$
    – Chris Stratton
    5 hours ago












  • $begingroup$
    Is it safe enough to use an emulated eeprom vs external eeprom chip?
    $endgroup$
    – scico111
    5 hours ago








  • 2




    $begingroup$
    That would be entirely application dependent. Since you've said nothing about what you are trying to do for a question which would have to consider the specifics in extreme detail, no one can help you.
    $endgroup$
    – Chris Stratton
    5 hours ago










  • $begingroup$
    The most likely explanation is that the application(s) for which the chip was initially developed did not require it. Remember, EVERY chip ever developed was designed for a specific large-volumne application, and only later added to the manufacturer's general catalog. The overhead of a new chip design is just too high to allow designing chips speculatively.
    $endgroup$
    – Dave Tweed
    4 hours ago










  • $begingroup$
    "such an important memory area" - important to who? I'm currently working on a project using an STM32F4 device and I would have no use whatsoever for a little bit of internal EEPROM. The extra cost it would add to the device would certainly make a difference though.
    $endgroup$
    – brhans
    4 hours ago








2




2




$begingroup$
"What could be a good reason?" questions do not fit within the Stack Exchange mission, and "such an important memory area" is very application-determined. Looks like no EEPROM in the STM32L4's either, but the L0's and L1's have it. Or you can add an extra chip if you have a need for which emulation won't work.
$endgroup$
– Chris Stratton
5 hours ago






$begingroup$
"What could be a good reason?" questions do not fit within the Stack Exchange mission, and "such an important memory area" is very application-determined. Looks like no EEPROM in the STM32L4's either, but the L0's and L1's have it. Or you can add an extra chip if you have a need for which emulation won't work.
$endgroup$
– Chris Stratton
5 hours ago














$begingroup$
Is it safe enough to use an emulated eeprom vs external eeprom chip?
$endgroup$
– scico111
5 hours ago






$begingroup$
Is it safe enough to use an emulated eeprom vs external eeprom chip?
$endgroup$
– scico111
5 hours ago






2




2




$begingroup$
That would be entirely application dependent. Since you've said nothing about what you are trying to do for a question which would have to consider the specifics in extreme detail, no one can help you.
$endgroup$
– Chris Stratton
5 hours ago




$begingroup$
That would be entirely application dependent. Since you've said nothing about what you are trying to do for a question which would have to consider the specifics in extreme detail, no one can help you.
$endgroup$
– Chris Stratton
5 hours ago












$begingroup$
The most likely explanation is that the application(s) for which the chip was initially developed did not require it. Remember, EVERY chip ever developed was designed for a specific large-volumne application, and only later added to the manufacturer's general catalog. The overhead of a new chip design is just too high to allow designing chips speculatively.
$endgroup$
– Dave Tweed
4 hours ago




$begingroup$
The most likely explanation is that the application(s) for which the chip was initially developed did not require it. Remember, EVERY chip ever developed was designed for a specific large-volumne application, and only later added to the manufacturer's general catalog. The overhead of a new chip design is just too high to allow designing chips speculatively.
$endgroup$
– Dave Tweed
4 hours ago












$begingroup$
"such an important memory area" - important to who? I'm currently working on a project using an STM32F4 device and I would have no use whatsoever for a little bit of internal EEPROM. The extra cost it would add to the device would certainly make a difference though.
$endgroup$
– brhans
4 hours ago




$begingroup$
"such an important memory area" - important to who? I'm currently working on a project using an STM32F4 device and I would have no use whatsoever for a little bit of internal EEPROM. The extra cost it would add to the device would certainly make a difference though.
$endgroup$
– brhans
4 hours ago










1 Answer
1






active

oldest

votes


















8












$begingroup$

All STM32 MCUs have self-programmable flash memory. If you need to store user settings, you can store them in an area of flash.



ST provides a library to perform EEPROM emulation on the STM32F4. (There are similar libraries for most of their other parts as well.) Even if you don't plan on using that library, their application note explaining how it works may be interesting to read.






share|improve this answer











$endgroup$









  • 1




    $begingroup$
    This is correct but it is a poor substitute. The CPU cannot execute while the flash is being written or erased, and erasing takes a long time. There are tricks (multi flash banks, ram functions) but none are as tidy as just having an internal eeprom like AVR and PIC.
    $endgroup$
    – Jon
    5 hours ago












  • $begingroup$
    @Jon of 577 Microchip PIC32 and Atmel 32 bit MCUs currently in production, only 63 have Data EEPROM. microchip.com/ParamChartSearch/…
    $endgroup$
    – Bruce Abbott
    4 hours ago











Your Answer





StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
});
});
}, "mathjax-editing");

StackExchange.ifUsing("editor", function () {
return StackExchange.using("schematics", function () {
StackExchange.schematics.init();
});
}, "cicuitlab");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "135"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f423293%2fwhy-there-is-no-eeprom-in-stm32f4-mcus%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









8












$begingroup$

All STM32 MCUs have self-programmable flash memory. If you need to store user settings, you can store them in an area of flash.



ST provides a library to perform EEPROM emulation on the STM32F4. (There are similar libraries for most of their other parts as well.) Even if you don't plan on using that library, their application note explaining how it works may be interesting to read.






share|improve this answer











$endgroup$









  • 1




    $begingroup$
    This is correct but it is a poor substitute. The CPU cannot execute while the flash is being written or erased, and erasing takes a long time. There are tricks (multi flash banks, ram functions) but none are as tidy as just having an internal eeprom like AVR and PIC.
    $endgroup$
    – Jon
    5 hours ago












  • $begingroup$
    @Jon of 577 Microchip PIC32 and Atmel 32 bit MCUs currently in production, only 63 have Data EEPROM. microchip.com/ParamChartSearch/…
    $endgroup$
    – Bruce Abbott
    4 hours ago
















8












$begingroup$

All STM32 MCUs have self-programmable flash memory. If you need to store user settings, you can store them in an area of flash.



ST provides a library to perform EEPROM emulation on the STM32F4. (There are similar libraries for most of their other parts as well.) Even if you don't plan on using that library, their application note explaining how it works may be interesting to read.






share|improve this answer











$endgroup$









  • 1




    $begingroup$
    This is correct but it is a poor substitute. The CPU cannot execute while the flash is being written or erased, and erasing takes a long time. There are tricks (multi flash banks, ram functions) but none are as tidy as just having an internal eeprom like AVR and PIC.
    $endgroup$
    – Jon
    5 hours ago












  • $begingroup$
    @Jon of 577 Microchip PIC32 and Atmel 32 bit MCUs currently in production, only 63 have Data EEPROM. microchip.com/ParamChartSearch/…
    $endgroup$
    – Bruce Abbott
    4 hours ago














8












8








8





$begingroup$

All STM32 MCUs have self-programmable flash memory. If you need to store user settings, you can store them in an area of flash.



ST provides a library to perform EEPROM emulation on the STM32F4. (There are similar libraries for most of their other parts as well.) Even if you don't plan on using that library, their application note explaining how it works may be interesting to read.






share|improve this answer











$endgroup$



All STM32 MCUs have self-programmable flash memory. If you need to store user settings, you can store them in an area of flash.



ST provides a library to perform EEPROM emulation on the STM32F4. (There are similar libraries for most of their other parts as well.) Even if you don't plan on using that library, their application note explaining how it works may be interesting to read.







share|improve this answer














share|improve this answer



share|improve this answer








edited 5 hours ago

























answered 5 hours ago









duskwuffduskwuff

17.4k32651




17.4k32651








  • 1




    $begingroup$
    This is correct but it is a poor substitute. The CPU cannot execute while the flash is being written or erased, and erasing takes a long time. There are tricks (multi flash banks, ram functions) but none are as tidy as just having an internal eeprom like AVR and PIC.
    $endgroup$
    – Jon
    5 hours ago












  • $begingroup$
    @Jon of 577 Microchip PIC32 and Atmel 32 bit MCUs currently in production, only 63 have Data EEPROM. microchip.com/ParamChartSearch/…
    $endgroup$
    – Bruce Abbott
    4 hours ago














  • 1




    $begingroup$
    This is correct but it is a poor substitute. The CPU cannot execute while the flash is being written or erased, and erasing takes a long time. There are tricks (multi flash banks, ram functions) but none are as tidy as just having an internal eeprom like AVR and PIC.
    $endgroup$
    – Jon
    5 hours ago












  • $begingroup$
    @Jon of 577 Microchip PIC32 and Atmel 32 bit MCUs currently in production, only 63 have Data EEPROM. microchip.com/ParamChartSearch/…
    $endgroup$
    – Bruce Abbott
    4 hours ago








1




1




$begingroup$
This is correct but it is a poor substitute. The CPU cannot execute while the flash is being written or erased, and erasing takes a long time. There are tricks (multi flash banks, ram functions) but none are as tidy as just having an internal eeprom like AVR and PIC.
$endgroup$
– Jon
5 hours ago






$begingroup$
This is correct but it is a poor substitute. The CPU cannot execute while the flash is being written or erased, and erasing takes a long time. There are tricks (multi flash banks, ram functions) but none are as tidy as just having an internal eeprom like AVR and PIC.
$endgroup$
– Jon
5 hours ago














$begingroup$
@Jon of 577 Microchip PIC32 and Atmel 32 bit MCUs currently in production, only 63 have Data EEPROM. microchip.com/ParamChartSearch/…
$endgroup$
– Bruce Abbott
4 hours ago




$begingroup$
@Jon of 577 Microchip PIC32 and Atmel 32 bit MCUs currently in production, only 63 have Data EEPROM. microchip.com/ParamChartSearch/…
$endgroup$
– Bruce Abbott
4 hours ago


















draft saved

draft discarded




















































Thanks for contributing an answer to Electrical Engineering Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


Use MathJax to format equations. MathJax reference.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f423293%2fwhy-there-is-no-eeprom-in-stm32f4-mcus%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

flock() on closed filehandle LOCK_FILE at /usr/bin/apt-mirror

Mangá

Eduardo VII do Reino Unido