Externer interrupt an Timer 1

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 27 9 2024  09:25:34      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte


Autor
Externer interrupt an Timer 1
Suche nach: timer (2123)

    







BID = 902501

MechMac666

Gesprächig



Beiträge: 197
Wohnort: Salzkotten
 

  


Hallo,

leider schaffe ich es nicht mehr eine Information zu finden, die ich vor Jahren problemlos gefunden habe.

Ich möchte mit einem ATmega644 eine PWM lesen. Ich habe Quelltext von mir gefunden, der den Timer 1 benutzt.

Ich weiß nicht mehr ob ich an INT0 oder INT1 anschließen muss.
Sind die Zahlen hinter dem INT die Timernummern? Also INT0=Timer0 INT1=Timer1?
Müsste ich in meinem Fall, ich möchte Timer 1 verwenden, also an INT1 anschließen?

Ich sollte für die µC-Projekte endlich mal Schaltpläne und Kommentare verwenden...

BID = 902505

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

 

  

INTn sind externe Interrupts, die triggern keinen Timer.

Du kannst entweder einen INTn-Eingang nutzen und den Rest in Software machen (Timer starten usw.) oder du nimmst einen Timer Input (Tn)-Eingang, für Timer 1 z.B. T1, für Timer 0 entsprechend T0.

Edit: Allein den Timern eine externe Taktfrequenz vorzugeben reicht allerdings nicht aus, du brauchst dann mindestens einen zweiten Timer.

Intelligenter Wäre da der Timer Input Capture Pin ICP1 von Timer 1.
Damit kann man auch z.B. das Tastverhältnis bestimmen, was bei einer PWM ja ausschlaggebend ist.



_________________


[ Diese Nachricht wurde geändert von: DonComi am 14 Okt 2013 20:42 ]

BID = 902509

MechMac666

Gesprächig



Beiträge: 197
Wohnort: Salzkotten

Also das ist der Quelltext von "Damals". Kann man daran erkennen welchen Pin ich damals genommen habe?



void pwm_init()
{
TCCR1A = 0;
TCCR1B = (1<<ICES1) | (1<<CS10); // steigende Flanke, kein Prescaler
TCCR1C = 0;
TIMSK1 = (1<<ICIE1) ; // Interrupt akivieren, Capture
}



ISR( TIMER1_CAPT_vect )
{
if (run==0)
{
run=1; //als nächstes zweiter Durchlauf
wert1=ICR1; //Startwert
TCCR1B &= ~ (1<<ICES1); //setzen auf fallende Flanke
}
else
if (run==1)
{
run=0; //als nächstes erster Durchlauf
wert2=ICR1; //Endwert
TCCR1B |= (1<<ICES1); //setzen auf steigende Flanke

//Berechnung
Ergebnis=wert2-wert1;
}

}

BID = 902510

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Alter Schwede, lese mein Edit nochmal und dann überlege dir, wofür ICE wohl stehen könnte.


_________________

BID = 902517

MechMac666

Gesprächig



Beiträge: 197
Wohnort: Salzkotten

(I)nput (C)apture E ...keine Ahnung, vielleicht enable?

Ein altes Bild hat mich gerade gerettet. Dort ist zu sehen das es weder INT0 noch INT1 ist, sondern ICP.

Ich weiß nicht wieso ich so fixiert auf das externe Interrupt war.

[ Diese Nachricht wurde geändert von: MechMac666 am 14 Okt 2013 21:58 ]

BID = 902521

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Was heißt, ein altes Bild hat dich gerettet?


Zitat :
Intelligenter Wäre da der Timer Input Capture Pin ICP1 von Timer 1.

*hüstel*


_________________


Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 16 Beiträge im Durchschnitt pro Tag       heute wurden bisher 1 Beiträge verfasst
© x sparkkelsputz        Besucher : 182081312   Heute : 1938    Gestern : 5794    Online : 566        27.9.2024    9:25
4 Besucher in den letzten 60 Sekunden        alle 15.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0316591262817