To best understand the terms used in this chapter, it is important to know the organisation of data and memory in a QMOVE application. QMOVE applications are programs written in QCL language that, translated in binary code, are transferred onto QMOVE hardware and saved there. In the hardware, the microprocessor runs has a program called firmware that interprets the above binary code instructions and performs the operations associated to them.

A QCL application, in addition to the instructions, is also composed of variables that the QCL instructions act on.. Some of these variables are retentive, i.e. their values remain unaltered from shut-off to start up. The flow chart below illustrates the organisation of data in a QCL application transferred to the memory of any QMOVE hardware:

It can be noted that, the QMOVE hardware has several mass storage devices:

“Flash memory”, where the following is saved:

  • QCL program: the series of QCL instructions translated into binary by the compiler.
  • HMI program: the series of HMI screens translated into binary by the compiler. This program only exists when the QMOVE hardware has a display.
  • Configuration data: the calibration and configuration data, the touch-screen calibration settings, the ethernet communication configuration data (IP address, etc…), etc.

“Non volatile memory”, which stores:

  • Retentive variables: the group of variables that remains unaltered on a shut-off and startup (e.g. SYSTEM, ARRAYS, DATAGROUP, etc).

“Volatile memory”, which stores:

  • Not retentive variables: the group of variables that is set to 0 at each startup (e.g. GLOBAL, ARRGBL, etc).

The volatile data memory is also used as dynamic memory. i.e. the memory used by the firmware for internal operations and active HMI screen management.

“Mass storage external device” is managed by a standard filesystem and is useful for loading the QMOVE application, data loading/saving, firmware update or to save informations by the DATASTORE device.

  • Last modified: 2020/01/20 15:20