Gast
#2056053
Hallo, ich suche mir seit Stunden die Finger wund. Ich habe vor kurzem einen ATmeg32U2 erworben, um ein wenig in das Thema "integrierter USB-Controller" rein zu kommen. Dazu versuche ich das AVR328 (Generic HID Device) zu kompilieren. Ich benutze WinAVR-20100110 mit AVR-Studio 4. Die AVR328 ist eigentlich für den AT90USB162 geschrieben. Sollte aber auch mit anderen Series-2-Typen funktionieren. Es gibt jedoch zwei Funktionen/Makros, die nicht klappen. Die eine ist "Usb_enable_regulator()" und stellt etwas an der 3.3V-Stromversorgung ein. Die kann man weglassen, vermute ich. Der ATmega32U2 hat so etwas nicht. Dann gibt es noch "Clear_prescaler()", die bei dem AT90USB162 auf clock_prescale_set() umgeleitet wird, die wiederum in avr/power.h definiert ist. Dort zwar für AT90 (und andere) aber nicht für den ATMega32U2. Es geht es um eine definierte Umschaltung des Prescalers. Ich habe mir beide Datenblätter mehrfach angeschaut (Kapitel "System Clock Prescaler")und kann keinen Unterschied feststellen. Ich würde jetzt einfach die Definition aus "power.h" ins Hauptprogramm übernehmen. Das könnte mir zumindest kurzfristig weiterhelfen. Meine Fragen: a) Ist meine Annahme richtig, dass es sich um einen Bug in power.h handelt, also das der ATmega aus irgendwelchen Gründen versehentlich nicht aufgeführt ist? Oder ist das Absicht und es gibt doch Unterschiede? b) Wenn es ein Bug ist, wo/wie kann man ihn melden. Vielen Dank für eure Unterstützung.