Hallo zusammen,
ich versuche schon seit geraumer Zeit einen Mega32U2 dazu zu bringen,
mit meinem PC zu "sprechen". Ich red hier nicht vom Bootloader o.ä, (ich
Programmier über ISP), sondern von einem HID.
Ich hab mir dazu von Atmel die Beispiel HID Libary gesaugt. Die Lib ist
natürlich auf den 32U4 ausgelegt, der halt direkt doppelt so teuer ist.
Ich dachte mir erst, es sei kein Problem, den Code umzuschreiben aber
scheinbar ist es das doch.
Ich hab hier und da etwas geändert, was der Compiler angemeckert hat,
was genau, kann ich leider nichtmehr sagen. Habs aber nach bestem Wissen
und Gewissen nach vergleich der Datenblätter und herrausfinden was was
tut gemacht.
Daher meine Frage: Hat jemand den 32U2 schon zum laufen gebracht über
USB an den PC und würde den Code zu verfügung stellen? Oder hat jemand
einen heißen Tipp? Bei Interesse lad ich den Code mal hoch, ist aber
alles sehr Komplex und viel.
Ich hoffe dass trotz der schwammigen angaben jemand Rat hat.
Danke schonmal!
Edit:
Ok, ich glaube ich bin dem Fehler auf der Spur:
Hab jetzt
1 | #define PLLx01 ( PLLCSR &= (0<<PINDIV) )
|
2 | #define PLLx02 ( PLLCSR &= (1<<PINDIV) )
|
[...]
1 | #if (FOSC==8000)
|
2 | #define Pll_start_auto() Start_pll(PLLx01)
|
3 | #elif (FOSC==16000)
|
4 | #define Pll_start_auto() Start_pll(PLLx02)
|
5 | #else
|
6 | #error "FOSC should be defined with 8000KHz or 16000KHz in config.h"
|
7 | #endif
|
geschrieben, bzw die Zeile #define PLLx01 ( PLLCSR &= (0<<PINDIV) ).
Jetzt meckert der Compiler aber rum, das es PINDIV nicht gibt. Laut
Datenblatt ist das aber das zweite Bit im PLLCSR Register. Find auch
keine Header-Datei wo die drinstehen würde. Ideen?