Aplikačné poznámky - HTML
Software for ELNEC programmers/simulators and Windows XP meddle feature.
It may happen, the Elnec programmers/simulators show random errors during work. The error may be reported by software as communication error or programming error or error during selftest procedure.
The problem is caused by very "interesting" feature of WIN XP operating system. The WIN XP periodically check presence of some attached device at parallel ports. Using logic analyzer we've detected periodical attempts from WIN XP core to LPT port, named "compatibility test" (the WIN XP meddle to another process !). The result of it is - of course - the damage (change) the LPT port register content or the LPT port settings change. Because our SW suppose none the another process use LPT port where is programmer/simulator attached, the programmer/simulator fails. But be sure, this error arise from this WINDOWS XP meddle feature. Note - other WIN version (95-2000) and some of first issues of WIN XP features none such funny behavior.
We found two solutions. The fist one - to disable a LPT port, to which is the programmer connected, from current profile. You need to reboot the PC after this setting. Then all works fine. The description, how to remove the respective LPT port from current profile follows.
The second one - to disable a periodical LPT port pooling of all LPT ports. You need to download a short WinXP_LPT_port_pooling_off.REG file and run it to modify WIN-XP registers content. You need also reboot the PC after this setting. Then all works fine. The description, how to do it, follows.
Take please this recommendations valid for the version of SW below 1.42 only, the next version of SW (1.42 including) are able to fix this WIN-XP behavior.
The short description, how to remove the respective LPT port from current profile:
- click to "Start" menu
- click (right mouse button) to "My computer" item
- select menu "Properties"
- in the "System properties" dialog select "Hardware" page
- click to "Device manager" button
- in the "Device manager" dialog select "Ports (Com & LPT)" (double click)
- it will show the list of LPTx and COMx ports in the form (example) "Printer port (LPTx)" - the x is LPT port number
- double click to selected LPT port show properties to this port
- in the "Printer port (LPTx) - properties", page "General", part "Device usage" select "Do not use this device" choice and enter settings by OK button.
- there is necessary to restart a PC at end of this procedure
Above mentioned procedure works in case of standard LPT port addresses (378h, 278h, 3BCh). There exist none solution for LPT-PCI ports and LPT ports, located at addresses 1000h and above.
Note: You need to deselect LPT port to which is the programmer connected. To find out the LPTx name you may use next procedure:
- look at PG4UW screen, the "programmer" window - it show LPT port address
- in the Resources window of each LPT port (use "Device manager" -> "Ports (Com & LPT)" -> "Printer port (LPTx) - properties") check the first address of Input/Output range
- you need to deselect this LPTx port, which base address correspond to address shown at PG4UW screen
The short description, how to modify WIN-XP registers using WinXP_LPT_port_pooling_off.REG file.
- 1. save .reg file to your local folder
- 2. check if you are logged in system as user with administrator privileges
- 2. run .reg file (by mouse double click or Enter key on this file )
- 3. question like this will be displayed "Are you sure you want to add the information in c:\winxp1.reg to the registry?"
- 4. confirm the question by click on Yes button
- 5. message like this should display "Information in c:\winxp1.reg has been successfully entered into the registry."
- 6. the new record is successfully registered
- 7. restart your computer to apply new changes






