![]() ![]() ![]() Warning: this table is huge, ugly, and hard to read - I’m just showing you what it looks like, don’t be overwhelmed by trying to understand it. Let’s take a look at TI’s memory map for the MSP430F5529, the microcontroller we’re using for ESE101. Note: Andrei Chichak has a great explanation of RAM, flash, and other common memory types as part of his Embedded Wednesdays series - check it out for more detailed info. This means that flash memory is a terrible place to put stuff that needs to change often, but a great place to put stuff that rarely or never changes (like your program). The downside is flash can’t be changed easily: if you want to change a value in flash you first have to erase a chunk of flash (usually at least 4KB), which is slow, and then rewrite everything in the chunk of flash you just erased including your new value. This makes flash memory a great place to put the instructions that make up your program. This means that whatever is put in flash memory stays there after a chip is powered off, and is still there the next time the chip is powered on. RAM is used for storing variables and doing computation.įlash memory retains its contents when it loses power. You can change any part of RAM at any time - it’s the most flexible of all memory types. RAM loses its contents when it loses power, so it’s only useful when a chip is powered on. The two main types of memories used in microcontrollers are RAM and flash. Types of Memoriesīefore we dive in, I need to explain the different types of memories. This week we’ll take a closer look at exactly what real microcontroller memories look like. Small memories are useful for simple examples, but real microcontrollers have far larger memories. ESE101 started with a fictional microcontroller that had a very small memory: 8 memory locations at first, and later 16 memory locations. ![]()
0 Comments
Leave a Reply. |