X-Git-Url: http://git.linex4red.de/pub/USBaspLoader.git/blobdiff_plain/8c8a26aafa3cdb676c4714b25fb68b40b89ae98f..8a827b1fd2ddcca5d27e2a03fe80d8c2e706515e:/Schematics.txt diff --git a/Schematics.txt b/Schematics.txt index 7a1e0f5..97c53cf 100644 --- a/Schematics.txt +++ b/Schematics.txt @@ -1,20 +1,61 @@ -Designed fuer Atmega8 (with external crystal with 16MHz) -^^^^^^^^^^^^^^^^^^^^^ +Default settings are designed for atmega8 (with external 16MHz crystal) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +First you have to bring the USBaspLoader into the MCU by some conventional +way, for example by using the traditional LPT1 on an old computer: --> avrdude -p m8 -c pony-stk200 -e -U flash:w:bootloaderfirmware.hex <-- -USB-Schematics wie in VUSB mit ZenerDiode +Or via an already existing MCU, flashed with the USBasp Programmer: + +--> avrdude -p m8 -c usbasp -e -U flash:w:bootloaderfirmware.hex <-- + + +If you already have an existing (and spminterface supporting) USBaspLoader +flashed and you just want to update the loader to new features/version, +you can use its integrated update-feature by flashing the update-firmware. +After executing it at least one time, it will replace the old loader with +the new one contained within the update. Then you can start flashing other +firmwares, again... + + +Since the atmega8 (used as default) is 5V, the recommended USB-Schematics +should use zeners. (for more information see the VUSB designrecommendation +with the two 1N4729 zener diodes as level limiter...) +Because it is most unlikely to use the atmega8 as analogous comperator +(there are much more cheap ICs for this), it is recommended to use those +PINs for USB-Interface (this is the default, but it can be changed): + +USBD+ (green) --> PIN4 (PD2) (usually INT0 PIN) +USBD- (white) --> PIN13 (PD7, AIN1) (new since Rev.3) + +BUTTON SWITCH --> PIN12 (PD6, AIN0) (new since Rev.3) + +Since the PD6 and PD7 lines were swapped in example board revision 3, +it is possible to use the internal analogous comperator module, too. +(Since AIN1 can be remapped to an other PIN but AIN0 not.) +Now having the BUTTON SWITCH on AIN0 allows external connections to +this PIN. Before Rev.3 (Rev2 and older) this was not possible, since +USBD- needs to be exclusive and is not routed to an external PIN on +the board. (Now USBD- is on AIN1, which can be remapped.) + +The bootloader bootup logic has changed a little bit, compared to the +original JUMPER-logic within original USBaspLoader 2010-07-27. +However most of the new logic is compatible with old JUMPER schematics: + +When RESET/PowerUP while BUTTON is pressed (PIN12 is low), then bootloader +will start. Even if the BUTTON is release after this and PIN12 becomes HIGH, +the bootloader stays active and listens to commands as long as the BUTTON +will be pressed (and so PIN12 becomes low) again... + +If the BUTTON is NOT pressed at RESET/PowerUP, or pressed again while +in bootloader, the user defined firmware is started. + -USBD+ (gruen) --> PIN4 (PD2) -USBD- (weiss) --> PIN12 (AIN0) -TASTER --> PIN13 (AIN1) -Wenn RESET/PowerUP UND Taster gedrueckt (PIN13 LOW) dann startet Bootloader. -Wenn dieser Taster nach dem ersten loslassen erneu gedrueckt wird beendet -sich der Loader nach Fertigstellung ggf. noch offener Operationen und -startet die programmierte Firmware. +for default atmega8 recommended MCU-settings are: -empfohlene LFUSE: 0x1f -empfohlene HFUSE: 0xc0 -empfohlene LOCK : 0x3f (unveraendert - bootsection wird per software geschuetzt) +LFUSE: 0x1f +HFUSE: 0xc0 +LOCK : 0x3f (unchanged - the bootsection is proceteced via loader software)