LabVIEW Embedded

cancel
Showing results for 
Search instead for 
Did you mean: 

How to emulate NV RAM on Arm 2378?

Solved!
Go to solution

How do you save configuration data to flash using LV Embedded? 

 

I would guess that you use the File I/O.  If so how does the RTX manage the file system in memory? How are paths assigend?  The "write SD Memory" example was of little help.  Is there a reference doc?

 

Thanks,

Rick

0 Kudos
Message 1 of 5
(7,159 Views)

rales,

 

       I don't quite understand the question. Do you mean how do the Build Properties and Target Properties get sent to the embedded target? If you haven't looked at the Porting Guide (http://zone.ni.com/devzone/cda/tut/p/id/7120#toc10) then I highly suggest reading through all 5 chapters because I use it almost daily.

0 Kudos
Message 2 of 5
(7,142 Views)

Typically, NV RAM is used to programmaticall save program data or parameters or options that need to survive a power cycle.  In a windows you would save "Keys' to the registry.   For example, I calibrate a sensor input, how do I save the calibration constants, or maybe I want to configure each device with a unique ID, or regional parameter and so on.  One would typically use an EEPROM or use an area of FLASH to contain these parameters.

 

Since the registry functions do not work with embedded, the question remains, how do you programmatically save nonvolatile data?

 

 

I could also use a serial file, but there is no reference that show how to create an embedded path and file specificaiton.

 

 

Thanks,

Rick

0 Kudos
Message 3 of 5
(7,132 Views)
RL-FlashFS supports:
Flash Drive [F:],
SPI Flash Drive [S:],
Embedded RAM Drive  [R:],
Memory Card Drive  [M:] (default in LabVIEW)

Before configuring your file systems in "File_Config.c" check first RL-FlashFS\Configuring Flash File System in RL-ARM Real-Time Library User's Guide (Keil->Help)

To see File_Config.c in the uVision project right click on your target and select "Show Keil uVision", and then build your target (or viceversa).
0 Kudos
Message 4 of 5
(7,129 Views)
Solution
Accepted by topic author rales

 

Using the flash drive for NV RAM is probably not the way to go.  Here is a note from a colleague....

 

"With LPC23xx, we first tried to use part of flash as EEPROM. But we encountered few problems using that method. First, it only allows to write a page at a time and not a byte. So, for saving a new byte value, we had to program complete page. Second, it took longer time - about 200 ms for one page write and all the interrupts needed to be disabled during this time - this caused problems with devicenet network. So, Unless your application is not time critical, we do not recommend using Flash as parameter storage option.

On current designs with LPC2xxx, we have used 24C02/04 EEPROM with I2C protocol. We have initialize, read, write driver routines written in C."

 

This is the tack I'm taking.

Rick

0 Kudos
Message 5 of 5
(7,094 Views)