Touch Panel Library
The mikroBasic PRO for PIC32 provides a library for working with Touch Panel.
Library Dependency Tree
External dependencies of Touch Panel Library
| The following variables must be defined in all projects using Touch Panel Library: | Description : | Example : |
|---|---|---|
dim DriveA as sbit sfr atomic external |
DriveA line. | dim DriveA as sbit at LATC13_bit |
dim DriveB as sbit sfr atomic external |
DriveB line. | dim DriveB as sbit at LATC14_bit |
dim DriveA_Direction as sbit sfr atomic external |
Direction of the DriveA pin. | dim DriveA_Direction as sbit at TRISC13_bit |
dim DriveB_Direction as sbit sfr atomic external |
Direction of the DriveB pin. | dim DriveB_Direction as sbit at TRISC14_bit |
Library Routines
- TP_Init
- TP_Set_ADC_Threshold
- TP_Press_Detect
- TP_Get_Coordinates
- TP_Calibrate_Bottom_Left
- TP_Calibrate_Upper_Right
- TP_Get_Calibration_Consts
- TP_Set_Calibration_Consts
TP_Init
| Prototype |
sub procedure TP_Init(dim display_width as word, dim display_height as word, dim readX_ChNo as byte, dim readY_ChNo as byte) |
|---|---|
| Description |
Initialize touch panel display. Default touch panel ADC threshold value is set to 3900. |
| Parameters |
|
| Returns |
Nothing. |
| Requires |
Before calling this function initialize ADC module. |
| Example |
ADC1_Init() ' Initalize ADC module TP_Init(128, 64, 6, 7) ' Initialize touch panel, dimensions 128x64 |
| Notes |
None. |
TP_Set_ADC_Threshold
| Prototype |
sub procedure TP_Set_ADC_Threshold(dim threshold as word) |
|---|---|
| Description |
Set custom ADC threshold value, call this function after |
| Parameters |
|
| Returns |
Nothing. |
| Requires |
|
| Example |
TP_Set_ADC_Threshold(3900) ' Set touch panel ADC threshold |
| Notes |
None. |
TP_Press_Detect
| Prototype |
sub function TP_Press_Detect() as byte |
|---|---|
| Description |
Detects if the touch panel has been pressed. |
| Parameters |
None. |
| Returns |
|
| Requires |
Global variables :
|
| Example |
' Touch Panel module connections
dim DriveA as sbit at LATC13_bit
DriveB as sbit at LATC14_bit
DriveA_Direction as sbit at TRISC13_bit
DriveB_Direction as sbit at TRISC14_bit
' End Touch Panel module connections
if (TP_Press_Detect() <> 0) then
...
end if
|
| Notes |
None. |
TP_Get_Coordinates
| Prototype |
sub function TP_Get_Coordinates(dim byref x_coordinate as word, dim byref y_coordinate as word) as byte |
|---|---|
| Description |
Get touch panel coordinates and store them in |
| Parameters |
|
| Returns |
|
| Requires |
Nothing. |
| Example |
if (TP_Get_Coordinates(@x_coord, @y_coord) = 0) then ... end if |
| Notes |
None. |
TP_Calibrate_Bottom_Left
| Prototype |
sub procedure TP_Calibrate_Bottom_Left() |
|---|---|
| Description |
Calibrate bottom left corner of the touch Panel. |
| Parameters |
None. |
| Returns |
Nothing. |
| Requires |
Nothing. |
| Example |
TP_Calibrate_Bottom_Left() ' Calibration of bottom left corner |
| Notes |
None. |
TP_Calibrate_Upper_Right
| Prototype |
sub procedure TP_Calibrate_Upper_Right() |
|---|---|
| Description |
Calibrate upper right corner of the touch Panel. |
| Parameters |
None. |
| Returns |
Nothing. |
| Requires |
Nothing. |
| Example |
TP_Calibrate_Upper_Right() ' Calibration of upper right corner |
| Notes |
None. |
TP_Get_Calibration_Consts
| Prototype |
sub procedure TP_Get_Calibration_Consts(dim byref x_min as word, dim byref x_max as word, dim byref y_min as word, dim byref y_max as word) |
|---|---|
| Description |
Gets calibration constants after calibration is done and stores them in |
| Parameters |
|
| Returns |
Nothing. |
| Requires |
Nothing. |
| Example |
TP_Get_Calibration_Consts(@x_min, @y_min, @x_max, @y_max) ' Get calibration constants |
| Notes |
None. |
TP_Set_Calibration_Consts
| Prototype |
sub procedure TP_Set_Calibration_Consts(dim x_min as word, dim x_max as word, dim y_min as word, dim y_max as word) |
|---|---|
| Description |
Sets calibration constants. |
| Parameters |
|
| Returns |
Nothing. |
| Requires |
Nothing. |
| Example |
TP_Set_Calibration_Consts(148, 3590, 519, 3370) ' Set calibration constants |
| Notes |
None. |
What do you think about this topic ? Send us feedback!



