Aus RN-Wissen.de
Wechseln zu: Navigation, Suche


Wenn man mit AVR-Controllern anfängt, braucht man oft eine Binärdatei, um die Programmierumgebung zu testen oder ab man den Controller richtig angeschlossen hat. Das Archiv gibt es als zip-Datei und als tar.gz.

Was machen die Binärdateien?

Die Programme schalten Port B1 im Sekundentakt zwischen LOW und HIGH hin- und her. Generiert sind die Programme für eine Taktfrequenz von 1 MHz. Falls dein AVR mit einem anderen Takt läuft, dann wechselt der Port entsprechend schneller bzw. langsamer.

Eine der einfachsten Anzeigen dafür ist eine Leuchtdiode (LED).

Welche Binärformate sind in den Archiven?

In den Archiven sind Binärdateien folgender Formate:

  • Intel HEX (*.hex)
  • srec (*.srec)
  • elf32-avr (*.elf)
  • Binary (*.bin)

Wie muss ich die LED anschliessen?

LED mit Vorwiderstand an Port B1

Die LED wird mit einem Vorwiderstand R zwischen dem AVR-Port B1 und GND angeschlossen.

Für jeden LED-Typ gibt es eine Vorwärtsspannung VF. Ist VCC die Betriebsspannung, dann muss der Vorwiderstand R größer sein als

[math] R_\mathrm{min} = \frac{V_\mathrm{CC}-V_F}{I_F} [/math]

IF ist der Strom durch die LED. Für Standard-LEDs genügen 15 mA, für Low-Current-LEDs 2 mA. Typische VF für

  • rote LED: 1.6 V
  • grüne LED: 2.3 V
  • blau: 3.5 V

IF muss kleiner sein als der Strom, den der AVR liefern kann, also kleiner als 20mA.

Mindestwiderstand für verschiedene LED-Typen und
VCC = 5V
LED-Typ max. Strom
[mA]
Mindest-Widerstand
[Ω]
Standard Rot/Gelb 15 270
Standard Grün 15 220
Low Current Rot/Gelb 2 1800
Low Current Grün 4 680
High Efficiency Rot/Gelb 5 680
High Efficiency Weiß/Blau/Grün 5 300

High Efficiency LEDs vertragen höhere Ströme, zum Test reichen 5 mA aber dicke aus um was zu sehen.

Für welche Controller gibt es Binärdateien?

Bislang gibt es Binärdateien für folgende AVRs:

Classic AVR Getestet
AT90S2313
AT90S8535
AT90S8515
megaAVR
ATmega8 x
ATmega8515
ATmega8535
ATmega48
ATmega88
ATmega16 x
ATmega162
ATmega168 x
ATmega32 x
ATmega64
ATmega644 x
ATmega128
LCD AVR
ATmega169
tinyAVR
ATtiny2313
ATtiny24
ATtiny44
ATtiny84

Wo finde ich was im Archiv?

Im Archiv gibt es für jeden AVR-Typ ein eigenes Unterverzeichnis. Für einen ATmega32 ist es

./blinky/atmega32

In diesem Unterverzeichnis liegen die Dateien für den ATmega32, die alle blinky-b1_atmega32 heissen und verschiedene Endungen haben:

*.hex
Intel-HEX Datei (binär)
*.bin
Binary-Datei (binär)
*.elf
elf-Datei (binär)
*.srec
srec-Datei (binär)
*.lss
Disassembly des Programms (Textdatei)

Die HEX-Datei für einen ATmega32 befindet sich im Archiv also in

./blinky/atmega32/blinky-b1_atmega32.hex

Für die anderen AVRs analog.

Downloads

Wo kommen die Binärdateien her?

Die einzelnen Dateien wurden alle aus der C-Quelldatei

./blinky/blinky.c

erstellt, die ebenfalls im Archiv enthalten ist. Compiler ist avr-gcc.

Siehe auch