Elements Sub Func

From Smart LCD
Revision as of 14:44, 10 May 2025 by Usr255 (talk | contribs) (Created page with "== TPK, VPK Call Functions == Call functions are functions which could be called up by TPK or VPK. === Call Functions - Operations === {| !'''Function''' !'''Descriptions''' |- |VP:= VP XOR Value | Predefine VP variable XOR with a constant stay in Value, and store the result back into the VP variable E.g. VP_N32(0x020000)=0x0055, properties' Value= 0x00AA; result VP_N32 (0x020000)=0x00FF |- |BUFF:= VP | Copy the VP variable content to the BUFF(string format) loc...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

TPK, VPK Call Functions

Call functions are functions which could be called up by TPK or VPK.

Call Functions - Operations

Function Descriptions
VP:= VP XOR Value
Predefine  VP variable XOR with a constant stay in Value, and store the result back into  the VP variable
E.g. VP_N32(0x020000)=0x0055, properties'  Value=  0x00AA; result VP_N32 (0x020000)=0x00FF
BUFF:= VP
Copy  the VP variable content to the BUFF(string format) location.
E.g. VP_N32(0x020000)=123;  result VP_STR(BUFF)=“123”  (note: number converted to string)
VP:= BUFF Copy the BUFF content to a VP variable (integer or a string)

E.g. VP(BUFF)=“123”, result VP_N32(0x020000)=123 (note: string converted to interger)

VP:= Value Copy a constant stay in Value to a VP variable

E.g. properties' Value= 123; result VP_N32(0x020000)=123

VP:= VP + Value Predefine VP variable add with a constant stay in Value, and store the result back into the VP variable

E.g. VP_N32(0x020000)=666, Value=2; result VP_N32 (0x020000)=668

VP:= VP - Value Predefine VP variable minus by a constant stay in Value, and store the result back into the VP variable

E.g. VP_N32(0x020000)=666, Value=10; result VP_N32 (0x020000)=656

VP:= VP + Value, loop Predefine VP variable times by a constant stay in Value, and store the result back into the VP variable

If the value is bigger than the predefined maximum, it will "loop" to the predefined minimum.

E.g. VP_N32(0x020000)=666, Value=2; result VP_N32 (0x020000)=668

VP:= VP - Value, loop Predefine VP variable minus by a constant stay in Value, and store the result back into the VP variable

If the value is smaller than the predefined minimum, it will "loop" to the predefined maximum.

E.g. VP_N32(0x020000)=666, Value=10; result VP_N32 (0x020000)=656

VP:= VP * Value Predefine VP variable times by a constant stay in Value, and store the result back into the VP variable

Eg: VP_N32(0x020000)=666, Value=10; result VP_N32 (0x020000)=6660

VP:= VP/Value Predefine VP variable divided by a constant stay in Value, and store the result back into the VP variable

E.g. VP_N32(0x020000)=666, Value=2; result VP_N32 (0x020000)=333

Byte0(VP):= Byte0(Value) Copy the constant byte0(lowest byte) stay in Value to VP variable byte0(Lowest byte) location

E.g. VP_N32(0x020000)=0x5555, Value=0x0A;  result VP_N32 (0x020000)=0x550A

Byte1(VP):= Byte0(Value) Copy the constant byte0(lowest byte) stay in Value to VP variable byte1 location

E.g. VP_N32(0x020000)=0x5555, Value=0x0A; result VP_N32 (0x020000)=0x0A55

Byte2(VP):= Byte0(Value) Copy the constant byte0(lowest byte) stay in Value to VP variable byte2 location

E.g. VP_N32(0x020000)=0x5555, Value=0x0A; result VP_N32 (0x020000)=0x0A5555

Byte3(VP):= Byte0(Value) Copy the constant byte0(lowest byte) stay in Value to VP variable byte3(Highest byte) location

E.g. VP_N32(0x020000)=0x5555,  Value=0x0A;  result VP_N32 (0x020000)=0x0A005555

Bit0(VP):= LSB(Value) Copy the constant LSB stay in Value to VP variable bit0(LSB) location

E.g. VP_N32(0x020000)=0x0000, Value=0x01; result VP_N32 (0x020000)=0x0001

Bit1(VP):= LSB(Value) Copy the constante LSB stay in Value to VP variable bit1 location

Eg: VP_N32(0x020000)=0x0000, Value=0x01; result VP_N32 (0x020000)=0x0002

Bit2(VP):= LSB(Value) Copy the constant LSB stay in Value to VP variable bit2 location

E.g. VP_N32(0x020000)=0x0000, Value=0x01; result VP_N32 (0x020000)=0x0004

Bit3(VP):= LSB(Value) Copy the constant LSB stay in Value to VP variable bit3 location

E.g. VP_N32(0x020000)=0x0000, Value=0x01; result VP_N32 (0x020000)=0x0008

Bit4(VP):= LSB(Value) Copy the constant LSB stay in Value to VP variable bit4 location

E.g. VP_N32(0x020000)=0x0000, Value=0x01; result VP_N32 (0x020000)=0x0010

Bit5(VP):= LSB(Value) Copy the constant LSB stay in Value to VP variable bit5 location

E.g. VP_N32(0x020000)=0x0000, Value= 0x01; result VP_N32 (0x020000)=0x0020

Bit6(VP):= LSB(Value) Copy the constant LSB stay in Value to VP variable bit6 location

E.g. VP_N32(0x020000)=0x0000, Value= 0x01; result VP_N32 (0x020000)=0x0040

Bit7(VP):= LSB(Value) Copy the constant LSB stay in Value to VP variable bit7 location

E.g. VP_N32(0x020000)=0x0000, Value= 0x01; result VP_N32 (0x020000)=0x0080

Call Functions - Keyboards

Function Descriptions
Keyboard Number Number Keyboard for number value input and report the value to the host.(*1)

The input value will be stored inside the predefined VP Variable

Keyboard Password Password Keyboard for number password input. (display as *, 9char max.) and report the input value to the host. (*1) The input value will be stored inside the predefined VP Variable
Keyboard English English Keyboard for English input and report the input value to the host. (*1)

The input value will be stored inside the predefined VP Variable

Keyboard Chinese Chinese Pinyin Keyboard for number value input and report the value to the host. (*1)

The input value will be stored inside the predefined VP Variable

PIP Menu Page-in-page Menu is a customizable menu. It pop-up a little window of another page as a menu selection input and report the input value to the host. (*1)

The input value will be stored inside the predefined VP Variable

PIP Keyboard Page-in-page Keyboard is a customizable keyboard. It could pop up a little window of another page as a keyboard keys and report the input value to the host. (*1)

The input value will be stored inside the predefined VP Variable.

PIP Number Keyboard Page-in-page Number Keyboard is a customizable keyboard. It pop up a little window of another page as a keyboard keys and report the input value to the host. (*1)

The input value will be stored inside the predefined VP Variable.

PIP RTC Page-in-page RTC is a customizable interface to adjust the Real Time Clock time.

It could pop up a little window of another page as a keyboard keys.

Adjust Backlight Backlight brightness level setting.
Adjust RTC Real Time Clock time adjust interface.
Slider Single Single slider input interface input is corresponding ratio of the predefined max. min. value and report the input value to the host. (*1) The input value will be stored inside the predefined VP Variable.
Slider Dual Dual slider input interface function as Single Slider with two VP Variable input,

Where, the two slider will limit each other for non-overlapped value input and report the input value to the host. (*1) The two input value will be stored inside two successive predefined VP Variable.

Listing VP_STR listing window

Display the VP_STR content with predefined VP_STR Address and no. of VP_STR to be display. Providing touch and scroll interface.

Listing with Slider VP_STR listing window

Display the VP_STR content with predefined VP_STR Address and no. of VP_STR to be display. Providing slider bar for scroll.

Note: *1. Entered value that report to host with command header 0x77

Call Functions - PIP Keyboard's keys

Function Descriptions
Enter Enter key for PIP keyboard for finishing and confirming the input.
Esc Escape key for PIP keyboard/menu.

It could cancel the input and close the PIP keyboard/menu.

CapsLock CapsLock key function for PIP Keyboard
VP:= Value, Enter Directly assigning the value into VP variable and follow with a Enter to confirm the input.

Mainly for PIP menu items selection

Buff:=Con(Buff,Cap,

Nom(Byte0/Byte1))

Generally key call for PIP keyboard with (Capslock feature)

It will put the lower byte value  into the end of Buff area.

If the CapsLock toggled, the high byte will be insert into the end of the Buff area

(note: its value in properties should be a 16bit formatted value)

VP:=Concatenate(VP,Value) Put its properties value to the end of the content of the predefined VP value

Mainly work with BUFF as a general char input

E.g. VP(BUFF)= “123”, Properties' Value = 4, after call VP(BUFF)=“1234”

VP:= DelLastChar(VP) Delete the last byte of the the VP variable

Mainly for VP(BUFF) as a backspace funciton.

E.g. VP(BUFF)=“123”, after call VP(BUFF)=“12”