Hallo, gibte es für die Xmega so eine Art Konfigurator für die Registerinhalte ähnlich wie für die Fuse Bits? z.B. die Möglichkeiten die Timer zu konfigurieren sind doch sehr umfangreich und jedes mal die Datenblätter zu wälzen und dann noch die Bits abzählen ist irgendwie nicht sehr komfortabel. Die Namen der Register und der Bits habe ich auch nicht alle im Kopf, darum wäre es nicht schlecht, wenn man aus den möglichen Einstellungen nur auswälen bräuchte. Ich überlege gerade mir soetwas selber zu Basteln, aber wenn ich mir den Aufwand sparen könnte wäre ich auch nicht unglücklich. PC Programme erstelle ich mit Delphi. AVR Programme mit mikroPascal PRO for AVR. (ATXmega256A3B) Viele grüße Jürgen
Auf chip45.de kenn ich allenfalls ein Excel-Datenblatt zur USART-Berechnung. Also nur zu, Jürgen. Ich denke aber dass dazu die Datenblätter dermassen gründlich zu wälzen sind dass Dein fertiges Programm für die nächsten Jahre überflüssig wird für Dich :-)
Jürgen C. schrieb: > gibte es für die Xmega so eine Art Konfigurator für die Registerinhalte > ähnlich wie für die Fuse Bits? > z.B. die Möglichkeiten die Timer zu konfigurieren sind doch sehr > umfangreich > und jedes mal die Datenblätter zu wälzen und dann noch die Bits abzählen > ist irgendwie nicht sehr komfortabel. Haha nein. Das ist ein 8bit Controller. Man das ist ein Witz ... Ehrlich - lies das Datenblatt und das Errata und gut is ... Ansonsten musst du auf Arduino umsteigen. Das sind einfach Minimalsachen.
Mit CodevisionAVR geht das sehr komfortabel...
Jürgen C. schrieb: > und jedes mal die Datenblätter zu wälzen und dann noch die Bits abzählen > ist irgendwie nicht sehr komfortabel. Ich kenne die Xmega nicht, aber bei den standard AVRs finde ich das nicht schwer. Die Register Description sind nur wenige Seiten, da ist man schnell durch. Und Bits zählen muß man auch nicht, sie haben Namen. Hier mal ein Beispiel, wie ich das mache (AT90CAN128):
1 | OCR1A = SYNC_PERIOD - 1; |
2 | OCR1B = SYNC_TIME - 1; |
3 | TCCR1A = 0<<COM1A1 | 0<<COM1A0 | 1<<COM1B1 | 0<<COM1B0 | 0<<COM1C1 | 0<<COM1C0 | 1<<WGM11 | 1<<WGM10; |
4 | // OC1B: PWM
|
5 | TCCR1B = 0<<ICNC1 | 0<<ICES1 | 1<<WGM13 | 1<<WGM12 | 0<<CS12 | 0<<CS11 | 1<<CS10; |
6 | // Mode 15, F_CPU / 1
|
7 | OCR3A = PWM_PERIOD / 2; |
8 | OCR3B = PWM_PERIOD / 4 + DEAD_TIME / 2; |
9 | OCR3C = PWM_PERIOD / 4 - DEAD_TIME / 2; |
10 | TCCR3A = 0<<COM3A1 | 0<<COM3A0 | 1<<COM3B1 | 1<<COM3B0 | 1<<COM3C1 | 0<<COM3C0 | 0<<WGM31 | 1<<WGM30; |
11 | // OC3B: inverted PWM, OC3C: PWM
|
12 | TCCR3B = 0<<ICNC3 | 0<<ICES3 | 1<<WGM33 | 0<<WGM32 | 0<<CS32 | 0<<CS31 | 1<<CS30; |
13 | // Mode 9, F_CPU / 1
|
Peter Dannegger schrieb: > Ich kenne die Xmega nicht, aber bei den standard AVRs finde ich das > nicht schwer. Die Register Description sind nur wenige Seiten, da ist > man schnell durch. ... und bei den XMegas noch schneller, kennt man einen kennt man alle. Stefan
Stefan schrieb: > kennt man einen kennt man alle Nicht ganz. Bei den neuen Familien (AxU und E) sind immer wieder neue Dinge dazugekommen. Nur innerhalb einer Familie sind die Steine kernkompatibel. Mal von den Errata abgesehen, die doch bei jeder Subfamilie anders sind. Also: Lesen bildet!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.