Hallo zusammen, als ziemlicher Anfänger mit den AVR-uCs habe ich mich nun soweit eingelesen, dass ich nun zu den Timern gekommen bin. Meine Hardware ist bestellt (STK500) nur noch nicht da - bis dahin benutze ich den Simulator des AVR Studio (Ver. 4.12, SP2). Wenn ich mir das TCNT0-Register anschaue wärend ein beliebiges Programm mit F11 durchgesteppt wird ändert sich an dem Inhalt nichts. Ist auch klar, da keine Taktquelle gwählt ist. Setzt man nun im TCCR0B das Bit 0 (CS00) und wählt damit einen Prescalar von 1 (also keinen Teilungsfaktor) passiert bei ATTiny25 NICHTS. Der Zählerwert läuft nicht. Ändere ich nun das Device und wähle einen beliebigen ATMega, z.B. ATMega16 und mache das selbe (TCCR0B heißt dort eben TCCR0)dann läuft der Timerewert. Was habe ich bei den Tinys übersehen? Ich habe die verschiedensten Tinys als Ziel ausgewählt und bei keinem bringe ich den Timerwert zum laufen. Hat jemand schon mal erfolgreich den Timerwert bei Tinys im AVR-Studio laufen sehen? Danke für eure Mühen. Grüße Frank
Tiny12 und Tiny15 konnte ich in AVR-Studio erfolgreich simulieren. Tiny25 ist mir zu neu, damit habe ich noch nix gemacht. ...
wie initialisierst du den timer denn? und welcher tiny genau?
Servus, hab' mich nochmal drangesetzt und "sämtliche" Tinys durchprobiert. Immer gleiches Vorgehen: Ein Assemblerbrogramm (Endlosschleife mit NOPs) wird mit F11 durchgestept. Dann irgendwann mal das Bit CS00 setzen (setzt den Prescalar auf 1 und sollte laut Datenblatt damit einfach den Takt zum Timer durchleiten). Jetzt läuft der Timerwert bei ATTiny12, 15, 22, 26 und 28 los. Bei ATTiny 24, 25 und 261 läuft der Timerwert nicht los (verändert sich also nicht um 1 bei jedem mal F11 drücken). Was habe ich übersehen? Ich steh voll auf dem Schlauch. Ich möchte einfach nur, dass der Timer bei jedem Takt um 1 hochgezählt wird. Die Interrupts genriere ich mir später. Welche Bits beinflussen denn den Takt noch? Warum ändert sich der Zählerwert nicht? Kann bitte jemand im AVR-STudio mal den Tiny25 und z.B. den Tiny22 ausprobieren ob sich das bei euch gleich verhält? Herzlichen Dank für eure Mühen. Grüße Frank
Also bei mir tuckert Timer0 des Tiny25 im Simulator... Version 4.11 Build 410 SP3 ...
Hoy HanneS, danke für deinen Test. Du glaubst es nicht: setzt man das Bit im "I/O-View" von Hand dann läuft der Zähler nicht - setzt man es aber im Programmcode dann läuft der Zähler. Danke für deine Hilfe. Grüße Frank
Auf die Idee, den Zähler im I/O View zu starten wäre ich nie gekommen :-)
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.