Component: Keypad (Generic) (Keypad): Difference between revisions
No edit summary |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (12 intermediate revisions by 2 users not shown) | |||
| Line 16: | Line 16: | ||
==Component Source Code== | ==Component Source Code== | ||
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_Keypad_Base.fcfx FC_Comp_Source_Keypad_Base.fcfx] | |||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_Keypad_Base.fcfx FC_Comp_Source_Keypad_Base.fcfx] | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_Keypad_Base.fcfx FC_Comp_Source_Keypad_Base.fcfx] | ||
==Detailed description== | ==Detailed description== | ||
| Line 32: | Line 40: | ||
==Examples== | ==Examples== | ||
| Line 66: | Line 80: | ||
[[File:KeypadCirBuff.jpg]] | [[File:KeypadCirBuff.jpg]] | ||
==Macro reference== | |||
{| class="wikitable | ===GetAscii=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetAscii''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Gets the ASCII value for the current keypress. If no key is pressed then the macro returns the value 255. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===GetIndex=== | |||
{| class="mtx-class-macrotable wikitable" | |||
== | |||
{| class="wikitable | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" class="mtx-class-macrohead" | '''GetIndex''' | |||
| width="90%" | |||
|- | |- | ||
| colspan="2" | Gets the index value for the current keypress. If no key pressed then the macro returns the value 255. | |||
| colspan="2" | | |||
|- | |- | ||
|- | |- | ||
| Line 504: | Line 120: | ||
{| class="wikitable | ===GetNumber=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetNumber''' | ||
|- | |- | ||
| colspan="2" | Gets the | | colspan="2" | Gets the numeric value for the current keypress. If no key pressed then the macro returns the value 255. | ||
|- | |- | ||
|- | |- | ||
| Line 517: | Line 134: | ||
{| class="wikitable | ===GetString=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetString''' | ||
|- | |- | ||
| colspan="2" | Gets the ASCII value for the current keypress and returns in the form of a string. If no key pressed then the macro returns a null string. | | colspan="2" | Gets the ASCII value for the current keypress and returns in the form of a string. If no key pressed then the macro returns a null string. | ||
| Line 530: | Line 148: | ||
{| class="wikitable | ===WaitPressed=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''WaitPressed''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Blocking call that waits for one of the keys on the keypad to be pressed. The index of the key that was pressed is passed back to the user. | ||
|- | |- | ||
|- | |- | ||
| Line 543: | Line 162: | ||
{| class="wikitable | ===WaitReleased=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''WaitReleased''' | ||
|- | |- | ||
| colspan="2" | Blocking call that waits for the keys on the keypad to be released. If no key is pressed then the function will return immediatley. | | colspan="2" | Blocking call that waits for the keys on the keypad to be released. If no key is pressed then the function will return immediatley. | ||
| Line 567: | Line 174: | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
==Property reference== | ==Property reference== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Dimensions | ||
|- | |- | ||
|- | |- | ||
| Line 588: | Line 193: | ||
| colspan="2" | Number of columns (left to right) in the array of keys. Must be a value from one to four. | | colspan="2" | Number of columns (left to right) in the array of keys. Must be a value from one to four. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Return Values | ||
|- | |- | ||
|- | |- | ||
| Line 602: | Line 207: | ||
| colspan="2" | A list of return values for the 'GetNumber' macro. Enter a comma separated list with one integer value per key, in order of key scanning. Columns are counted first (left-to-right), then rows (direction set by the 'First Row' property) e.g. for a 2*2 grid, the order would be... [Row0, Column0], [Row0,Column1], ][Row1, Column0], [Row1, Column1] | | colspan="2" | A list of return values for the 'GetNumber' macro. Enter a comma separated list with one integer value per key, in order of key scanning. Columns are counted first (left-to-right), then rows (direction set by the 'First Row' property) e.g. for a 2*2 grid, the order would be... [Row0, Column0], [Row0,Column1], ][Row1, Column0], [Row1, Column1] | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Connections | ||
|- | |- | ||
|- | |- | ||
| Line 616: | Line 221: | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Appearance | ||
|- | |- | ||
|- | |- | ||
| Line 625: | Line 230: | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 634: | Line 239: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 643: | Line 248: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 652: | Line 257: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 661: | Line 266: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 670: | Line 275: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 679: | Line 284: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 688: | Line 293: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 697: | Line 302: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 706: | Line 311: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 715: | Line 320: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 724: | Line 329: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 733: | Line 338: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 742: | Line 347: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 751: | Line 356: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 760: | Line 365: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 769: | Line 374: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 778: | Line 383: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 787: | Line 392: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 796: | Line 401: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 805: | Line 410: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 814: | Line 419: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 823: | Line 428: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 832: | Line 437: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 841: | Line 446: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 850: | Line 455: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 859: | Line 464: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 868: | Line 473: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 877: | Line 482: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 886: | Line 491: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
| Line 895: | Line 500: | ||
| colspan="2" | Specifies the font colour for the item | | colspan="2" | Specifies the font colour for the item | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Button | ||
|- | |- | ||
|- | |- | ||
| Line 904: | Line 509: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Label | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:36, 13 July 2026
| Author | Matrix Ltd |
| Version | 1.5 |
| Category | Keypad |
Keypad (Generic) component
Generic component to create a raster scanned custom keypad or button matrix. By default, each key is labelled with its ASCII return character. Alternatively, each key may use an image as a label. To use a custom key shape, build a single key, then point to it with the 'Custom key shape" property. If the custom shape is a group, any item within the group that has a handle beginning with "label" will have the key label/image applied to it automatically.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_Keypad_Base.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_Keypad_Base.fcfx
Detailed description
No detailed description exists yet for this component
Examples
3 x 4 Keypad Schematic
Example schematic of a 3 x 4 Keypad.
Multi Digit Number Entry
A simple example to take in a decimal number (0-65535) from the user and then use this number as a delay for flashing a LED on and off. Shows the principals of reading the keypad and building up a multi-digit number.
Keypad Based Door Entry System
Each key press on the keypad is fed into the Circular Buffer component. We then poll the buffer to see if the correct characters for the password have been entered.
If the correct sequence is detected then we activate the solenoid component for 5 seconds.
Macro reference
GetAscii
| GetAscii | |
| Gets the ASCII value for the current keypress. If no key is pressed then the macro returns the value 255. | |
| Return | |
GetIndex
| GetIndex | |
| Gets the index value for the current keypress. If no key pressed then the macro returns the value 255. | |
| Return | |
GetNumber
| GetNumber | |
| Gets the numeric value for the current keypress. If no key pressed then the macro returns the value 255. | |
| Return | |
GetString
| GetString | |
| Gets the ASCII value for the current keypress and returns in the form of a string. If no key pressed then the macro returns a null string. | |
| Return | |
WaitPressed
| WaitPressed | |
| Blocking call that waits for one of the keys on the keypad to be pressed. The index of the key that was pressed is passed back to the user. | |
| Return | |
WaitReleased
| WaitReleased | |
| Blocking call that waits for the keys on the keypad to be released. If no key is pressed then the function will return immediatley. | |
| Return | |

