AVR - Externer Interrupt an beliebigem Pin?

#6711985
Lesenswert?

Ulli schrieb:
> Hier würde ich gerne nachträglich noch ein DCF77-Modul hinzufügen.

Dazu nimmt man typisch einen Timerinterrupt, um bequem die Pulsdauern zu 
zählen. Für DCF77-Dekodierung eignet sich gut ein Raster von 10ms.
Den Timerinterrupt braucht man außerdem als Uhr bei Empfangsstörungen.

Externe Interrupts verwendet man nur für schnelle Sachen (<10µs) oder 
zum Aufwachen beim Stromsparen.
#6712308
Lesenswert?

Arduino Fanboy D. schrieb:
> https://ww1.microchip.com/downloads/en/DeviceDoc/40001908A.pdf
>> Bits 0, 1, 2, 3, 4, 5, 6 –
>> PCINT32, PCINT33, PCINT34, PCINT35, PCINT36, PCINT37,
>> PCINT38: Pin
>> CDS40001908A-page 85

Papier ist geduldig. Ich vertraue da eher auf das "alte" 
Atmel-Datasheet.

https://www.e-lab.de/downloads/DOCs/mega324PB.pdf

Hast Du das mit PCINT32 ff. mal ausprobiert?
Gast #6712329
Lesenswert?

> Ich vertraue da eher auf das "alte" Atmel-Datasheet.

Aber das sieht doch noch merkwürdiger aus, mit diesem komischen PCINT7 
auf der siebten Position. Eigenartig.
  Und in beiden wird unter PCICR bzw. PCIFR ein PCINT39 angeboten.
1
Hier wendet sich der Gast mit Grausen:
2
»So kann ich hier nicht ferner hausen,
3
Mein Chip kannst du nicht weiter sein.«
Angehängte Dateien:
#6712341
Lesenswert?

S. Landolt schrieb:
>> Ich vertraue da eher auf das "alte" Atmel-Datasheet.
>
> Aber das sieht doch noch merkwürdiger aus, mit diesem komischen PCINT7
> auf der siebten Position. Eigenartig.
>   Und in beiden wird unter PCICR bzw. PCIFR ein PCINT39 angeboten.
> Hier wendet sich der Gast mit Grausen:
> »So kann ich hier nicht ferner hausen,
> Mein Chip kannst du nicht weiter sein.«

Na ja. In PCIE.. sind Gruppen von Interrupt-Pins auf Interrupts 
zusammengefasst. Davon gibt es keine 38 oder so sondern nur genau 5.

Es gibt auch PCMSK4 - nur denen ist blöderweise nur PE0 und PE1 
zugeordnet. Weiter geht es halt nicht - es sei denn jemand beweist das 
Gegenteil :-). Das man bei den maskierten Interrupts immer schauen muss, 
von welchem PIN der Interrupt kommt muss ich hier wohl keinem 
Beteiligten erklären.
Gast #6712343
Lesenswert?

Hugo H. schrieb:

> Papier ist geduldig. Ich vertraue da eher auf das "alte"
> Atmel-Datasheet.

Ja, die MC-bearbeiteten strotzen leider nur so von Fehlern.

> https://www.e-lab.de/downloads/DOCs/mega324PB.pdf

Allerdings gibt es auch hier den "Widerspruch", dass für etliche PCINTs 
zwar Maskenbits existieren, die entsprechende Funktion aber nicht in der 
IO-MUX-Tabelle auftaucht.

Sowas gab es schon immer und es ist auch nicht wirklich ein Widerspruch. 
Es zeigt bei einem Auftreten in den allermeisten Fällen nur eins: dass 
es wohl in der Familie einen Controller gibt (oder zumindest ein 
solcher mal geplant war), bei dem es die entsprechende Funktion 
tatsächlich gibt. Aber bei dem konkreten Controller gibt es sie halt 
nicht.

Also, nach meiner Erfahrung würde ich das so zusammenfassen: Primäre 
Informationsquelle sollte die MUX-Tabelle sein, denn die stimmt fast 
immer.

Aber da bleibt das "fast". Und um dies auszuräumen, muss man es halt 
machen, wie es auch S. Landolt macht: man probiert es schlicht und 
einfach aus. Ist ja nun kein Hexenwerk, ein kleines Testprogramm zu 
schreiben, um sowas zu ermitteln.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren