Command |
SETUP(System) |
|
|
Description |
Set up the system. These parameters can be set at initialisation or at any
time during operation by specifying the parameter to be changed. Example:
SETUP( SYSTEM ){ bled=50; }. To change a setting use a dot operator as follows: LOAD( SYSTEM.bled, 50 );
|
|
|
Syntax/Parameters |
Setup(System)
{
...
} |
|
|
Options |
startup = all; display messages and progress bar at start up using startup=all or none or bar.
bled = 100; set backlight to OFF=0 or ON=100 (1-99 brightness levels available v4 PCB, v32 firmware)
wdog = 1000; set the watchdog time out period in milliseconds.
rotate = 0; set the rotation of the screen with respect to PCB. This is stored in EEPROM for use with boot messages.(0, 90, 180 or 270)
test = hide/showTouchAreas; hide or show touch areas during product development
angles = degrees; select degrees or radians for calc functions
encode = s, w, m; menu text strings can contain single byte ASCII (s), 2 bytes for UNIcode (w) or multibyte for UTF8 (m)
calibrate = y; initialise the internal touch screen calibration screen. This automatically returns to the previous page on completion. If it is necessary to abort then send SETUP( SYSTEM ) {calibrate=n;}
clkfreq = 92000000; Main external bus clock is changeable in 2MHz steps from 80MHz to 92MHz (default).
ignore = allErrors; Ignores all errors and continues execution (only recommended in test as can cause undesired results - error messages are still sent from a serial port set to debug, ie rxi=d;).
= invalidJpg; Ignores errors for unsupported JPG formats (eg progressive) and the image is skipped
= imageTooBig; Ignores errors when there's not enough memory to load image and the image is skipped
System Version
The software and hardware versions can be read to a serial port or text variable.
LOAD( RS2, VERS_IBOOT ); returns NAND bootloader version
LOAD( RS2, VERS_ILOADER ); returns main loader version
LOAD( RS2, VERS_IAPP ); returns main application version
LOAD( RS2, VERS_IMODULE ); returns module name and version
Startup Information - v42.00
Displaying of messages and progress at start up now configurable using SETUP(SYSTEM){startup=all|none|bar;}
Word 'DEMO' changed to 'PROTO' in version message as this software is still not formally released.
Touch Calibration - v47.24
Create your own calibration screen and store parameters in host.
Touch Calibration points can now be set in system setup with user
parameters.
> To use:
SETUP(system)
{
tch_loc_tlx = num; // Top Left Touch Point Location X
tch_loc_tly = num; // Top Left Touch Point Location Y
tch_val_tlx = num; // Top Left Touch Value X
tch_val_tly = num; // Top Left Touch Value Y
tch_loc_trx = num; // Top Right Touch Point Location X
tch_loc_try = num; // Top Right Touch Point Location Y
tch_val_trx = num; // Top Right Touch Value X
tch_val_try = num; // Top Right Touch Value Y
tch_loc_brx = num; // Bot Right Touch Point Location X
tch_loc_bry = num; // Bot Right Touch Point Location Y
tch_val_brx = num; // Bot Right Touch Value X
tch_val_bry = num; // Bot Right Touch Value Y
tch_loc_blx = num; // Bot Left Touch Point Location X
tch_loc_bly = num; // Bot Left Touch Point Location Y
tch_val_blx = num; // Bot Left Touch Value X
tch_val_bly = num; // Bot Left Touch Value Y
}
> also supports load(system.tch_loc_tlx,num); etc..
Touch Calibration points can also be read
> load(num,tch_loc_tlx); etc.. <- note "system." not used here
The actual touch values are obtained by using TOUCHX and TOUCHY built in
variables.
Error Message Suppression - v49.00
Error messages can be ignored/suppressed for certain situations.
SETUP( system )
{
ignore=imageTooBig; // Ignores errors when there's not enough memory to load image and the image is skipped
ignore=invalidJpg; // Ignores errors for unsupported JPG formats (eg progressive) and the image is skipped
ignore=allErrors; // Ignores all errors and continues execution (only recommended in test as can cause undesired results).
//No messages are displayed on the screen, though they are transmitted on a serial port set to debug.
}
Memory Usage Output - v49.00
A run-time memory allocation can be output of the diagnostic serial port by setting SETUP(system){test=showMemoryUse;}.
Note, that the transmit buffer should be at least 32KB otherwise transmit data may be lost.
The top location of RAM is 0x23FFFFFF.
Test Flags - v49.04
SETUP(SYSTEM){test=showLoadInfo;} displays loading file / line information on start screen
System Errors - v49.19
All system errors now allocated a fixed error number, which is displayed on the System Error Screen.
Details of the last error can be found from the built-in entities:
SYSERRNUM (S32) Error number
SYSERRSRC (TXT64) Source of error (menu file name or port name)
SYSERRPOS (S32) Error line number in source file (if applicable)
SYSERRMSG (TXT128) Error message for given error number
The variables maintain the last error information.
An error function can be specified which is called when a system error occurs:
SETUP(SYSTEM) { errFunc=funcName; }
The system error will appear on the screen then the function will be called. The error screen is then cleared by tapping the touch screen. The error function should be kept simple, as functionality is restricted, such as enabling USB port to allow updates.
If SETUP(SYSTEM) { ignore=allErrors; } is set then just the error function is called, no error screen is displayed and no touch is required.
All errors are always sent to a port set to debug (rxi=d;) independent of the ignore or errFunc settings.
Error information can be found on the website
click here
Screen Rotation - v49.25
Screen rotations of 0, 90, 180 and 270 degrees fully supported.
Use, for example, SETUP(SYSTEM){rotate=90;} at start of tuXXXa.mnu file. The value is stored in EEPROM and used to orientate boot messages etc on next boot.
Also boot startup messages centralised and rotated.
nandboot.bin V00.27
iuloader.bin V00.38
Touch Screen Calibration - Manual Save & Status
- v49.37
* Added option to save manual touch calibration figures to
EEPROM, either
SETUP(SYSTEM)
{
tch_val_tlx = 123;
...
tch_val_bly = 345;
touchSave = eeprom; // or "none" for no storage
}
or,
LOAD(SYSTEM.touchSave,eeprom);
* Added system parameter calFunc which is called when calibration is started
and finished. Reading TCH_CAL value will indicate what stage the calibration
is at.
SETUP(SYSTEM){calFunc=myFunc;}
FUNC(myFunc){LOAD(RS2,TCH_CAL);}
LOAD(SYSTEM.calibrate,y);
> myFunc will run when calibration page is shown - TCH_CAL value = 255
(calibrating)
> myFunc will run when calibration finished and previous page shown -
TCH_CAL value = 1 (done)
> TCH_CAL value = 0 when touch is not calibrated.
* Added additional retry mechanisms for saving/retrieving values from
EEPROM.
Storage
of cal figures, screen rotate, and start up text in file: tu480a.cfg -
v49.47
* To use the NAND config file for settings, add useCfg=y; to system
setup,
SETUP(SYSTEM)
{
useCfg=y;
}
* File is named tuXXXa.cfg, where XXX is module size 320, 480, 640, 800.
The file is stored in NAND in the "LIB" area.
* Typical Config File contents (note parameter values are all numeric
within the file):
usecfg=1; // Use config file: 0=no, 1=yes
sbled=100; // Start-up back light level: 0 to 100
wdog=-1; // Watchdog: -1 unset, 0 off, 1-16000 time ms
rotate=0; // Screen rotate: 0, 90, 180, 270
startup=3; // Start-up: 0=none, 1=text, 2=bar, 3=text+bar
tch_loc_tlx=19; // Touch - TL x location
tch_loc_tly=19; // Touch - TL y location
tch_loc_trx=459; // Touch - TR x location
tch_loc_try=19; // Touch - TR y location
tch_loc_brx=459; // Touch - BR x location
tch_loc_bry=251; // Touch - BR y location
tch_loc_blx=19; // Touch - BL x location
tch_loc_bly=251; // Touch - BL y location
tch_val_tlx=87; // Touch - TL x value
tch_val_tly=912; // Touch - TL y value
tch_val_trx=928; // Touch - TR x value
tch_val_try=905; // Touch - TR y value
tch_val_brx=912; // Touch - BR x value
tch_val_bry=131; // Touch - BR y value
tch_val_blx=84; // Touch - BL x value
tch_val_bly=132; // Touch - BL y value
* Changes made by SETUP(SYSTEM){} and LOAD(SYSTEM.param,val); will
modify the file.
* Following touch screen calibration, the calibration parameters will be
stored to the config file.
* The new file is compared with the file stored in NAND and only
overwritten if different to save NAND write cycles.
* When a RESET(NAND); or RESET(NANDLIB); is issued, the config file is
preserved by reading file into memory, erasing NAND,
writing the config file back to NAND.
* A RESET(FACTORY); will erase the config file.
* Parameters are read from EEPROM initially and then overwritten by
parameters from the config file.
* If an EEPROM is not fitted, then useCfg will default to y.
Start-up backlight level ''sbled'' - v49.47
* A start-up backlight can be specified.
SETUP(SYSTEM)
{
sbled = 100; // Values 0 to 100
}
* This value is used as the default level rather than the current 100%
value.
* Value is also stored in EEPROM and used for boot-up screens.
New boot code created:
nandboot.bin V00.31
iuloader.bin V00.43
|
|
|
Example |
SETUP( SYSTEM )
{
bled=100;
wdog=100;
rotate=0;
calibrate=n;
test=showTouchAreas;
angles=degrees;
startup=all;
encode=s;
clkfreq=92000000;
} |
|
|
Update Information |
Version |
Title |
Date |
Details |
49.58 |
Calibration |
07 Sep 15 |
|
* Cal complete flag now gets set after the show(prev_page) at end of calibration
|
|
00.12.00 |
Module Detection |
03 Sep 15 |
|
Moved pumaNova V1/V2+ detection to earlier in the code so EMMC bus width is known before reading config from EMMC.
|
|
49.54 |
Faster Startup |
13 Mar 14 |
|
* Improved NAND file read times. A typical 480x272 bitmap image now takes 187ms to load from NAND (was 400ms). * Improved LIB image processing time. A typical 480x272 bitmap image now processes (after loading) in 205ms (was 467ms). * Improved boot times saving about 600ms. * Improved *.tft processing in boot. Bug. If a *.tft was present on the SD card during boot then an extra about 5s was taken evaluating if the file was different from that in NAND before checking the time and dates of the files! This extra time has now been eliminated by checking the time/date first.
nandboot.bin V00.34 iuloader.bin V00.45
|
|
49.54 |
Boot splash image - new scheme |
05 Mar 14 |
|
* Following from last release, new scheme for showing splash screen added. After eeprom wipe the splash screen will not be shown until first run when a new rotate will be written - assumed 0 deg if nothing specified in system setup. * The splash image is now rotated once again with the screen rotate.
|
|
49.52 |
Support for 128M SDRAM Modules |
28 Feb 14 |
|
* Support added for new 128MB SDRAM 4.3", 5.7" and 7.0" Products * Solder links for 128M SDRAM modules. TU480 J21B PC20 TU640 J21I PC26 TU800 J21K PC30 * Boot code modified to support new modules: nandboot.bin V00.33 iuloader.bin V00.44 boot.bin V00.26 newflash.bin V00.32
|
|
49.48 |
''tuXXXa.mnu'' Module Independent Start File |
29 Nov 13 |
|
* Allows the use of a module startup file which is not dependent on the module in use. This allows for a common startup file to be used on all size displays. * For example, for a 480x272 module Looks for "tu480a.mnu" file on SD card (if fitted) and processes if found else Looks for "tuXXXa.mnu" file on SD card (if fitted) and processes if found else Looks for "tu480a.mnu" file in NAND and processes if found else Looks for "tuXXXa.mnu" file in NAND and processes if found else Run Default Startup
|
|
49.48 |
Re-Entry into Calibration causes Page Error |
21 Nov 13 |
|
* Fixed a Page error problem when touch screen calibration was entered more than once. * Module threw error as re-entry to calibration attempted to create page again. Now checks to see if page already exists.
|
|
49.47 |
Start-up backlight level ''sbled'' |
08 Nov 13 |
|
* A start-up backlight can be specified.
SETUP(SYSTEM) { sbled = 100; // Values 0 to 100 }
* This value is used as the default level rather than the current 100% value. * Value is also stored in EEPROM and used for boot-up screens.
New boot code created: nandboot.bin V00.31 iuloader.bin V00.43
|
|
49.47 |
Storage of cal figures, screen rotate, and start up text in file: tu480a.cfg |
01 Nov 13 |
|
* To use the NAND config file for settings, add useCfg=y; to system setup,
SETUP(SYSTEM) { useCfg=y; }
* File is named tuXXXa.cfg, where XXX is module size 320, 480, 640, 800. The file is stored in NAND in the "LIB" area. * Typical Config File contents (note parameter values are all numeric within the file):
usecfg=1; // Use config file: 0=no, 1=yes sbled=100; // Start-up back light level: 0 to 100 wdog=-1; // Watchdog: -1 unset, 0 off, 1-16000 time ms rotate=0; // Screen rotate: 0, 90, 180, 270 startup=3; // Start-up: 0=none, 1=text, 2=bar, 3=text+bar tch_loc_tlx=19; // Touch - TL x location tch_loc_tly=19; // Touch - TL y location tch_loc_trx=459; // Touch - TR x location tch_loc_try=19; // Touch - TR y location tch_loc_brx=459; // Touch - BR x location tch_loc_bry=251; // Touch - BR y location tch_loc_blx=19; // Touch - BL x location tch_loc_bly=251; // Touch - BL y location tch_val_tlx=87; // Touch - TL x value tch_val_tly=912; // Touch - TL y value tch_val_trx=928; // Touch - TR x value tch_val_try=905; // Touch - TR y value tch_val_brx=912; // Touch - BR x value tch_val_bry=131; // Touch - BR y value tch_val_blx=84; // Touch - BL x value tch_val_bly=132; // Touch - BL y value
* Changes made by SETUP(SYSTEM){} and LOAD(SYSTEM.param,val); will modify the file. * Following touch screen calibration, the calibration parameters will be stored to the config file. * The new file is compared with the file stored in NAND and only overwritten if different to save NAND write cycles. * When a RESET(NAND); or RESET(NANDLIB); is issued, the config file is preserved by reading file into memory, erasing NAND, writing the config file back to NAND. * A RESET(FACTORY); will erase the config file. * Parameters are read from EEPROM initially and then overwritten by parameters from the config file. * If an EEPROM is not fitted, then useCfg will default to y.
|
|
49.44 |
Problem with reset affecting modules with battery fitted |
10 Oct 13 |
|
A problem can occur that results in the module being unable to power up correctly. This is related to the RTC and only affects modules with a battery (or external VBATT supply).
If a battery is attached and power down occurs when a Real Time Clock interrupt is pending, the outstanding interrupt is retained in battery backed RAM. When re-powering the module, the pending RTC interrupt is triggered before initialisation of the RTC registers causing a lock up.
The solution was to add code to clear any pending RTC interrupts during initialisation.
Fixed in boot.bin V00.24 nandboot.bin V00.30
|
|
49.44 |
Nesting of priority INT()s |
09 Oct 13 |
|
New functionality has been added to support nesting of priority INT()s, ie a priority interrupt can be interrupted by another priority interrupt with a higher priority (this is now the default behaviour).
A system setup variable has been added to disable this functionality. SETUP(SYSTEM){ intNest = y | n; } // default = y;
For 'y', priority INT()s can be interrupted by higher priority INT()s For 'n', priority INT()s run to completion, then the highest pending priority INT() is processed next.
|
|
49.42 |
PWM / Backlight Conflict |
06 Sep 13 |
|
* Fixed a problem with conflict with backlight channel. Caused a problem if BLED was set or error screen (as BLED is set to 100%)
|
|
49.39 |
Updating Firmware - ''NAND Error - need physical block'' Error |
13 Jun 13 |
|
When boot code is updated via a serial link (RS2, USB, AS1 etc), the error "NAND Error - need physical block" is reported.
It was found that the boot block range check was invalid when searching for "good" blocks. Fix available in V00.49.39
|
|
49.37 |
Default Start-up - RS4 & USB |
10 Jun 13 |
|
* Added RS4 at 115200,8,N,1 to ports enabled during default (ie no SD card found) start-up. RS4 enabled in command mode. * Set USB receive buffer to 1MB instead of 8KB.
|
|
49.37 |
Firmware Storage - Sequential Bad Block Problem - New Boot Files Created |
10 Jun 13 |
|
* NAND fix to handle sequential bad blocks in saving of *.tft, nandboot.bin and iuloader.bin files. (Chances of two bad blocks is less than 1 in 10000) * Updates applied to > tu04937.tft > newflash.bin V00.29 > iuloader.bin V00.40
|
|
49.25 |
Screen Rotation - Screen rotations of 0, 90, 180 and 270 degrees now fully supported. |
01 Nov 12 |
|
* Screen rotations of 0, 90, 180 and 270 degrees now fully supported. * Use, for example, SETUP(SYSTEM){rotate=90;} at start of tuXXXa.mnu file. The value is stored in EEPROM and used to orientate boot messages etc on next boot. * Also boot startup messages centralised and rotated. nandboot.bin V00.27 iuloader.bin V00.38
|
|
49.21 |
TOUCH - Added support for ICT capacitive touch panel. |
11 Oct 12 |
|
Added support for ICT capacitive touch panel. The follwing code must me used to enable the ICT touch screen:
SETUP(TOUCH) { type = ict; }
|
|
49.19 |
System Errors - All system errors now allocated a fixed error number, which is displayed on the System Error Screen. |
05 Oct 12 |
|
All system errors now allocated a fixed error number, which is displayed on the System Error Screen. Details of the last error can be found from the built-in entities: SYSERRNUM (S32) Error number SYSERRSRC (TXT64) Source of error (menu file name or port name) SYSERRPOS (S32) Error line number in source file (if applicable) SYSERRMSG (TXT128) Error message for given error number * The variables maintain the last error information. * An error function can be specified which is called when a system error occurs: SETUP(SYSTEM) { errFunc=funcName; } * The system error will appear on the screen then the function will be called. The error screen is then cleared by tapping the touch screen. The error function should be kept simple, as functionality is restricted, such as enabling USB port to allow updates. * If SETUP(SYSTEM) { ignore=allErrors; } is set then just the error function is called, no error screen is displayed and no touch is required. * All errors are always sent to a port set to debug (rxi=d;) independent of the ignore or errFunc settings. * Error information can be found on the website www.itrontft.com/tft/Individual%20Functions/system-errors.htm * Fixed problem where some errors were being reported incorrectly.
|
|
49.08 |
Calibration - Modified the TCH_CAL value to indicate when calibration is taking place. |
11 Jul 12 |
|
Modified the TCH_CAL value to indicate when calibration is taking place. 0: touch screen not calibrated 1: touch screen calibrated \\FF: touch screen calibration in progress Use LOAD( u8var, TCH_CAL ); to get the value.
|
|
49.04 |
Test Flags - Added SETUP(SYSTEM){test=showLoadInfo;} to display loading file / line information on start screen. |
15 Jun 12 |
|
Added SETUP(SYSTEM){test=showLoadInfo;} to display loading file / line information on start screen
|
|
49.02 |
Loss of Touch Calibration |
15 May 12 |
|
Added retry mechanism for EEPROM when retrieving touch screen calibration figures during boot. This has not yet been proven to fix the problem as unable to reliably replicate calibration figure loss in-house. * The screen calibration state can found by LOAD( var, TCH_CAL );. If var is 1 then the screen is calibrated else if 0 then the screen is uncalibrated.
|
|
49.00 |
EEPROM - Fixed problem retrieving entities with maximum name length. |
22 Mar 12 |
|
Fixed problem retrieving entities with maximum name length. Fixed problem with non-array entities not having array properties cleared. Fixed eepprom array data retrieval on power-up problem. EEPROM variable values being repeated when loaded into a text string. This was a problem with the maxlen property not being set correctly when a variable was read from EEPROM. The data stored in EEPROM was correct, it was the variable creation that was at fault. Fixed problem with setting decimal and format for EEPROM variables
|
|
49.00 |
AC97 Codec Support |
22 Mar 12 |
|
Added support for the MCBK-AC97 audio cards.
SETUP(AC97) { active = Y/N; // enabled or not line_gain_L = n; // 0 - 63 line_gain_R = n; // 0 - 63 head_vol_L = n; // 0 - 63 head_vol_R = n; // 0 - 63 mic_gain_L = n; // 0 - 63 mic_gain_R = n; // 0 - 63 rec_sel = n; // MIC / LINE rec_rate = n; // 0 - 48000 sp_vol = n; // 0 - 63 treble = n; // 0 - 15 bass = n; // 0 - 15 threeD = n; // 0 - 15 pbdonefnc = fncname; // function that is called when playback is finished pbprogfnc = fncname; // function that is called every 100ms during playback }
Initial Supported functions :- LIB(name,"SDHC/filename.wav"); // loads wav file into WAV entity in SDRAM LOAD(AC97, name); // plays wav file fom SDRAM
* During playback the system variables AC97LEN_H, AC97LEN_M, AC97LEN_S, AC97LEN_D hold the length (hours, minutes, seconds, 1/10 sec) and AC97PRG_H, AC97PRG_M, AC97PRG_S, AC97PRG_D hold the current play position.
Further development for direct SDHC play and recording.
|
|
49.00 |
Commands - The limitation of 256 characters for each parameter in a command has been increased to 1024 characters. |
22 Mar 12 |
|
The limitation of 256 characters for each parameter in a command has been increased to 1024 characters. The maximum length of a command remains at 8192 characters. Fixed problem when a 'proc' has been specified and the port is in command mode. The 'proc' is now correctly ignored when in command mode.
|
|
49.00 |
Error Message Suppression - Error messages can be ignored/suppressed for certain situations. |
22 Mar 12 |
|
Error messages can be ignored/suppressed for certain situations
SETUP( system ) { ignore=imageTooBig; // Ignores errors when there's not enough memory to load image and the image is skipped ignore=invalidJpg; // Ignores errors for unsupported JPG formats (eg progressive) and the image is skipped ignore=allErrors; // Ignores all errors and continues execution (only recommended in test as can cause undesired results). //No messages are displayed on the screen, though they are transmitted on a serial port set to debug. }
|
|
49.00 |
Error Screen - Fixed bug with display of error message pop-up. |
22 Mar 12 |
|
Fixed bug with display of error message pop-up.
|
|
49.00 |
Firmware Updating |
22 Mar 12 |
|
Support has been added to update the module firmware via a serial port / USB. > LOAD( NAND, "EXT/xxxxxxxx.tft?size=xxxx&usechecksum=xx" ); > LOAD( NAND, "EXT/nandboot.bin?size=xxxx&usechecksum=xx" ); > LOAD( NAND, "EXT/iuloader.bin?size=xxxx&usechecksum=xx" ); Note: The checksum parameter should be used to help detect problems with data corruption. Note: It is important that power is not removed during the updates.
|
|
49.00 |
Memory Usage Output |
22 Mar 12 |
|
A run-time memory allocation can be output of the diagnostic serial port by setting SETUP(system){test=showMemoryUse;}. Note, that the transmit buffer should be at least 32KB otherwise transmit data may be lost. The top location of RAM is 0x23FFFFFF.
|
|
49.00 |
Rotary Encoder |
22 Mar 12 |
|
Added rotary encoder function. It allows up to 2 encoders to be connected. The ports used for A/B can be any available I/O ports. The rotary encoders available on the Accessories page allow a 10way IDC cable to control 2 encoders with center push switches.
SETUP(ENC) { active = 1/2/12; // N=none active, 1=enc1 active, 2 = enc2 active, 12 = both active a1 = \\xx; // port number for enc1 A channel b1 = \\xx; // port number for enc1 B channel a2 = \\xx; // port number for enc2 A channel b2 = \\xx; // port number for enc2 B channel debounce1 = n; // debounce time in ms for enc1 (1 - 100ms) debounce2 = n; // debounce time in ms for enc2 (1 - 100ms) timeout1 = n; // timeout period in ms for enc1 (1 - 1000ms) timeout2 = n; // timeout period in ms for enc2 (1 - 1000ms) mode1 = n; // encoder type (1 or 2) for enc1 mode2 = n; // encoder type (1 or 2) for enc2 }
INT(name, ENC1/ENC2, fnc); * System variables ENCVAL1 or ENCVAL2 are type S32 and hold the current count values for each encoder. * LOAD(ENCVAL1,n); presets encoder variable value to required number n. * The value of ENCVALn is decremented by the number of clicks left and incremented by the number of clicks right. * Timeout specifies the time from the last rotation event until the INT is triggered.
|
|
49.00 |
Capacitive Touch - Added support code for MCBK39x cap touch controller. |
22 Mar 12 |
|
Added support code for MCBK39x cap touch controller. Uses I2C to communicate with mXT224 controller. SETUP(TOUCH) { type = cap; // default is 'res' for resistive touch width = 480; // default to width of display height = 272; // default to height of display xnum = 19; // number of X electrodes ynum = 11; // number of Y electrodes gain = 0; // gain of ADC threshold = 25; // debounce = 3; // address = 75; // I2C address of controller inactive=1000; // time in milliseconds (0=off) }
* After setup all touch parameters are handled in the same way as in resistive touch mode. * As well as the I2C lines P27 is setup as an input (mXT224 /CHG line) * Touch Inactive - Added interrupt capability for when touch screen has been inactive (ie not touched) for a user settable duration. LOAD(touch.inactive,500); INT(name,TOUCHI,function);
|
|
48.24 |
Comments /*...*/ |
10 Mar 12 |
|
The use of block comments /* and */ is now permitted inside inline functions (between []). Use of block comments elsewhere remains to be adde
|
|
47.24 |
Touch Calibration |
31 Oct 11 |
|
Create your own calibration screen and store parameters in host * Touch Calibration points can now be set in system setup with user parameters. > To use: setup(system) { tch_loc_tlx = num; // Top Left Touch Point Location X tch_loc_tly = num; // Top Left Touch Point Location Y tch_val_tlx = num; // Top Left Touch Value X tch_val_tly = num; // Top Left Touch Value Y tch_loc_trx = num; // Top Right Touch Point Location X tch_loc_try = num; // Top Right Touch Point Location Y tch_val_trx = num; // Top Right Touch Value X tch_val_try = num; // Top Right Touch Value Y tch_loc_brx = num; // Bot Right Touch Point Location X tch_loc_bry = num; // Bot Right Touch Point Location Y tch_val_brx = num; // Bot Right Touch Value X tch_val_bry = num; // Bot Right Touch Value Y tch_loc_blx = num; // Bot Left Touch Point Location X tch_loc_bly = num; // Bot Left Touch Point Location Y tch_val_blx = num; // Bot Left Touch Value X tch_val_bly = num; // Bot Left Touch Value Y } > also supports load(system.tch_loc_tlx,num); etc.. * Touch Calibration points can also be read > load(num,tch_loc_tlx); etc.. <- note "system." not used here
|
|
44.00 |
Calibration - Calibration now supported with screen rotation of 180 deg (as well as 0 deg). |
20 May 11 |
|
Calibration now supported with screen rotation of 180 deg (as well as 0 deg)
|
|
42.00 |
Startup Displaying of messages and progress at start up now configurable using SETUP(SYSTEM){startup=all|none|bar;} |
09 Mar 11 |
|
Displaying of messages and progress at start up now configurable using SETUP(SYSTEM){startup=all|none|bar;} Rotation now stored for startup messages (not currently implemented in boot S/W) - only 0 and 180 deg supported Word 'DEMO' changed to 'PROTO' in version message as this software is still not formally released.
|
|
36.00 |
Touch Screen Calibration - The touch screen can now be calibrated by using SETUP(SYSTEM){calibrate=y;}. |
23 Nov 10 |
|
The touch screen can now be calibrated by using SETUP(SYSTEM){calibrate=y;} This can be included in the initialization phase or sent at any time via a serial port command or key input. To abort send SETUP(SYSTEM) {calibrate=n;} . This is not required if calibration is completed. The calibration will automatically return to the previous page once complete. Before calling the calibration routine, some parameters may be set up in your menu file.
Ø The text on the screen can be changed by setting up your own text var called 'CalTextVar'.
Ø The text format on the screen can be changed by setting up your own style 'CalTextStyle'.
Ø The page layout can be changed by setting up you own style 'CalPageStyle'.
Ø The target can be changed by setting up your own style 'CalTargetStyle'.
In each of the cases, put these commands into your menu file and edit. Declare these before sending the calibrate command.
Var(CalTextVar,"Press and hold the stylus on the\\0A\\0Dcentre of the target. Repeat as the\\0A\\0Dtarget moves around the screen.",CalTextVarStyle); Style(CalTextStyle,TEXT){font=Ascii16;col=skyBlue;maxLen=64;maxRows=12;curRel=TC;} Style(CalPageStyle,PAGE){back=black;} Style(CalTargetStyle,DRAW){type=box;col=white;width=1;maxX=10;maxY=10;curRel=CC;}
|
|
24.00 |
System Setup - Watchdog and LED backlight. |
25 Aug 10 |
|
Watchdog and LED backlight * Watchdog is now enabled at startup with boot.bin v00.03 * Use LOAD( BLED, 100 ); to change backlight level
|
|
|
|