Quelltext /~heha/basteln/Haus/Telefon/Mithören-ISDN/Firmware.zip/ATmega32U4/usb.h

#pragma once

typedef unsigned char byte;
//typedef unsigned short ushort,wchar_t;
//typedef unsigned long ulong;

register byte usbCfg asm("r2");
// Bit 0: Konfiguriert ja/nein
// Bit 1: Remote Wakeup ja/nein
// Bit 2: Alternate Setting für Interface2 (EP3)
// Bit 3: Höre B2, sonst B1 (Audio-Selektor)
// Bit 4: frei
// Bit 5: frei
// Bit 6: Flash = Quelle für Deskriptordaten (sonst RAM)
// Bit 7: EEPROM = Quelle
register byte rsv3 asm("r3");
register byte rsv4 asm("r4");
register byte rsv5 asm("r5");
register byte rsv6 asm("r6");
register byte rsv7 asm("r7");
register byte rsv8 asm("r8");
register byte rsv9 asm("r9");

#define usbInit()  (USBCON=0x31)
// Nur OTG-Pad überwachen mit Interrupt — um den Rest kümmert sich usbPoll()

void onSuspend(void);		// Rückrufe
void onResume(void);

void usbPoll(void);		// zyklisch aufzurufen


#include <avr/io.h>
#include <avr/pgmspace.h>
#include <avr/interrupt.h>

#define NOINIT __attribute__((section(".noinit")))
Vorgefundene Kodierung: UTF-80