Home

Atmel AVR und Assembler Infoseite

Für die Programmierung werden folgende Module verwendet :

- Gerds AVR Assembler ( gavrasm ) und Simulator ( AVR Sim ) -> aktuelle Version

- und zum "Brennen" AVRDude ( Download ) oder Flip ( Download )

Zum Brennen kann der "Window Caller - Werkzeug für den Aufruf unter Windows" ( siehe Einführung in Gerd's AVR Assembler ) oder man schreibt sich selbst entsprechende Batch Dateien , wie es ebendfalls auf dieser Seite beschrieben ist. Bei Entwicklungsboards, die nach dem Reset einen Tastendruck oder ein spezielles Pin auf einen vorgegebenen Pegel (z.B. Pro Mini Module ) zum Anspringen des entsprechenden Bootladers benötigen , kann es auch "etwas" umfangreicher werden.

Hier ein Beispiel für das "xplained a3bu" (gehört eigentlich in die ATXmega Kategorie) :

 

REM ------------------------------------------------------

REM Laufwerk einstellen, unnötige Textausgaben abschalten

REM ------------------------------------------------------

@echo off

D:

 

REM ------------------------------------------------------

REM Verzeichnis Assembler Quelldatei einstellen

REM ------------------------------------------------------

 

CD D:\AVR\ASM\EEPROM\

 

REM ------------------------------------------------------

REM Assembler starten, ggf. Fehler auswerten

REM ------------------------------------------------------

 

D:\AVR\gavrasm\gavrasm -eb EECopy.asm

If errorlevel 1 Goto Fehler

 

REM ------------------------------------------------------

REM Kein Assembler Fehler, Brennen vorbereiten

REM ------------------------------------------------------

echo.

echo XPLAINED BOOTLOADER AKTIV ? (j/n)

echo.

set /p taste=

if %taste%==j goto brenne

 

REM ------------------------------------------------------

REM j + Enter = Brennen , wenn der Bootloader aktiv ist

REM ------------------------------------------------------

echo dann ebend nicht ...

goto ende

REM ------------------------------------------------------

REM Eingabe Enter = Ende, nur kompilieren nicht brennen

REM ------------------------------------------------------

 

:brenne

REM ------------------------------------------------------

REM in das Flip Verzeichnis wechseln und starten

REM ------------------------------------------------------

 

CD D:\FLIP\Flip 3.4.7\

batchisp -device ATxmega256A3BU -hardware USB -operation erase f loadbuffer "D:\AVR\ASM\EEPROM\EECopy.hex" program verify start reset 0

If errorlevel 0 Goto BVOK

echo ****************************************************

echo Brenn-Fehler ? vielleicht Bootloader aktivieren ?

echo ****************************************************

Goto ende

:BVOK

echo Programmierung fehlerfrei abgeschlossen

goto ende

:Fehler

REM ------------------------------------------------------

REM Fehler aufgetreten, weitere Instruktionen hierhin

REM ------------------------------------------------------

echo Fehlerbehandlung!

notepad.exe D:\AVR\ASM\EEPROM\EECopy.err

:ende

CD D:\AVR\ASM\EEPROM\

pause

 

Es gibt 6 Pin USB TTL Adapter mit DTR ( Reset ) z.B. von Crius mit FT232R , mit denen sich Pro Mini Boards direkt brennen lassen. Noch komfortabler sind sind "pro micro" Module mit ATmega32U4 , hier benötigt man keinen USB TTL Adapter.

Gerd's AVR Assembler gavrasm & AVR Simulator

Erweiterte Dokumentation

 

Die DEVICE-Direktive bindet automatisch alle Symbole des betreffenden AVR-Typs ein, das Include von *def.inc-Dateien ist damit überflüssig.

 

Die Zuweisung soll am Programmanfang stehen. Die Groß/Kleinschreibung des Atmel AVR Namen wird nicht beachtet.

 

Der Syntax ( z.B. für ATmega168P ) lautet :

Extended documentation

 

The DEVICE directive automatically binds all the symbols of the AVR type involved, the inclusion of "* def.inc" files is needless.

 

The assignment should be at the beginning of the program. The case of the Atmel AVR name is ignored.

 

The syntax ( e.g. for ATmega168P ) is:

.device ATmega168P

 

Liste unterstützter AVR-Typen / List of supported AVR types :

- no title specified

GAVRASM

AVRDude (6.3) ID

FLIP 3.4.7.112

Datasheet

 

AT90S1200

1200

 

AT90S1200

 

AT90S2313

2313

 

AT90S2313

 

AT90S2323

2323

 

AT90S2323

 

AT90S2333

2333

 

AT90S2333

 

AT90S2343

2343

 

AT90S2343

 

AT90S4414

4414

 

AT90S4414

 

AT90S4433

4433

 

AT90S4433

 

AT90S4434

4434

 

AT90S4434

 

AT90S8515

8515

 

AT90S8515

 

AT90S8535

8535

 

AT90S8535

 

AT90C8534

  

AT90C8534

 

AT86RF401

  

AT86RF401

 

ATtiny4

t4

 

Attiny4-10

 

ATtiny5

t5

 

Attiny4-10

 

ATtiny9

t9

 

Attiny4-10

 

ATtiny10

t10

 

Attiny4-10

 

ATtiny11

t11

 

ATtiny11

 

ATtiny12

t12

 

ATtiny12

 

ATtiny13

t13

 

ATtiny13

 

ATtiny13A

  

ATtiny13A

 

ATtiny15

t15

 

ATtiny15

 

ATtiny20

t20

 

ATtiny20

 

ATtiny22

  

ATtiny22

 

ATtiny24

t24

 

ATtiny24

 

ATtiny24A

  

ATtiny24A

 

ATtiny25

t25

 

ATtiny25

 

ATtiny26

t26

 

ATtiny26

 

ATtiny28

t28

 

ATtiny28

 

ATtiny40

t40

 

ATtiny40

 

ATtiny44

t44

 

ATtiny44

 

ATtiny44A

  

ATtiny44A

 

ATtiny45

t45

 

ATtiny45

 

ATtiny48

  

ATtiny48

 

ATtiny84

t84

 

ATtiny84

 

ATtiny84A

  

ATtiny84A

 

ATtiny85

t85

 

ATtiny85

 

ATtiny87

  

ATtiny87

 

ATtiny88

t88

 

ATtiny88

 

ATtiny102

  

ATtiny102

 

ATtiny104

  

ATtiny104

 

ATtiny167

  

ATtiny167

 

ATtiny212

  

ATtiny212

 

ATtiny214

  

ATtiny214

 

ATtiny261

t261

 

ATtiny261

 

ATtiny261A

  

ATtiny261A

 

ATtiny412

  

ATtiny412

 

ATtiny414

  

ATtiny414

 

ATtiny416

  

ATtiny416

 

ATtiny417

  

ATtiny417

 

ATtiny441

  

ATtiny441

 

ATtiny461

t461

 

ATtiny461

 

ATtiny461A

  

ATtiny461A

 

ATtiny814

  

ATtiny814

 

ATtiny816

  

ATtiny816

 

ATtiny817

  

ATtiny817

 

ATtiny828

  

ATtiny828

 

ATtiny841

  

ATtiny841

 

ATtiny861

t861

 

ATtiny861

 

ATtiny861A

  

ATtiny861A

 

ATtiny1614

  

ATtiny1614

 

ATtiny1616

  

ATtiny1616

 

ATtiny1617

  

ATtiny1617

 

ATtiny1634

t1634

 

ATtiny1634

 

ATtiny2313

t2313

 

ATtiny2313

 

ATtiny2313A

  

ATtiny2313A

 

ATtiny3216

  

ATtiny3216

 

ATtiny3217

  

ATtiny3217

 

ATtiny4313

t4313

 

ATtiny4313

 

ATmega8

m8

 

ATmega8

 

ATmega8A

  

ATmega8A

 

ATmega8HVA

  

ATmega8HVA

 

ATmega8U2

m8u2

 

ATmega8U2

 

ATmega16

m16

 

ATmega16

 

ATmega16A

  

ATmega16A

 

ATmega16HVA

  

ATmega16HVA

 

ATmega16HVB

  

ATmega16HVB

 

ATmega16M1

  

ATmega16M1

 

ATmega16U2

m16u2

 

ATmega16U2

 

ATmega16U4

  

ATmega16U4

 

ATmega32

m32

 

ATmega32

 

ATmega32A

  

ATmega32A

 

ATmega32C1

  

ATmega32C1

 

ATmega32HVB

  

ATmega32HVB

 

ATmega32M1

m32m1

 

ATmega32M1

 

ATmega32U2    

m32u2

 

ATmega32U2

 

ATmega32U4

m32u4

 

ATmega32U4

 

ATmega48

m48

 

ATmega48

 

ATmega48A

  

ATmega48A

 

ATmega48P

m48p

 

ATmega48P

 

ATmega48PA

  

ATmega48PA

 

ATmega48PB

m48pb

 

ATmega48PB

 

ATmega64

m64

 

ATmega64

 

ATmega64A

  

ATmega64A

 

ATmega64C1

  

ATmega64C1

 

ATmega64M1

  

ATmega64M1

 

ATmega64RFR2

m64rfr2

 

ATmega64RFR2

 

ATmega88

m88

 

ATmega88

 

ATmega88A

  

ATmega88A

 

ATmega88P

m88p

 

ATmega88P

 

ATmega88PA

  

ATmega88PA

 

ATmega88PB

m88pb

 

ATmega88PB

 

ATmega103

m103

 

ATmega103

 

ATmega128

m128

 

ATmega128

 

ATmega128A

  

ATmega128A

 

ATmega128RFA1

m128rfa1

 

ATmega128RFA1

 

ATmega128RFR2

m128rfr2

 

ATmega128RFR2

 

ATmega161

m161

 

ATmega161

 

ATmega162

m162

 

ATmega162

 

ATmega163

m163

 

ATmega163

 

ATmega164A

  

ATmega164A

 

ATmega164P

m164p

 

ATmega164P

 

ATmega164PA

  

ATmega164PA

 

ATmega165A

  

ATmega165A

 

ATmega165P

  

ATmega165P

 

ATmega165PA

  

ATmega165PA

 

ATmega168

m168

 

ATmega168

 

ATmega168A

  

ATmega168A

 

ATmega168P

m168p

 

ATmega168P

 

ATmega168PA

  

ATmega168PA

 

ATmega168PB

m168pb

 

ATmega168PB

 

ATmega169

m169

 

ATmega169

 

ATmega169A

  

ATmega169A

 

ATmega169P

  

ATmega169P

 

ATmega169PA

  

ATmega169PA

 

ATmega256RFR2

m256rfr2

 

ATmega256RFR2

 

ATmega323

  

ATmega323

 

ATmega324A

  

ATmega324A

 

ATmega324P

m324p

 

ATmega324P

 

ATmega324PA

m324pa

 

ATmega324PA

 

ATmega324PB

  

ATmega324PB

 

ATmega325

m325

 

ATmega325

 

ATmega325A

  

ATmega325A

 

ATmega325P

  

ATmega325P

 

ATmega325PA

  

ATmega325PA

 

ATmega328

m328

 

ATmega328

 

ATmega328P

m328p

 

ATmega328P

 

ATmega328PB

  

ATmega328PB

 

ATmega329

m329

 

ATmega329

 

ATmega329A

  

ATmega329A

 

ATmega329P

m329p

 

ATmega329P

 

ATmega329PA

  

ATmega329PA

 

ATmega406

m406

 

ATmega406

 

ATmega640

m640

 

ATmega640

 

ATmega644

m644

 

ATmega644

 

ATmega644A

  

ATmega644A

 

ATmega644P

m644p

 

ATmega644P

 

ATmega644PA

  

ATmega644PA

 

ATmega644RFR2

m644rfr2

 

ATmega644RFR2

 

ATmega645

m645

 

ATmega645

 

ATmega645A

  

ATmega645A

 

ATmega645P

  

ATmega645P

 

ATmega649

m649

 

ATmega649

 

ATmega649A

  

ATmega649A

 

ATmega649P

  

ATmega649P

 

ATmega1280

m1280

 

ATmega1280

 

ATmega1281

m1281

 

ATmega1281

 

ATmega1284

m1284

 

ATmega1284

 

ATmega1284P

m1284p

 

ATmega1284P

 

ATmega1284RFR2

m1284rfr2

 

ATmega1284RFR2

 

ATmega2560

m2560

 

ATmega2560

 

ATmega2561

m2561

 

ATmega2561

 

ATmega2564RFR2

m2564rfr2

 

ATmega2564RFR2

 

ATmega3208

  

ATmega3208

 

ATmega3209

  

ATmega3209

 

ATmega3250

m3250

 

ATmega3250

 

ATmega3250A

  

ATmega3250A

 

ATmega3250P

  

ATmega3250P

 

ATmega3250PA

  

ATmega3250PA

 

ATmega3290

m3290

 

ATmega3290

 

ATmega3290A

  

ATmega3290A

 

ATmega3290P

m3290p

 

ATmega3290P

 

ATmega3290PA

  

ATmega3290PA

 

ATmega4808

  

ATmega4808

 

ATmega4809

  

ATmega4809

 

ATmega6450

m6450

 

ATmega6450

 

ATmega6450A

  

ATmega6450A

 

ATmega6450P

  

ATmega6450P

 

ATmega6490

m6490

 

ATmega6490

 

ATmega6490A

  

ATmega6490A

 

ATmega6490P

  

ATmega6490P

 

ATmega8515

m8515

 

ATmega8515

 

ATmega8535

m8535

 

ATmega8535

 

ATxmega8E5

x8e5

 

ATXmega8E5

 

ATxmega16A4

x16a4

 

ATXmega16A4

 

ATxmega16A4U

x16a4u

x

ATXmega16A4U

 

ATxmega16C4

x16c4

x

ATXmega16C4

 

ATxmega16D4

x16d4

 

ATXmega16D4

 

ATxmega16E5

x16e5

 

ATXmega16E5

 

ATxmega32A4

x32a4

 

ATXmega32A4

 

ATxmega32A4U

x32a4u

x

ATXmega32A4U

 

ATxmega32C3

  

ATXmega32C3

 

ATxmega32C4

x32c4

x

ATXmega32C4

 

ATxmega32D3

  

ATXmega32D3

 

ATxmega32D4

x32d4

 

ATXmega32D4

 

ATxmega32E5

x32e5

 

ATXmega32E5

 

ATxmega64A1

x64a1

 

ATXmega64A1

 

ATxmega64A1U

x64a1u

x

ATXmega64A1U

 

ATxmega64A3

x64a3

 

ATXmega64A3

 

ATxmega64A3U

x64a3u

x

ATXmega64A3U

 

Atxmega64A4

x64a4

 

ATXmega64A4

 

ATxmega64A4U

x64a4u

x

ATXmega64A4U

 

ATxmega64B1

x64b1

x

ATXmega64B1

 

ATxmega64B3

x64b3

x

ATXmega64B3

 

ATxmega64C3

x64c3

x

ATXmega64C3

 

ATxmega64D3

x64d3

 

ATXmega64D3

 

ATxmega64D4

x64d4

 

ATXmega64D4

 

ATxmega128A1

x128a1

 

ATXmega128A1

 

ATxmega128A1U

x128a1u

x

ATXmega128A1U

 

ATxmega128A3

x128a3

 

ATXmega128A3

 

ATxmega128A3U

x128a3u

x

ATXmega128A3U

 

Atxmega128A4

x128a4

 

ATXmega128A4

 

ATxmega128A4U

x128a4u

x

ATXmega128A4U

 

ATxmega128B1

x128b1

x

ATXmega128B1

 

ATxmega128B3

x128b3

x

ATXmega128B3

 

ATxmega128C3

x128c3

x

ATXmega128C3

 

ATxmega128D3

x128d3

 

ATXmega128D3

 

ATxmega128D4

x128d4

 

ATXmega128D4

 

Atxmega192A1

x192a1

 

ATXmega192A1

 

ATxmega192A3

x192a3

 

ATXmega192A3

 

ATxmega192A3U

x192a3u

x

ATXmega192A3U

 

ATxmega192C3

x192c3

 

ATXmega192C3

 

ATxmega192D3

x192d3

 

ATXmega192D3

 

ATxmega256A1

x256a1

 

ATXmega256A1

 

ATxmega256A3

x256a3

 

ATXmega256A3

 

ATxmega256A3B

x256a3b

 

ATXmega256A3B

 

ATxmega256A3BU

x256a3bu

x

ATXmega256A3BU

 

ATxmega256A3U

x256Aa3u

x

ATXmega256A3U

 

ATxmega256C3

x256c3

x

ATXmega256C3

 

ATxmega256D3

x256d3

 

ATXmega256D3

 

Atxmega384A1

  

ATXmega384A1

 

ATxmega384C3

x384c3

x

ATXmega384C3

 

ATxmega384D3

x384d3

 

ATXmega384D3

 

AT90CAN32

c32

x

AT90CAN32

 

AT90CAN64

c64

x

AT90CAN64

 

AT90CAN128

c128

x

AT90CAN128

 

AT90PWM1

pwm1

 

AT90PWM1

 

AT90PWM2

pwm2

 

AT90PWM2

 

AT90PWM2B

pwm2b

 

AT90PWM2B

 

AT90PWM3

pwm3

 

AT90PWM3

 

AT90PWM3B

pwm3b

 

AT90PWM3B

 

AT90PWM81

  

AT90PWM81

 

AT90PWM161

  

AT90PWM161

 

AT90PWM216

pwm216

 

AT90PWM216

 

AT90PWM316

pwm316

 

AT90PWM316

 

AT90USB82

usb82

x

AT90USB82

 

AT90USB162

usb162

x

AT90USB162

 

AT90USB646

usb646

x

AT90USB646

 

AT90USB647

usb647

x

AT90USB647

 

AT90USB1286

usb1286

x

AT90USB1286

 

AT90USB1287

usb1287

x

AT90USB1287