Forum: Mikrocontroller und Digitale Elektronik PSoC Statussignal auswerten mittels PWM?


von Sebi (Gast)


Lesenswert?

Hallo,

ich arbeite gerade mit einem PSoC und bin noch ziemlicher Neuling.
Ich bekomme von einem Sensor ein Statussignal gesendet. Dieses ist 
entweder High (1) oder Low (0). Jett möchte ich dieses auswerten. Über 
einen Interrupt, der alle 25 ms ausgelöst wird frage ich den Status 
dieses Signals ab.
Ich muss zur auswertung 20 Werte speichern und dann ein Verhältnis 
bilden. Je nachdem welches Verhältnis rauskommt, ist es ein gewisser 
Status. Also bei 1:1 Status 1 bei 3:1 Status 2 und so weiter.

Kann ich das über ein PWM Baustein machen? Wie müsste ich diesen 
Konfigurieren und programmieren.

Ich hab ehrlich gesagt kein richtigen durchblick wie ich das ganze 
realsiieren kann.


Grüße

von Reiner W. (reiner_w)


Lesenswert?

Wozu willst du eine Hardware-Komponente dafür einsetzen?
Bei einem Abstand von 25ms kannst du doch problemlos eine kleine 
C-Funktion implementieren, die dir das Verhältnis zurückgibt.
1
Pseudocode
2
3
volatile uint8 Counter = 0 //zählt die max 20.Werte
4
volatile uint8 Status  = 0 //hier kumulierst du den Pin-Status
5
6
//25ms-IR
7
Counter++
8
Status = Status + PinRead()
9
10
11
//in der main()
12
Verhaeltnis = 0  //type, den du halt brauchst
13
..
14
  if Counter = 20
15
    Verhaeltnis = Counter / Status 
16
    Counter = 0
17
    status = 0
18
  endif

Wenn es denn doch in Hardware sein soll, könntest du einen Counter 
benutzen. Dein Eingangssignal wird gezählt und nach 20*25ms schaust du 
halt nach, was im Counter steht.

von Sebi (Gast)


Lesenswert?

Hey,

jop genau so hatte ich es auch geplant. Einen Counter will ich nicht 
verwenden, bzw muss ich schauen ob ich überhaupt noch verwenden kann. Es 
sind nur maximal 5 Stück möglich und diese sind aufbebraucht für andere 
Funktionen.

Das mit der if Abfrage ist eine sehr gute Idee. Diese werde ich 
umsetzen.


Danke schön

Grüße

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.