Herunterladen Inhalt Inhalt Diese Seite drucken

Die Interrupt-Service-Routinen - Atmel AT90USBKEY Firmware-Information

Inhaltsverzeichnis

Werbung

Einzige wichtige Aktion im Hauptprogramm ist der Aufruf des Unterprogramms  
(
usb_init_device
Im Hauptprogramm wird ebenfalls der AD­Wandler initialisiert. Im Assembler muss auch 
die Vektortabelle im Hauptprogramm initialisiert werden.
In   der   USB­Bibliothek   werden   die   Interrupts   abgefangen   und   behandelt,   die 
Basisinitialisierungen des USB­Teils   im  ATmega  vorgenommen  (Treiberfunktionen)  ,  die 
Enumeration   wird   durchgef hrt   und   die   die   Endpunkte   werden   behandelt 
(Anwenderkommunikation).

Die Interrupt-Service-Routinen

In   der   USB­Bibliothek   befinden   sich  
252ff).
Einmal   wird  der  
Vektor   kann   von   21   verschiedenen   Interrupts   (General,   Device   und   Host) 
angesprungen werden. Uns interessiert allerdings nur der 
(EORSTI), welcher das Ende des vom PC auslösten Reset
Gerätes anzeigt (das Gerät hat den Reset Zustand wieder verlassen).
Die zweite ISR behandelt den 
Vektor (USB COM Interrupt)
die Endpunkte betreffen
(RXSTPI), f r den bzw. die 
4 Der PC zieht dazu beide Datenleitungen gleichzeitig auf Null.
5 Da jeder dieser Interrupts an allen sieben Endpunkten auftreten kann ist es wichtig, vor der Behandlung 
den richtigen Endpunkt mit dem ENUM Register auszuwählen.
6
Mikrocontrollertechnik
), das sich in sr_usb.asm (usb_srs.c) befindet.
Die USB-Bibliothek
(SR_USB.asm, usb_srs.c)
zwei Interrupt-Service-Routinen
USB GENeral Interrupt Vektor
USB Endpoint/Pipe COMmunication Interrupt
5
. F r 
Endpunkt 0
OUT-Endpunkte
. Hier interessieren uns nur drei Interrupts, welche 
 ist das der 
 der 
  (Datenblatt   S 
  behandelt.   Dieser   Interrupt 
E
nd 
O
R
e
S
e
T
4
 nach dem Anstecken des 
R
eceived 
S
E
T
U
P
R
eceived 
OUT
 Data 
Firmware AT90USBKEY
2010
INIDEV
 
I
nterrupt 
 
I
nterrupt 
I
nterrupt 

Werbung

Inhaltsverzeichnis
loading

Verwandte Produkte für Atmel AT90USBKEY

Inhaltsverzeichnis