Professional Documents
Culture Documents
PonyProg2000 documentation
by
http://www.LancOS.com
Contents
1 Installing
2 Menu Commands
2.1 File
2.1.1 New Window
2.1.2 Open Device File
2.1.3 Open Program (FLASH) File
2.1.4 Open Data (EEPROM) File
2.1.5 Save Device File
2.1.6 Save Device File As
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 2 z 38
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 3 z 38
5 FAQ
Appendix
A
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 4 z 38
1 Installing
Installing PonyProg depend on the system you have.
With Windows95/98/ME or NT/2000/XP just run the Setup.exe and follow the instructions.
With RedHat Linux 6.2/7.0 login as root and execute the command
# tar xvfzP ponyprog-X.XXX.tar.gz
# chmod +s /usr/local/bin/ponyprog2000 (optional)
If you want to use parallel port interfaces without run PonyProg as root you need also a 2.4.x kernel and parport, parport_pc and ppdev kernel modules.
insmod all three modules before to execute PonyProg.
If you want to use serial port interfaces be sure you have the rights to read/write the /dev/ttySx devices and /var/lock directory. With RedHat you may
want to add your user to uucp group.
The first time you run the program remember to select the interface and port you use with the Setup. If the program report a message like "The interface
don't respond" when started, it means that you not have configured the port properly, or the interface is not connected.
You need also to run Calibration in most cases.
2 Menu commands
The following is an explanation of each menu command.
2.1 File
2.1.1 New Window
Open a new window, each window display a buffer for the device selected.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 5 z 38
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 6 z 38
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 7 z 38
This command is available only for splitted Program/Data devices. The buffer is splitted in two different part for these devices: the first part for program
memory and the second part for data memory. This command save the content of current window buffer program memory to a file. A dialog box asks
you the name of the file to save and the file format by selecting the extension.
2.1.10 Print
Open a dialog box where you can select the printer name and options. If you press OK the content of the current window will be printed.
2.1.11 Close
Close the current window, if there is only one opened window a dialog window asks you if you want to exit; you can choose Yes or No. If the current
window buffer is modified a dialog window asks you if you want to save the content in a file before to close the window.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 8 z 38
2.1.12 Exit
Close all the opened window and exit the program. If there is a modified window buffer a dialog window asks you if you want to save the content to a
file before to close the window.
2.2 Edit
2.2.1 Edit note
Open a dialog box where you can edit a Chip id and a note. These two fields are saved within the window buffer if you use the e2p file format (see
Open). These two fields are free text editing, and are useful for a description of the device programmed and the meaning of its content.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 9 z 38
PIC 16F84
AT89S8252
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 10 z 38
Microchp 24C65
The dialog ask you to insert the first block and the number of blocks to lock. When the device is locked you can't do a "write security" or a "write high
endurance" anymore. To lock the device the number of blocks must be greater than 0.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 11 z 38
the text entry dialog by the use of the right mouse button. Note that you can enable/disable only the edit mode of the current window, so if there are
more than one buffer window opened, the edit mode of other windows are left unchanged.
2.3 Device
Select the type of current device. You have to select the device type before any commands (read, writing, open, save, ...). Selecting an "Auto XXX"
type means that the device type is determined by the program during the read or write operation, this feature is useful when you need to query a device
to know if it works and which device it is. There are some different device family: the I˛C Bus eeproms that are addressed with 8 bit word, the I˛C Bus
eeproms that are addressed with 16 bit word, the Microwire eeproms with 8 bit organization, the Microwire eeproms with 16 bit organization, the SPI
eeproms, the AVR microcontrollers, the PIC 16 microcontrollers, the IMBus eeproms and SDE2506 eeprom. You can select the device family in the
tool bar with the combo-box, or directly the device type in the menu. The current device type is stored in the .INI file, so the next time you run the
program it's recalled. To read and write I˛C Bus eeproms other than 24xx (i.e. the SDE2526, SDA2546, SDA2586, SDA3546, SDA3586) select the type
"24XX Auto".
The 24C01 can be readed but not writed, you can read it as a 2402 or 24XX Auto device. Note that you can often replace a 24C01 eeprom with a new
24C02 eeprom, because it's fully compatible to the 24C01.
Several microwire eeproms support two types of word organization: 16 bit organization and 8 bit organization. The organization is selected with a pin
connected to VCC or GND. SI-Prog adapter connect this pin for 16 bit organization, however some devices support only 8 bit organization.
2.4 Command
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 12 z 38
If you want to stop the current read just press the "Abort" button.
Finally a dialog box showing the result of the operation appears.
If the program report the message "Device not responding" means that you missed to connect the device to read, or the interface is not configured
properly (see the Setup). Note that only the devices that support probing report this type of message, other device simply read all 0's of FF's (if the
device is missed). The devices that support probing are the 24XX, the AVR and some PIC. In the case of AVR device selected, the program can report
the message "Device locked" in case of the locked bits was programmed. Even some preproduction devices don't support auto probing. You can't read a
locked device, to program it see Write.
Since version 1.15c if you select an AVR device (AT90S2313 for example) and read it, the program try to probe the device first. If the device is
missing, or the device is locked, or the device is a preproduction device a dialog box appears. It asks you if you want to abort operation, retry or ignore
the error. In case of a preproduction device just select "Ignore".
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 13 z 38
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 14 z 38
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 15 z 38
2.4.12 Erase
Erase all the content of a device to FF's (both program and data memory). Note that this command is implemented only for AVR and PIC devices.
2.4.13 GetInfo
Shows some informations about the device. Some of these informations are showed also in the status bar at the bottom of the main window.
Size of the buffer, it's equal to the size of the device in bytes. In the case of AVR or PIC devices, it's equal to the sum of the program memory size
plus the data memory size.
CRC calculated on the content of the buffer.
Bank roll over. It's a characteristic of some old I˛C Bus eeprom (24XX). In some case uou can't replace a "roll-over eeprom" with a "no roll-over
eeprom".
Security and High endurance block. The Microchip 24C65 has a feature to protect some block from writing, or enable some block to have 10
milions writing cycles. (see edit to change it).
2.4.14 Reset
Reset the device. It's useful with in-system applications.
2.4.15 Program
Execute a customizable sequence of commands. You can select the commands to execute with program options
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 16 z 38
2.5 Utility
2.5.1 Clear Buffer
Clear the current window buffer with FF's.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 17 z 38
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 18 z 38
2.6 Setup
2.6.1 Interface Setup
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 19 z 38
Open a dialog box where you can select the interface type and the port number where the hardware is connected. You can choose from several hardware
interfaces (see PonyProg Hardware interfaces for more info). Note that only SI Prog support all devices.
SI-Prog interface select "serial" check-box and choose "SI-Prog API" or "SI-Prog I/O" in the combo-box. Windows 95/98/ME and NT/2000/XP
work either with "PonyProg API" and "PonyProg I/O", but the latter is faster. To use the "SI-Prog I/O" with Linux you need to run PonyProg as
root. Then select the COM port you want to use, if some COM ports are disabled it means that they are used by other programs (usually by the
mouse driver or modem), or not installed or access denied (may need root privileges). If you use added COM ports (PCI or PCMCIA cards) you
must use "SI-Prog API". Note that USB2RS232 adapters often don't work or are very slow.
To access COM ports from user mode in Linux you need the rights to write /dev/ttyS0,1,... devices and /var/lock directory and select SI-Prog API
(this is the preferred way).
AVR ISP Parallel port interface select "parallel" check-box and choose "Avr ISP API" or "Avr ISP I/O" in the combo-box.
WindowsNT/2000/XP work only with "Avr ISP I/O". To use the "Avr ISP I/O" with Linux you need to run PonyProg as root. Then select the
LPT port you want to use. Note that if you want to program the AT89Sxx device you need to select the "Invert Reset" check-box. To use this
interface with Linux you need a 2.4.x or newer kernel and parport, parport_pc and ppdev kernel modules and you need the rights to
write /dev/parport0,1,... devices.
You can use this interface to read/write the AVR micros and SPI eeproms.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 20 z 38
Ludipipo/JDM interface select "JDM API" or "JDM I/O". Then select the COM port you use. All the considerations for "SI-Prog" interface
above are valid for JDM too. You can use this interface to read/write the PIC16x84 and 24Cxx eeproms. If you want to use JDM interface to
program 24Cxx devices you have to connect pin 7 of the 24Cxx to GND (schematics are wrong).
Easy I˛CBus interface select the "parallel" check-box, then select the LPT port you want to use. All the considerations for "Avr ISP" above are
valid for "EasyI2CBus" too.
DT-006 interface This are the simplest interface for AVR programming (you can find the board on Dontronics site). However I strongly suggest
to use the buffered and safer "Avr ISP" interface above, especially for ISP, since the buffer go in Hi-Z state after programming.
2.6.2 Calibration
Calibration tunes the serial bus speed for your computer. When you run Calibration be sure that PonyProg is the only program running in the PC, and
the hard disk is idle (look at the HD led). If your PC is busy because it's performing other tasks the Calibration thinks your PC is slower than actual
speed, and all I/Os are performed without proper delay.
After the Calibration you can choose the speed for every serial bus modifying the following parameters in the ponyprog.ini (.PonyProgrc under Linux)
file:
Every parameter can be assigned the value ULTRASLOW, VERYSLOW, SLOW, NORMAL, FAST or TURBO.
Avoid to use the TURBO value because it means "no delay", and probably it doesn't work on your PC, especially with the I/O driver.
Just for example my PC (Pentium MMX 200MHz) run I˛CBus at about 80Khz with NORMAL, and 110 Khz with FAST. Note that a lot of I˛CBus
devices don't work at speed above the 100KHz.
A special note for AVR devices. The AVR need a valid system clock to be programmed via SPI and the max frequency of the SPI bus depends on this
system clock. So if you changed the fuse (even accidentally) to use low clocks like 1MHz or 32.768KHz you must change the
SPIBusSpeed=VERYSLOW or ULTRASLOW to access the AVR anymore. If you have to use such low clocks I suggest to program the flash and
eeprom first, and at last program the security and fuse bits.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 21 z 38
3 Hardware interfaces
PonyProg supports several hardware interfaces, however note that only with SI-Prog interface you are able to program all the devices.
Next paragraphs show to you all the hardware interfaces in detail.
3.1 SI-Prog
3.1.1 The main board
Connect the DB9 connector to PC COM port using standard serial cable.
Connect J2 connector to the correct adapter observing polarity (look at pin 1 and pin 10).
Some eeproms (especially old SDE and SDA eeproms) need external power for a correct programming.
To use external power you need to connect a 9V battery to J9 and move JP2 to "ext" position.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 22 z 38
observing polarity. Insert the eeprom in the socket with the signature: 93Cx6 or 93Cx6X depending on the exact device model. Note that some devices
support only 8 bit organization, look at the following table to know what socket to use and menu device to select.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 23 z 38
(*) If you experiment problems during the “write” operation, use the “Ext” power. “Int” power may not work on some PC, it depends on how much current is capable your PC COM
port. If you don't use the LM2936Z-5 use the “Ext” power with ALL devices.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 24 z 38
(*) If you experiment problems during the “write” operation, use the “Ext” power. “Int” power may not work on some PC, it depends on how much current is capable your PC COM
port. If you don't use the LM2936Z-5 use the “Ext” power with ALL devices.
To use external power you need to connect a 9V battery to J9 and move JP2 to "ext" position.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 25 z 38
Connector for Vdd external power. You need to provide an external power (9V, i.e.battery) when the Vdd drops under
5 Volts during programming. This may happen in three cases:
J9
1. your COM port don't provide enaugh current
2. the device sink too much current (i.e. N-Mos devices)
3. you replace the LM2936Z-5 with a 78L05
BT1 Connector for Vpp battery generated power. PIC16Fxxx devices need a battery to generate the Vpp = Vdd + 9V
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 26 z 38
6 6
7 7
8 8
9 9
It's sometime called "modem cable", however check that all pins are connected. Avoid to use "null modem cable"s.
4 Scripts
PonyProg SCRIPT is a tool to automate programming. A script is a text file with extension .e2s containing a sequence of commands to execute. Every
line contain a command, lines starting with the character # are skipped (comments) as well as blank lines.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 27 z 38
CLEARBUFFER
LOAD-PROG flash.hex
LOAD-DATA eeprom.hex
PAUSE "Connect and powerup the circuit, are you ready?"
READ-CALIBRATION 0x3ff
ERASE-ALL
WRITE&VERIFY-ALL
Save the file with extension .e2s (for example script.e2s) and then run:
> ponyprog2000.exe script.e2s
PonyProg will startup, select the ATtiny12 device, clear the buffer, load flash and eeprom files, read the osc.calibration to location 0x3ff in the buffer
and then program the device with flash, eeprom, fuses and lock bits. When finished PonyProg exit.
If you use the avr-gcc compiler you will find useful to call PonyProg directly from the make file.
Insert the following lines in your makefile and then launch "make isp"
ISPEXE = c:/programmi/ponyprog2000/ponyprog2000.exe
MCU = atmega128
TRG = myapp
isp: $(TRG).hex $(TRG).eep
echo -e "SELECTDEVICE $(MCU)\nLOAD-PROG $(TRG).hex\nLOAD-DATA $(TRG).eep\nWRITE&VERIFY-ALL" >isp.e2s
$(ISPEXE) isp.e2s
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 28 z 38
CLEARBUFFER
DELAY <msec>
EDIT-SECURITY
ERASE-ALL
FILLBUFFER [val][from][to]
LOAD-ALL [file][relocation_offset]
LOAD-PROG [file][relocation_offset]
LOAD-DATA [file][relocation_offset]
PAUSE [message]
READ-ALL
READ-CALIBRATION <address>[mem][osc_index]
READ-DATA
READ-PROG
READ-FUSE
READ-LOCK
RESET
SAVE-ALL [file | '--'][file_type]
SAVE-DATA [file | '--'][file_type]
SAVE-PROG [file | '--'][file_type]
SELECTDEVICE <device>
SERIALNUMBER [value][start][size][mem][format][autoinc]
VERIFY-ALL
VERIFY-DATA
VERIFY-PROG
WRITE-ALL
WRITE-DATA
WRITE-PROG
WRITE-FUSE [bits]
WRITE-LOCK [bits]
WRITE&VERIFY-ALL
WRITE&VERIFY-DATA
WRITE&VERIFY-PROG
[ ] optional argument
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 29 z 38
Description:
Any line starting with # character is considered as a comment and skipped.
SELECTDEVICE <device>
Description:
Select the device model to read/write.
Example:
SELECTDEVICE ATMEGA128
LOAD-ALL [file][relocation_offset]
LOAD-DATA [file][relocation_offset]
LOAD-PROG [file][relocation_offset]
Description:
LOAD-ALL load the whole content of the selected device from the file specified, this command is useful to load PIC and EEPROM
devices with HEX or BIN format, or is useful to load every devices with E2P files.
LOAD-PROG load only the program FLASH portion of the device (useful with the AVR)
LOAD-DATA load only the data EEPROM portion of the device (useful with the AVR)
If no file is specified then open a file dialog to choose the file to load. The relocation_offset is an optional argument useful if you want to
load at memory addresses different from that specified in the file. In case of binary file you specify the address from which start to load the
buffer.
Example:
LOAD-PROG prog_memory.hex
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 30 z 38
LOAD-ALL memory.bin 0x100 (skip the first 256 bytes of the buffer)
Description:
SAVE-ALL save the whole content of the selected device to the file specified.
SAVE-PROG save only the program FLASH portion of the device (useful with the AVR)
SAVE-DATA save only the data EEPROM portion of the device (useful with the AVR)
If no file is specified it saves to the current file name, in case of no current file name it opens the file dialog to choose a file name. If the --
string is specified it opens the file dialog to choose a new file name. If you specify the file_type it saves the buffer in the selected file
format, useful to convert a file from one type to another.
file_type can be:
- e2p to select the default E2P file used by PonyProg
- bin to select a raw binary format
- csm to select a custom CSM file format used by some TV repairer
- intel-hex to select standard INTEX-HEX text format
- mot-srec to select standard MOTOROLA SREC text format
Example:
SAVE-DATA data_memory.hex intel-hex
SAVE-ALL -- (save all the device and ask the file name)
READ-ALL
READ-DATA
READ-PROG
Description:
READ-ALL read the whole content of the selected device to the current buffer
READ-PROG read only the program FLASH portion of the device (useful with the AVR or PIC)
READ-DATA read only the data EEPROM portion of the device (useful with the AVR or PIC)
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 31 z 38
Example:
READ-ALL
WRITE&VERIFY-ALL
WRITE&VERIFY-DATA
WRITE&VERIFY-PROG
Description:
WRITE&VERIFY-ALL write and then verify the whole content of the selected device reading from the buffer
WRITE&VERIFY-PROG write and then verify only the program FLASH portion of the device (useful with the AVR or PIC)
WRITE&VERIFY-DATA write and then verify only the data EEPROM portion of the device (useful with the AVR or PIC)
WRITE&VERIFY commands require PonyProg version 2.05 or more recent. Usually you will use the WRITE&VERIFY, not the WRITE
and then the VERIFY command because the former verify only programmed locations instead the latter verify all the buffer (slower).
Example:
WRITE&VERIFY-PROG
WRITE-ALL
WRITE-DATA
WRITE-PROG
Description:
WRITE-ALL write the whole content of the selected device reading from the buffer
WRITE-PROG write only the program FLASH portion of the device (useful with the AVR or PIC)
WRITE-DATA write only the data EEPROM portion of the device (useful with the AVR or PIC)
Example:
WRITE-ALL
VERIFY-ALL
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 32 z 38
VERIFY-DATA
VERIFY-PROG
Description:
VERIFY-ALL read and compare the whole content of the selected device against the buffer
VERIFY-PROG verify only the program FLASH portion of the device (useful with the AVR or PIC)
VERIFY-DATA verify only the data EEPROM portion of the device (useful with the AVR or PIC)
Example:
VERIFY-ALL
ERASE-ALL
Description:
ERASE-ALL erase the whole content of the selected device. Usually this operation bring all the locations of the selected device to FF.
Example:
ERASE-ALL
EDIT-SECURITY
Description:
Open the fuse and lock bits dialog to edit them.
READ-FUSE
READ-LOCK
Description:
READ-FUSE read the fuse bits (device dependant) and open the fuse and lock bits dialog
READ-LOCK read the lock bits (device dependant) and open the fuse and lock bits dialog
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 33 z 38
Example:
READ-FUSE
WRITE-FUSE [bits]
WRITE-LOCK [bits]
Description:
WRITE-FUSE write the fuse bits (device dependant).
WRITE-LOCK write the lock bits (device dependant).
If the argument is specified it is the numeric value of the bits rapresentation, note that a 1 means programmed. If no argument is specified
the current value is programmed. Pay Attention to program the FUSE bits with the AVR, you can specify a wrong bit combination that will
prevent you to access the AVR device in the future. Refer to the datasheets for the meaning of every bit.
Some AVR devices have more than one byte for the fuse bits. In such cases the argument is a multibyte numer and least significant byte is
the standard fuse byte. For example:
argument = 0x010203
Standard fuse = 0x03
High fuse = 0x02
Extended fuse = 0x01
Example:
SELECTDEVICE AT90S1200
#Lock: {X,X,X,X,X,"Lock2 ","Lock1 ",X}
#00000110
WRITE-LOCK 0x06
SELECTDEVICE ATTINY2313
#Fuse: "SPMEN " -
# "DWEN ","EESAVE ","SPIEN ","WDTON ","BODLEVEL2 ","BODLEVEL1 ","BODLEVEL0 ","RSTDISBL " -
# "CKDIV8 ","CKOUT ","SUT1 ","SUT0 ","CKSEL3 ","CKSEL2 ","CKSEL1 ","CKSEL0 "
#0-00000100-00000010
WRITE-FUSE 0x00402
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 34 z 38
SERIALNUMBER [value][start][size][mem][format][autoinc]
Description:
Used to set a serial number in a location in the buffer before to write the device. This number can be specified every time or
autoincremented from the previous one.
Example:
SERIALNUMBER 136 0x100 2 DATA LITTLEENDIAN NO
Set the serial number of '2' bytes and value '136' at address '0x100' starting from 'DATA' memory. The format should be LITTLEENDIAN
without autoincrement
READ-CALIBRATION <address>[mem][osc_index]
Description:
Read the internal oscillator calibration value from the AVR and write it to a location in the buffer at the specified address (and memory type
DATA or PROG). The osc_index argument specify which calibration value should be read since some AVR have several oscillator
frequencies. The osc_index argument is available only from the 2.06c version
Example:
SELECTDEVICE ATMEGA128
READ-CALIBRATION 0x100 DATA 3
Read the oscillator calibration value for 8MHz frequency
BYTESWAP
Description:
Swap the order of bytes within a word in the buffer (low byte <--> high byte)
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 35 z 38
RESET
Description:
Reset the device
CLEARBUFFER
Description:
Clear the buffer (all bytes to FF)
FILLBUFFER [val][from][to]
Description:
Fill the buffer from location 'from' to location 'to' with the 'val' value.
If no argument is specified a dialog ask for these values.
Example:
FILLBUFFER 24 0x100 0x200
PAUSE [message]
Description:
Pause the program and show a message dialog asking confirmation to continue.
CALL <command>
Description:
Call an external program and wait for it terminates.
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 36 z 38
Example:
CALL notepad.exe
DELAY <msec>
Description:
Wait for the specified amount fo milliseconds.
Example:
DELAY 1000
Suspend the script and wait for 1 second
5 F.A.Q.
=============
AVR questions
=============
A: Increase the following parameters in the ponyprog.ini file (all times are in milliseconds)
--------
A: Select "Ignore" button, if the final message is "Write succesful" you have a sample that
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 37 z 38
doesn't reply to the identify command. It seems that early devices don't reply to this command.
--------
Q: I need to program the AVR mounted on the target circuit (In system programming), but PonyProg
fails to program because an external reset circuit hold the reset line low for a long time.
A: Try to play with the following parameters in the INI file, it should solve the problem (all the
times are in milliseconds)
===============
Other questions
===============
Q: What type of cable I should use to connect SI-Prog to the COM port?
A: You must use "straight through" cable with all 9 pins connected.
Don't use "null modem" cable. (look at 3.1.10)
--------
Q: With Windows2000/XP I can't access the LPT ports without being administrator, I need to run PonyProg
logged in as normal user, what can I do?
---------
Q: My PC doesn't have any LPT/COM port, can I use a USB2COM or USB2LPT adapter?
A: Some USB adapters don't work at all while other adapters are very slow. So I suggest to avoid USB adapter
and buy COM/LPT PCMCIA or PCI adapters that emulates 100% native LPT and COM ports.
----------
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28
PonyProg Documentation Strona 38 z 38
Q: I have a Windows2000/XP PC with an extra LPT card, but PonyProg can't select the added port, can I force it?
A: First you have to select the AvrISP-I/O interface instead of the API version.
Then you have to edit ponyprog2000.ini file and disable port autodetection:
AutoDetectPorts=NO
then you have to discover the real address of the extra LPT port by looking at
Computer Management console -> Device Manager -> LPT ports -> resources. For example if the extra LPT is LPT3
and the address is DF00 you need to enter the line
LPTPorts=378,278,DF00
Note that this fix works only in some version (use 2.06g and newer).
http://www.lancos.com/e2p/ponyprog2000.html 2008-02-28