Hallo Zusammen, ich wollte einen Interrupt mit einer fallenden Flanke auslösen jedoch hat es in meinem Programm nicht funktioniert. Nun habe ich ein Programm geschrieben wo ich das Interruptflag per Software setze und es funktioniert auch nicht. Bei anderen Interrupteingängen habe ich es probiert dort funktioniert mein Programm.Nur mit den Eingängen P3.2 und 3.3 funktioniert nichts. Ich kann auch nicht auf einen anderen Eingang wechseln das dieser P3.3 dafür hardwaremässig vorgesehen ist. Kann mir jemand sagen was ich falsch programiere bzw. nicht programmiere? Danke schon mal für die Antwort. Tom
Der externe Interrupt EX1 geht auf Vektor 2 und nicht 10. Und für die fallende Flanke mußt Du erst IT1 setzen. Ich glaube nicht, daß das beim 517 völlig umgemodelt ist gegenüber dem standard 8051. Den 517 kenne ich nicht, da mir alles zu umständlich ist (Platinenlayout, Kosten), was nicht Flash ist. Peter
Soooorrrry, ein kleiner Fehler der sich eingeschlichen hat als ich verschiedene Interrupts versucht habe. Ich habe es mit Vektor2 getestet muss ich auch setzen wenn ich eine falende Flanke erkennen will.Jedoch setze ich ja direkt das IE1 bit und erzeuge dadurch den Interrupt hat zuminderst bei allen anderen Interrupt eingängen funktioniert(P1.0,P1.1,Timer1 usw.). Trotz das alles richtig ist funktioniert das mit dem Interrupt nicht. Habe schon mit dem Oszi direkt am Port gemessen. Gibt es etwas besonderes zu beachten da dieses Problem nur an den Ports 3.3 und 3.2 auftritt und diese Hardwaremässig gleich sind? Gruss Tom
Hat niemand Erfahrung!!!!!! Habe es schon auf einem zweiten board getestet da ich dachte etwas ist defekt jedoch das gleiche Ergebnis. TOM
Ich weiß nicht, ob Dein Compiler das auch benötigt, aber ich muß Variablen, die ich im Interrupt benutze, "volatile" definieren, also: volatile unsigned char wert=0; Der von mir genutzte AVRGCC optimiert sonst die Zugriffe auf die Variable.
@thomas, Interrupt Variable sind schon richtig da ich ja andere Interrupts auch ansprechen kann nur P3.3 und 3.2 nicht. Ist bei denen etwas besonderes zu beachten. Ach hier nochmal das bereinigte Programm. Ich hoffe jemand kann mir helfen!!!!!!!!!:-) Thomas
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.