Hi, ich möchte gerne mit einem Attiny261A Frequenzen mit dem Input Capture Mode Frequenzen messen. Dazu muss man an einer Stelle im Code den Inhalt des Registers ICR0 auslesen, um den Timer-Wert für weiter Berechnungen zu kopieren. Der Compiler in AS7 gibt aber einen Error aus: 'ICR0' undeclared (first use in this function) Alle anderen Timer register werden aber erkannt. Ist das ein Compiler Problem oder habe ich etwas falsch verstanden?
:
Bearbeitet durch User
1 | The output compare register OCR0A is a dual-purpose register that is also used as an 8-bit input capture register ICR0. |
2 | In 16-bit input capture mode the output compare register OCR0B serves as the high byte of the input capture register ICR0. |
Ja, aber nur bei den Registerbeschreibeungen. Im Blockdiagramm für den Input Capture Mode steht es drin. Ich habe mir auch Codebeispiele angesehen, die alle mit den ICRn Registern arbeiten...
Heißt das, dass die Codebeispiele im 8 bit Mode waren? Wieso ist das dann ein Compiler Error?
Hi
Korrektur:
Datenblatt S.74
>The Output Compare Register OCR0A is a dual-purpose register that is also >used
as an 8-bit Input Capture Register ICR0. In 16-bit Input Capture mode >the Output
Compare Register >OCR0B serves as the high byte of the Input >Capture Register
ICR0.
MfG Spess
Wär ich froh gewesen, wenn ich gewußt hätte, daß mit AS7 das Atmel Studio 7 gemeint gewesen wäre. Zumal das ja kein Compiler sondern eine IDP bzw IDE ist. Der nicht zu kompilierende Sourcecode fehlt natürlich auch.
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.