📄 changes
字号:
From 20020524 on, see the ChangeLog file.
The project is now hosted on http://savannah.gnu.org/projects/uisp/ .
Changes in uisp-20020524:
- add (GPL) copyright notices to all files, as required before the project
can be added to savannah.gnu.org (again, thanks to Theodore A. Roth)
- add preliminary ATmega8515 and ATmega162 support (untested, not yet
supported by pavr/stk500, just added signature bytes to the list)
- add a few items to the TODO list :)
Changes in uisp-20020420:
- add preliminary ATtiny26 and ATmega32 support (untested, not yet
supported by pavr/stk500)
- another parallel port programmer (MAXI - http://www.invtech.com.au/),
thanks to Hamish Moffatt <hamish@cloud.net.au>
- fix upload/verify of >64K srec/ihex files,
fix STK500 swapped signature bytes, and
support case-insensitive AVR device names,
thanks to Theodore A. Roth <troth@openavr.org>
- ATtiny15 has a calibration byte, too (was not in an older version of
the datasheet), thanks to Alexander Popov <sasho@vip.orbitel.bg>
Changes in uisp-20020303:
- add support for fuse bits with avr910/pavr programmers, and fix NULL
pointer segfaults with no -dprog, thanks to Bryce Denney <bryce@tlw.com>
Changes in uisp-20011025:
- DASA2 (aka PonyProg interface) fixes (thanks to Uwe Bonnes):
AVR RESET# = inverted TXD (so sending BREAK resets the AVR)
-dinvert=sck,miso,mosi,reset (invert each specified line)
-dt_reset=N (reset inactive high time in microseconds)
- add S2/S3 record support necessary for ATmega103 (thanks to Uwe Bonnes)
- add ATmega64 to the device table (untested)
- read/write ATmega64/128 extended fuse bits (untested, no pavr support yet)
- tested on ATmega323 (thanks to Lars Thore W. Aarrestad <ltwa@atmel.com>
for sending me samples)
Changes in uisp-20011006:
- add ATmega103-old back (bad sig bytes), these chips still exist :)
- comment out free(argv_ok) to work around a segfault
Changes in uisp-20010909:
- add preliminary ATmega8/ATmega16/ATmega128 support based on recently
released datasheets (not tested, no extended fuse bits, no pavr yet)
- add support for yet another parallel port cable (DT006)
- include pavr firmware source (hacked a little by me) as part of uisp
(should also work in existing old "Atmel low cost" programmers after
1200 -> 2313 upgrade, assuming the original 1200 was in a socket...)
Changes in uisp-20010818:
- clear O_NONBLOCK flag with fcntl() instead of re-opening serial ports
(failed with "Permission denied" on Cygwin, reported by Jason Kyle)
- enable direct serial support only if TIOCMGET is defined, remove dummy
TIOCM* defines added for Cygwin port
Changes in uisp-20010813:
- STK500 support (not yet complete, reverse-engineered communication
protocol), thanks to Daniel Berntsson <danbe628@student.liu.se>
- Win9x/ME/NT/2K (Cygwin) port (needs the giveio.sys driver for direct
I/O port access), thanks to Dean Ferreyra <dferreyra@igc.org>
Changes in uisp-20010805:
- fix recent termios changes (forgot to clear CRTSCTS and set VMIN, VTIME),
also now set termios modes for dasa, dasa2 (still untested)
- rename ATmega32 to ATmega323 (now that the official datasheet is out)
- accept -dprog=pavr (for now as alias for -dprog=avr910, but may include
more features in the future, see http://avr.jpk.co.nz/pavr/pavr.html)
Changes in uisp-20010715:
- rename AVR3 to FBPRG (-dprog=fbprg), as it seems that smartcard
development boards might have illegal uses in some countries ;)
- fix avr910 page write for ATmega163 (please test ATmega103 too!)
- save/restore termios modes on serial ports, please test
- change -datmel to -dprog=avr910
- uisp --help now prints to stdout, not stderr
- change #include <string> to #include <string.h>
- #include <string.h> in Terminal.C
- fix -dspeed handling in Serial.C
Changes in uisp-20010701:
- fix compile with g++ 3.0
- fix Programming Enable error message after 32 retries
- add yet another parallel port interface (FBPRG/AVR3)
- more about --download of=file in uisp --help
Changes in uisp-20010616:
- hopefully fix serial support (can't test), broken by my 20010211 -dpart
changes, in code common to both serial and parallel modes that use
different AVR device names :(
- CHANGES -> CHANGES.old, README -> CHANGES, TODO
- document FBPRG interface (not yet supported), and possible new design
using tables to make adding these new cables easier, in DAPA.C comments
Changes in uisp-20010501:
- direct serial support: -dlpt=/dev/ttyS0 -dprog=dasa (or dasa2, see help)
warning: completely untested, might or might not work
- incompatible change: programmer type (for all these dummy parallel and
serial programmers) is specified with -dprog=... (-dstk200 etc. is gone)
- more portability changes (please test especially on non-x86 Linux and
FreeBSD, and send me patches if I broke something...)
- fix AT90S2323 signature byte (0x02 not 0x04)
- increase SCK delay (4us to 5us) for devices with slow RC oscillators
- don't skip 0xFF for page write
- fix a few typos
- remove OLD_DELAY_LOOP
- longer timeout for -datmel (500ms -> 1s)
Changes in uisp-20010211:
- now available from http://www.amelek.gda.pl/avr/uisp/ and
officially maintained by me (many thanks to Uros for all previous work)
- device type can be specified if auto-detection fails, necessary for
AT90S1200 and other parts with erased signature bytes: -dpart=at90s1200
- assume -dno-retry -dno-poll for AT90S1200 (data polling should work
according to the datasheet, but bug reports indicate it doesn't, and
1K of program memory doesn't take that long to write anyway...)
- support for yet another AVR ISP parallel port cable (not tested),
based on information from http://www.bsdhome.com/avrprog/
- FreeBSD support (not tested, uncomment -DHAVE_PPI in the Makefile
and tell me if it works, or send me a patch if it doesn't :)
Changes in uisp-20001216:
- ATmega163 now supported, and tested (many thanks to Odd Jostein Svendsli
of Atmel Norway for help - sending me two samples of these new chips)
- reading Flash and EEPROM contents to a srec file (--download of=file)
- read/write fuse bits and boot lock bits, read calibration byte (use
--segment=fuse, address 0 = fuse low, 1 = fuse high, 2 = calibration,
3 = lock bits: 1 1 BLB12 BLB11 BLB02 BLB01 LB2 LB1)
- data polling with page write, if supported by device
- added timer{add,sub,cmp} macros for systems that don't have them
- security fix, drop privileges before opening the serial device too
(warning: installation setuid root still not recommended, these are
just random fixes, and not a complete review for security holes;
using ppdev instead of direct I/O is highly recommended)
Changes in uisp-20001125:
- fix a bug where erasing a locked device (not possible to identify)
might fail, now always wait 200 ms for chip erase
- add support for "Atmel AVR ISP" parallel port cable
- various cleanups (duplicated code to report statistics, etc.)
Changes in uisp-20001118:
- make it possible to compile without direct I/O port access for non-PC
architectures, but still allow parallel port access via /dev/parportX
(Linux ppdev driver)
- include the latest ppdev driver (kernel patch) for Linux 2.2.17
- security: drop privileges before opening /dev/parportX (only matters
if accidentally installed setuid root - still not recommended!)
- data polling statistics reworked: min/avg/max ms/byte (so you can
compare them with datasheet specs - maybe it helps in detecting chips
that were programmed too many times)
- fix a longstanding bug in data polling that caused random programming
failures (could be worked around by specifying longer t_wd_flash -
no, that really wasn't the chips failing :)
- update write timing specs from the current datasheets (flash 8ms -> 4ms
for most chips, programs a bit faster - now that the above bug is gone)
- add more device codes for "Atmel low cost" (serial port) programmer
(still looking for updated avr910.asm - it must exist somewhere, as
avrprog.exe from AVR Studio claims to support all devices...)
- started work on fuse bits (not finished yet), will be needed for
ATmega163 (internal RC oscillator enabled by default)
Changes in uisp-20001014:
- fix some stupid bugs (SCK delay, writing lock bits)
- avoid "invalid parameter" errors for -dt_wd_flash etc. if device locked
- updated help and version information
Changes in uisp-20000930:
- compiles with g++ 2.95.2 (tested on Debian 2.2), does not depend on
kernel header files for parallel port bit definitions
- as in PonyProg, support for the "ppdev" Linux driver (included in
pre-2.4.0 kernels, available separately for 2.2.x - please bug Alan
to add it to 2.2.18 :), as well as the old direct I/O port access
(works with any kernel, but requires root privileges)
- more reliable delays on very fast machines, using gettimeofday()
(programming may be very slow on <=486 but should work otherwise)
- support for more new devices, such as ATmega161 (not tested)
- support for programming lock bits with --lock option (currently
only both at the same time, and no ATmega161 BLBxx bits yet)
- when not programming, try to disable (PS/2) parallel port data outputs -
this may allow cheap cables (no 74HC244 inside) to work if the ISP pins
are also used for other things (not tested)
- removed endian_bug backwards compatibility, various other cleanups
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -