Component: Switch base (Inputs)

From Flowcode Help
Revision as of 13:34, 2 September 2013 by JonnyW (talk | contribs) (XML import of components for release)
Jump to navigationJump to search


Author Matrix Ltd
Version 1.0
Category Inputs


Image Switch base component

A simple single-pin switch


This component can be used as a base to create child components

The following components all inherit the traits of Switch base:

-
Image Toggle Metal PCB Miniature toggle switch with metal tang. Pins for PCB mounting.
Image Push Click PCB Surface mount click switch, standard 6mm square size.
Image Rocker Neon Rocker switch with indicator lamp and properties for changing the colours of each part.
Image Dashboard Switch Simple latching slide switch using the default Matrix dashboard theme.
Image Slide PCB Submin Subminiature slide switch with black tang, PCB mount.
Image Push Round Panel Large round push switchwith chrome bezel for panel mounting.
Image Dashboard Button Simple momentary push-button using the Matrix dashboard theme.
Image Toggle Metal Panel Miniature toggle switch with metal tamg - solder lugs and nut for panel mounting.
Image PCB Switch Simple tactile PCB switch for PCB mounting. Approx. 12 * 12mm.

Color and operation can be set from properties.

Image Basic Switch Simple push button switch with LED indicator.

Momentary or latching action can be chosen in the properties.

Examples

No additional examples


Downloadable macro reference

ReadState

Reads the button state as 0 for released or 1 for pressed

Performs debounce if required

Parameters

This macro has no parameters


Return value

BYTE


WaitUntilHigh

Waits until the switch is in state 'high'

The interpretation of 'high' depends on the polarity

Parameters

This macro has no parameters


Return value

This call does not return a value


WaitUntilLow

Waits until the switch is in state 'low'

The interpretation of 'high' depends on the polarity

Parameters

This macro has no parameters


Return value

This call does not return a value


Simulation macro reference

This component does not contain any simulation macros


Property reference

Connection

This property is of type Single digital pin and can be referenced with the variable name pin.

The chip pin to which the switch connects.

Polarity

This property is of type Fixed list of ints and can be referenced with the variable name polarity.

Set the polarity of states sent to the chip pin.

'Active High' -> Pressed = On, Released = Off

'Active Low' -> Pressed = Off, Released = On

Debounce (ms)

This property is of type Signed integer and can be referenced with the variable name debounce.

Sets the time in milliseconds to allow a pin change to settle into a stable state.


NB) Debouncing is only used when reading the button state using the component macros.

       Chip pins are NOT debounced.

Moving part

This property is of type Panel object and can be referenced with the variable name target.

Sets a panel object or group to be the moving part of the switch model.

Make sure that the object is in the 'Off' position at the time of linking.

Pivot object

This property is of type Panel object and can be referenced with the variable name pivot.

When using the 'Rotary' switch type, the 'Moving part' will rotate about the object set here.

The moving part will rotate around its own axes if this property is left 'Unconnected'.

Type

This property is of type Fixed list of ints and can be referenced with the variable name movetype.

Sets whether the motion of the 'Moving part' will be 'Push/Slide' (linear motion) or

'Rotary' (e.g. toggle switches).

Operation

This property is of type Fixed list of ints and can be referenced with the variable name operation.

'Latching' = click to trun on, click again to turn off.

'Momentary' = click to turn on, release to turn off.

Axis

This property is of type Fixed list of ints and can be referenced with the variable name axis.

For 'Push/Slide' switches, the axis that the 'Moving part' will move along.

For 'Rotary' switches, the axis around which 'Moving part' will rotate.

Movement

This property is of type Floating point and can be referenced with the variable name move.

For 'Push/Slide' switches, the distance (in local units) to move along the axis.

For 'Rotary' switches, the angle (in degrees) to rotate around the axis.

Notify on change

This property is of type True or false and can be referenced with the variable name notify.

When enabled, a 'System.User' event will be sent for each change of switch state.

The event is sent to the 'parent' component in which this 'Swict base' instance is used.