Forum: Mikrocontroller und Digitale Elektronik Auslesen, wie lange eine negative Spannung an P3_2 liegt


von Ben (Gast)


Lesenswert?

Hallo,

Ich habe eine Frage zum Programmieren des 8051. Ich soll programmieren, 
dass ich mit Hilfe des Timers messen kann, wie viele Millisekunden ein 
negatives Signal an den pin P3_2 anliegt.

Ich weis, dass der Mikrocontroller pro eine Mikrosekunde um 1 erhöht 
wird, aber ich habe keine Ahnung, wie ich das schreiben soll, dass er 
die Dauer des Signales ermittelt.

Wir programmieren in der Sprache C.

Ich hoffe es kann mir einer helfen

Mit freundlichen Grüßen, Ben

von STK500-Besitzer (Gast)


Lesenswert?

Ben schrieb:
> Ich weis, dass der Mikrocontroller pro eine Mikrosekunde um 1 erhöht
> wird,

ziemlich langsamer Fahrstuhl

Da es offensichtlich eine Hausaufgabe sollte man den Thread hier einfach 
schliessen...

von Ben (Gast)


Lesenswert?

Ich meinte natürlich, dass der Timer immer um 1 erhöht wird.

Nein, es ist keine Hausaufgabe. Ich will es ernsthaft verstehen. Ich 
schreibe in ein paar monaten Abschlussprüfung und ich würde gerne mit 
wissen glänzen und nicht mit Spickzetteln.

Programmieren an sich ist ja auch nicht das Problem. Ich könnte auch ein 
Programm schreiben, dass mit Hilfe des Timers eine Variable nach einer 
Bestimmten zeit hochzählt, aber ich weis halt nicht, wie ich die Länge 
eines Signals an 3_2 messen kann... mehr möchte ich doch garnicht 
wissen...

Mal nebenbei verstehe ich nicht was daran schlimm wär, wenn es eine 
Hausaufgabe wäre^^

von digitaler fritz (Gast)


Lesenswert?

...sobald p3.2 auf Null geht kannst du mit setb TR0 den Timer 
einschalten und hochzaehlen...wenn P2.3 wieder hoch geht machst du clr 
TR0.
Schliesslich brauchst du nur noch die Zeit aus TH0 und TL0 auslesen....

von Ben (Gast)


Lesenswert?

danke, habs hinbekommen

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
Noch kein Account? Hier anmelden.