Component: EEPROM (EEPROM): Difference between revisions
No edit summary |
m Text replacement - "width="90%" style="background-color:#D8C9D8; color:#4B008D;"" to "width="90%" class="mtx-class-macrohead"" |
||
| (4 intermediate revisions by 2 users not shown) | |||
| Line 17: | Line 17: | ||
==Component Source Code== | ==Component Source Code== | ||
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/ | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_EEPROM.fcfx FC_Comp_Source_EEPROM.fcfx] | ||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/ | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_EEPROM.fcfx FC_Comp_Source_EEPROM.fcfx] | ||
==Detailed description== | ==Detailed description== | ||
| Line 93: | Line 93: | ||
Example showing how to store and retrieve strings to and from the EEPROM memory. | Example showing how to store and retrieve strings to and from the EEPROM memory. | ||
{{Fcfile|StringEE.fcfx|EEStrings}} | {{Fcfile|StringEE.fcfx|EEStrings}} | ||
| Line 105: | Line 107: | ||
===Read=== | ===Read=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Read''' | ||
|- | |- | ||
| colspan="2" | Reads a packet of bits from the EEPROM The number of bits read is 8 or 16, depending on the platform | | colspan="2" | Reads a packet of bits from the EEPROM The number of bits read is 8 or 16, depending on the platform | ||
| Line 124: | Line 126: | ||
===ReadByte=== | ===ReadByte=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadByte''' | ||
|- | |- | ||
| colspan="2" | Reads a 8-bit byte value starting from the specified address. A 8-bit byte will consume 1 byte which will be 1 locations on an 8-bit device or half a location on a 16-bit device. | | colspan="2" | Reads a 8-bit byte value starting from the specified address. A 8-bit byte will consume 1 byte which will be 1 locations on an 8-bit device or half a location on a 16-bit device. | ||
| Line 148: | Line 150: | ||
===ReadFloat=== | ===ReadFloat=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadFloat''' | ||
|- | |- | ||
| colspan="2" | Reads a 32-bit float value starting from the specified address. A 32-bit float will consume 4 bytes which will be 4 locations on an 8-bit device or 2 locations on a 16-bit device. | | colspan="2" | Reads a 32-bit float value starting from the specified address. A 32-bit float will consume 4 bytes which will be 4 locations on an 8-bit device or 2 locations on a 16-bit device. | ||
| Line 172: | Line 174: | ||
===ReadInt=== | ===ReadInt=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadInt''' | ||
|- | |- | ||
| colspan="2" | Reads a 16-bit int value starting from the specified address. A 16-bit int will consume 2 bytes which will be 2 locations on an 8-bit device or 1 location on a 16-bit device. | | colspan="2" | Reads a 16-bit int value starting from the specified address. A 16-bit int will consume 2 bytes which will be 2 locations on an 8-bit device or 1 location on a 16-bit device. | ||
| Line 196: | Line 198: | ||
===ReadLong=== | ===ReadLong=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadLong''' | ||
|- | |- | ||
| colspan="2" | Reads a 32-bit long value starting from the specified address. A 32-bit long will consume 4 bytes which will be 4 locations on an 8-bit device or 2 locations on a 16-bit device. | | colspan="2" | Reads a 32-bit long value starting from the specified address. A 32-bit long will consume 4 bytes which will be 4 locations on an 8-bit device or 2 locations on a 16-bit device. | ||
| Line 220: | Line 222: | ||
===ReadString=== | ===ReadString=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadString''' | ||
|- | |- | ||
| colspan="2" | Reads a string of data from the EE memory starting at the specified address. 8-bit EE memory stores a character into each memory location. 16-bit EE memory stores two characters into each memory location. | | colspan="2" | Reads a string of data from the EE memory starting at the specified address. 8-bit EE memory stores a character into each memory location. 16-bit EE memory stores two characters into each memory location. | ||
| Line 244: | Line 246: | ||
===Write=== | ===Write=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Write''' | ||
|- | |- | ||
| colspan="2" | Writes a packet of bits from the EEPROM The number of bits written is 8 or 16, depending on the platform | | colspan="2" | Writes a packet of bits from the EEPROM The number of bits written is 8 or 16, depending on the platform | ||
| Line 268: | Line 270: | ||
===WriteByte=== | ===WriteByte=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''WriteByte''' | ||
|- | |- | ||
| colspan="2" | Writes a 8-bit byte value to the specified address. A 8-bit byte will consume 1 bytes which will be 1 locations on an 8-bit device or half a location on a 16-bit device. | | colspan="2" | Writes a 8-bit byte value to the specified address. A 8-bit byte will consume 1 bytes which will be 1 locations on an 8-bit device or half a location on a 16-bit device. | ||
| Line 292: | Line 294: | ||
===WriteFloat=== | ===WriteFloat=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''WriteFloat''' | ||
|- | |- | ||
| colspan="2" | Writes a 32-bit float value starting at the specified address. A 32-bit float will consume 4 bytes which will be 4 locations on an 8-bit device or 2 locations on a 16-bit device. | | colspan="2" | Writes a 32-bit float value starting at the specified address. A 32-bit float will consume 4 bytes which will be 4 locations on an 8-bit device or 2 locations on a 16-bit device. | ||
| Line 321: | Line 323: | ||
===WriteInt=== | ===WriteInt=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''WriteInt''' | ||
|- | |- | ||
| colspan="2" | Writes a 16-bit int value starting at the specified address. A 16-bit int will consume 2 bytes which will be 2 locations on an 8-bit device or 1 location on a 16-bit device. | | colspan="2" | Writes a 16-bit int value starting at the specified address. A 16-bit int will consume 2 bytes which will be 2 locations on an 8-bit device or 1 location on a 16-bit device. | ||
| Line 350: | Line 352: | ||
===WriteLong=== | ===WriteLong=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''WriteLong''' | ||
|- | |- | ||
| colspan="2" | Writes a 32-bit long value starting at the specified address. A 32-bit long will consume 4 bytes which will be 4 locations on an 8-bit device or 2 locations on a 16-bit device. | | colspan="2" | Writes a 32-bit long value starting at the specified address. A 32-bit long will consume 4 bytes which will be 4 locations on an 8-bit device or 2 locations on a 16-bit device. | ||
| Line 379: | Line 381: | ||
===WriteString=== | ===WriteString=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''WriteString''' | ||
|- | |- | ||
| colspan="2" | Writes a string of data to the EE memory starting at the specified address. 8-bit EE memory stores a character into each memory location. 16-bit EE memory stores two characters into each memory location. | | colspan="2" | Writes a string of data to the EE memory starting at the specified address. 8-bit EE memory stores a character into each memory location. 16-bit EE memory stores two characters into each memory location. | ||
| Line 409: | Line 411: | ||
==Property reference== | ==Property reference== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:23, 13 July 2026
| Author | Matrix Ltd |
| Version | 1.2 |
| Category | EEPROM |
EEPROM component
A means of reading data from and writing data to the EEPROM memory onboard the microcontroller. Fully functional with simulation but the target microcontroller must have EEPROM memory available to allow compilation to work.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_EEPROM.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_EEPROM.fcfx
Detailed description
No detailed description exists yet for this component
Examples
The Console window can be used to show the contents of EE memory during simulation.
Read and Write Bytes
Reads a value from location 0 in the EEPROM and writes back the value incremented by one, the values are displayed on to a LCD.
Starting and stopping the simulation or resetting the microcontroller will allow the program to resume counting from where it left off as opposed to a standard RAM based variable which would reset to an undetermined value.
EEPROM
Read and Write Ints
Reads a value from locations 0,1 in the EEPROM and writes back the value incremented by one, the values are displayed on to a LCD.
Starting and stopping the simulation or resetting the microcontroller will allow the program to resume counting from where it left off as opposed to a standard RAM based variable which would reset to an undetermined value.
EEPROM_INT
String variables in EE Memory
Example showing how to store and retrieve strings to and from the EEPROM memory.
EEStrings
Macro reference
Read
| Read | |
| Reads a packet of bits from the EEPROM The number of bits read is 8 or 16, depending on the platform | |
| Address | |
| The address, in elements, to read the data from | |
| Return | |
ReadByte
ReadFloat
ReadInt
ReadLong
ReadString
Write
WriteByte
WriteFloat
WriteInt
WriteLong
WriteString
