Jump to content

Component: Switch Slide (Switch): Difference between revisions

From Flowcode Help
m Text replacement - "width="90%" style="background-color:#D8C9D8; color:#4B008D;"" to "width="90%" class="mtx-class-macrohead""
m Text replacement - "style="background-color:#EAE1EA; color:#4B008D;"" to "class="mtx-class-propfolder""
Line 171: Line 171:
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Function
| width="90%" class="mtx-class-propfolder" | Function
|-
|-
|-
|-
Line 180: Line 180:
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Switch Settings
| width="90%" class="mtx-class-propfolder" | Switch Settings
|-
|-
|-
|-
Line 204: Line 204:
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Label
| width="90%" class="mtx-class-propfolder" | Label
|-
|-
|-
|-
Line 238: Line 238:
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Appearance
| width="90%" class="mtx-class-propfolder" | Appearance
|-
|-
|-
|-

Revision as of 14:36, 13 July 2026

Author Matrix TSL
Version 20.2
Category Switch


Switch Slide component

A simple digital slide switch allowing latched and none latched operation. In embedded mode displays the connecting pin and pin status.

Version information

Library Version, Component Version, Date, Author, Info
10, 10.0, 23-09-24, MW, Fixed a bug to  make sure switch starts in the off position
10, 10.0, 23-09-24, MW, Added option for simulation only
10, 10.0, 23-09-24, MW, Fixed a bug preventing custom lable posistion from updating on the fly
11, 11.0, 23-09-24, MW, Fixed connection lable so show correct polariy within array
12, 12.0, 15-04-25, MW, Modified switch to show correct value for off when stating and stopping simulation
12, 12.0, 16-04-25, MW, Fixed a bug where Pin x and  y lables remained visisble when supposed to be hidden
13, 18.0, 01-05-25, MW, Adjusted pin and component labels and bounds to decrease overall bounds size
13, 18.0, 01-05-25, MW, Changed labels so don't interact and change switch state
13, 18.0, 01-05-25, MW, Corrected pin label properties
14, 19.0, 01-05-25, BR, Added option to hide label
14, 19.0, 01-05-25, BR, Fixed SameAsHandle label to update on rename event
15, 19.1, 14-05-25, MW, Corrected switch properties
16, 20.0, 10-03-26, ST, Updated for v11.0.1 mouse event change

Detailed description

No detailed description exists yet for this component

Examples

Here is an example Flowcode program to read the value of a switch. Switch Slide Example

Here is a schematic of how to connect a basic switch to a microcontroller pin.

The active high circuit will pass a logical 0 to the input pin when the switch is not pressed and a logical 1 when the switch is pressed.

The active low circuit will pass a logical 1 to the input pin when the switch is not pressed and a logical 0 when the switch is pressed.


There are some differences depending on the type of switch you have, the above states assume a generic push to make type switch, however a push to break type switch would have reversed logic and a toggle switch can work well with either setup.


The resistors are required for correct operation because when a microcontroller's input pin is essentially connected to nothing it will pick up noise in the environment and provide inconsistent readings. This state is referred to as floating i.e. the pin is floating. To test this remove the resistors (if possible) and touch the unconnected pin with your finger the output LED from the example file above will toggle on and off at high speed.


Any values of resistor can be used but it is important to keep the smaller resistor at least 10X smaller then the larger resistor to ensure that the pressed state provides at least 0.91% of the required pressed state voltage. For example a active high switch circuit using 1K and 10K resistors should pull up to about 4.54V when the switch is pressed.

(5V / 11K) * 10K = 4.54545V







Macro reference

ReadState

ReadState
Reads the button state as 0 for released or 1 for pressed Performs debounce if required 
- BYTE Return


SetState

SetState
Sets the switch to be on or off. 
- BOOL State
The new state of the switch (true=on, false=off) 
- VOID Return


WaitUntilHigh

WaitUntilHigh
Waits until the switch is in state 'high' The interpretation of 'high' depends on the polarity 
- VOID Return


WaitUntilLow

WaitUntilLow
Waits until the switch is in state 'low' The interpretation of 'high' depends on the polarity 
- VOID Return


Property reference

Properties
Function
Simulation Only
 
Switch Settings
Connection
The chip pin to which the switch connects. 
Polarity
Set the polarity of states sent to the chip pin. 'Active High' -> Pressed = Set, Released = Clear 'Active Low' -> Pressed = Clear, Released = Set 
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. 
Latching
Determines if the simulated switch maintains its state or revers back to the default state when not clicked. 
Label
Component Label
 
Component label position
 
Label Colour
 
Show Connection Label
 
Show Pin Value
 
Pin label position
 
Appearance
Style
 
Type
 
On Label
 
Off Label
 

Component Source Code

Please click here to download the component source project: FC_Comp_Source_Switch_Slide_2dgi.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_Switch_Slide_2dgi.fcfx