Serial RAM


Speed Key Names: smem, sram

The Serial RAM symbol stores and recalls data to and from NVRAM. It is typically used in conjunction with the following data entry symbols and data decoding symbols:

-or-

When used in this fashion, the serial <out$> output of the data entry symbol, the serial <in$> input of the data decoding symbol, and the <in$/out$> input of the Serial RAM symbol are connected together and must have the same signal name.

The Serial RAM symbol can also be connected to multiple Serial RAM from Database symbols, allowing the symbols to access the same shared area of NVRAM.

In 2-Series processors the Serial RAM can also be used to store and recall serial data coming from non-keypad sources, such as a Serial Send symbol. When tying a transient string to a Serial RAM symbol (such as from the Serial Send) a Make String Permanent symbol must be tied to <in$/out$>. It is suggested that the [Permanent String Size] be set to the same as the <#chars> parameter.

Signal name and type

Description

Serial input: <in$/out$>

X-Series and 2-Series

When connected to the Telephone Dialing Keypad and Serial Memory Dialer, this string is used to save the contents of the permanent <out$> string generated by the Telephone Dialing Keypad to NVRAM, and recalls the string to the <in$> input of the Serial Memory Dialer. The signal name must be the same in all three symbols.

When connected to the ASCII Keypad and ASCII Serial Decoder, this string saves the contents of the permanent <out$> string generated by the ASCII Keypad to NVRAM, and recalls the string to the <in$> input of the ASCII Serial Decoder. The signal name must be the same in all three symbols.

The input can also be connected to the <in$/out$> inputs of multiple Serial RAM from Database symbols. This allows the programmer to implement an application such as a phone directory without need to use additional logic and buffers. The <in$/out$> inputs of each Serial RAM from Database symbol can simply be routed to different indirect text fields on a touchpanel.

2-Series only

In 2-Series processors, this string can also be used to store and recall serial data coming from non-keypad sources, such as a Serial Send symbol.

When tying a transient string to a Serial RAM symbol (such as from the Serial Send) a Make String Permanent symbol must also be tied to <in$/out$>. It is suggested that the [Permanent String Size] be set the same as the <#chars> parameter.

Digital input: <store>

Saves the contents of <in$/out$> to NVRAM on the rising edge of a <select> input, for as long as <store> is high.

High/1 (level sensitive) = Save contents of <in$/out$>; Low/0 = Exit save mode

Digital input: <recall>

Recalls the contents of NVRAM to <in$/out$> on the rising edge of any <select> input, for as long as <recall> is high.

High/1 (level sensitive) = Recall contents of NVRAM; Low/0 = Exit recall mode

Digital inputs: <select1> through <select999>

When in save mode (<store> = high/1), saves the contents of <in$/out$> to the corresponding NVRAM preset on the rising edge of the input.

When in recall mode (<recall> = high/1), recalls the contents of the corresponding NVRAM preset to <in$/out$> on the rising edge of the input.

If used in conjunction with the Serial RAM from Database symbol, typically one Serial RAM from Database symbol needs to be defined for each select input. For example, if 10 select inputs are defined, then 10 Serial RAM from Database symbols should be defined.

High/1 (rising edge) = Store/recall; Low/0 = No effect

Digital output: <dial>

When connected to the <dial> input of a Serial Memory Dialer or ASCII Serial Decoder symbol, indicates that the stored number is being dialed.

Alternatively, <dial> can be assigned a dummy name if it is not used.

High/1 = Dialing; Low/0 = Not dialing

Single-precision parameter: <#chars> (see Numeric Formats)

X-Series and 2-Series

Sets the maximum number of characters that can be accumulated into the <in$/out$> string.

If more digits are entered than what is specified in <#chars>, the extra digits are ignored.

This parameter value should match the <#chars> parameter in the ASCII Keypad/Telephone Dialing Keypad symbols.

This parameter value should also match the <#digits> parameter in the Serial RAM from Database symbol (if used).

2-Series only

If a transient string is tied to <in$/out$> (such as from the Serial Send) a Make String Permanent symbol must also be tied to <in$/out$>.

This parameter value should match the Permanent String Size specified in the Make String Permanent symbol.