Interupt problem (flanken steuerung?)

OP #1207900
Lesenswert?
• ▲
▼
Hallo...


Verwende eine AT89 C51 ED2 µC

Habe folgendes Problem:

Habe eine Interrupt routine die auf "abfallende Flanken" reagiert, 
jedoch brauch ich eine Interrupt routine, die bei "steigender Flanke" 
reagiert! also positiv flanken gesteuert!

Der Code mit der "negativen Flankensteuerung" hab nicht selbst 
geschrieben und verstehe diesen Inhalt auch nicht wirklich.

Code: -> Negative Flankensteuerung

setb   IT0   ; ext. Interrupt0 bei abfallender Flanke
clr    IE0   ; Anforderungsflag löschen
setb   EX0
setb   EA    ; globale Interruptfreigabe

Es wäre sehr net, wenn ihr mir diesen Code erklären köntet bzw. warum 
ich die bits setzten muss und dann löschen und wie dadurch die 
Flankensteuerung zustande kommt? Damit ich verstehe wie ich den Code 
schreiben muss um eine positive Flankensteuerung zu machen!
Wie kann ich den Ex. Interrupt positiv Flanken gesteuert machen?


Vielen DANK im vorraus!
OP #1207939
Lesenswert?
• ▲
▼
Hab diese Screenshots (im Anhang) aus einem Scrip für den 8051
Ein beispiel Programm ist auch dabei, jedoch ist das für abfallende 
Flanken!!

In dem script steht auch dass "abfallende Flanken oder low signals" 
Interrupts auslösen können jedoch bin ich mir nun unsicher ob es nicht 
doch auch mit der anderen Methode gehen würde (steigende Flanke)???
Angehängte Dateien:
Gast #1208045
Lesenswert?
• ▲
▼
>jedoch bin ich mir nun unsicher ob es nicht
>doch auch mit der anderen Methode gehen würde (steigende Flanke)???

Ich verstehe nur nicht wo da das Problem ist. Schau im Script und im 
Datenblatt nach und dann weisst Du es.
#1208147
Lesenswert?
• ▲
▼
M. J. wrote:

> Wie kann ich den Ex. Interrupt positiv Flanken gesteuert machen?

Garnicht, sonst würde ja im Datenblatt drinstehen, wie.

Du kannst den Interrupt aber auf High-Level triggern. Dazu muß man den 
Timer in den Gate-Mode setzen, 8Bit-Reload und auf 0xFF vorladen. Dann 
kriegst Du nen Timerinterrupt bei High-Level.

Du kannst aber die PCA-Eingänge auf die High-Flanke setzen. Du hast dann 
aber nur einen Interruptvektor für alle PCA-Events.


Peter

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.