www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 8051 Assembler Hilfe


Autor: Andreas Gebauer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo bin neu hier und bekomm die folgede aufgabenstellung nicht ganz 
gebacken, besonderst das mit dem Signal ist entprellt.


Mit der negativen Signalflanke an Port P3.2 sollen die Werte an den 
Ports P1 und P2 addiert werden. Das Ergebnis der Addition soll 
anschließend am Port P0 ausgeben werden. (Das Signal an P3.2 ist 
entprellt.)



Bitte um Hilfe

Danke

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ein bisschen spät für hausaufgaben^^

Autor: Andreas Gebauer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Übrigens muss das ganze ohne Interrupts machen

Autor: Andreas Gebauer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
für Hausaufgaben ist es  nie zuspät...

Autor: H.Joachim Seifert (crazyhorse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sieht nach Hausaufgabe aus und ist dementsprechend hier nicht gerne 
gesehen :-)
Noch soviel: mit dem bereits entprellten Signal ist gemeint, dass du 
ganz gelassen an die eigentliche Aufgabe gehen kannst.
Wechselt also der Eingang P3.2 von 1 au 0 (negative Flanke), sollst du 
die oben angeführten Aktionen ausführen. In der Wirklichkeit müsstest du 
dich damit auseinandersetzen, wann denn das Signal wirklich gültig ist, 
falls es von einem mech. Schalter kommt.

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andreas Gebauer schrieb:
> gebacken, besonderst das mit dem Signal ist entprellt.

Das soll heissen, dass es nicht notwendig ist, in der Software eine 
Tastenenprellung zu implementieren.

Autor: Andreas Gebauer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
andere Frage noch
welche Art von Interrupt könnte für diese Problemstellung eingesetzt 
werden?

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gegenfrage: Welcher Prozessor? ;)

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dann such mal nach "8051 /INT0 External Interrupt Example Program", dass 
sollte klarheit schaffen.

Autor: Andreas Gebauer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also ich weiß soviel das es ein externet Interrupt oder ein Timer 
Interrupt sein muss, aber welcher nun und woran sehe ich das?

Autor: Andreas Gebauer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gut hat sich erledigt danke

Autor: michl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ungefähr so?


START CODE 8000H ;oder irgend was anderes
ORG START

hier:  jnb P3.2,hier
       mov A,P1
       mov B,P2
       add A,B
       mov P0,A

ende:  jmp ende

END

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit "jnb" läuft die Warteschleife so lange wie P3.2 Low-Pegel führt. Das 
ist also das Gegenteil von dem, was du vor hast.

Ich würde an deiner Stelle vor der eigentlichen Warteschleife noch eine 
weitere Warteschleife setzen, welche erst verlassen wird, wenn P3.2 
High-Pegel führt. Damit stellst du sicher, dass die zweite Warteschleife 
wirklich auf eine negative Signalflanke und nicht auf einen Low-Pegel 
reagiert.

Autor: Ploetzeneder (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
hier findest du eine gute Referenz:
http://www.ploetzeneder.eu/softwareentwicklung/mik...

Du findest hier auch weitere Infos zum Assembler 8051

Mit freundl. Gruß,

Plötzeneder Andreas

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.