Hallo zusammen, ich komm mit meinem 80c537A und diesem blöden Gated Timer Mode bei Timer 2 nicht klar. Ich möchte die länge eines Impulses an Pin 1.7 messen. Dazu setze ich den IRQ auf die oberste Ebene. Timer0 bringt das Messen alle 33ms zum Aufruf. Starten und stoppen scheint zu funktionieren. Trotz allem bekomme ich nur den Wert 0000h zurück. Ich habe Auszüge aus meinem Code mal im Anhang reingesetzt. Vielleicht steigt ja jemand bei den Schnippseln durch. Vielen Dank für die Mühen. Gruß Binnesmann
Servus, sehe zwar bei den Codeschnipseln nicht durch, habe aber ein Funktionierendes Prog. für den C166 vielleicht hilft das ja. Gruß Jan
Ich kenne den 537 nicht, aber alle normalen 8052er haben standardmäßig gar keinen Gate Mode für T2. Den haben nur T0 und T1, nimm doch diese. Dein Programm enthält ja gar keinen Interrupthandler, läuft also sofort in den Wald, da Du ja mit "MOV T2CON,#10000011b" den Interrupt auslöst, ohne das ein Zählimpuls an T2 anliegt. Unbenutzte Ports sollte man auf 1 belassen, damit sie nicht gegen dort angeschlossene Ausgänge kämpfen. Peter
Sorry, das ist natürlich nicht der ganze Code. Einer IRQ Handle gibt's natürlich. Das was ich gepostet habe ist lediglich der Teil, in dem ich den Timer behandel. Hätte ich besser noch ausführlicher dokumentiert und beschrieben. Mit MOV P1,#10000000b setze ich den Eingang auf 1. Später dann MOV T2CON,#10000000b ; ||||||||_ T2I0 Timer 2 Inputselect 0 ; |||||||__ T2I1 Timer 2 Inputselect 1 ; ||||||___ T2CM Timer 2 Compare Mode Bit ; |||||____ T2R0 Timer 2 Reload Mode Selection 0 ; ||||_____ T2R1 Timer 2 Reload Mode Selection 1 ; |||______ I2FR ; ||_______ I3FR ; |________ T2PS Timer 2 Prescaler Bit Wählt nur die Prescaler. MOV T2CON,#10000011b Schaltet den Timer in Gated Mode. MOV IP0,#00000000b ;IRQ Priorität MOV IP1,#00100000b ;IRQ Priorität Setzt die Prioritäten. Ich möchte ja auch nur 1 Impuls messen. Deshalb schaltet mein IRQ Handle den Timer direkt aus. Reload gibt es nicht. Das ganze habe ich in 3 Büchern beschrieben, aber warum legen die alle viel mehr Wert auf Capture/Compare als auf diese blöde Betriebsart die ich aber brauche? Gated Timer ist jeweils ein Abschnitt mit 5 Zeilen, in dem nur der Begriff "Gated Timer" erklärt wird. Nicht wie ich Ihn einrichte und verwende. Werde das zur Not mal mit Timer 1 probieren. Das muß ja dann laufen. Gruß Binnesmann
Sieht so aus, als ob der T2 des 537 wirklich völlig anders ist, als der standard T2. T2CON.7 ist nämlich normaler Weise das Overflow-Bit. Der 537 scheint also ein echter Exot zu sein Aber ich benutze schon lange keine 8051-er mehr ohne internen Flash und Bootloader, wäre mir viel zu unbequem. Sorry, daß ich deshalb nicht helfen kann. Peter
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.