Forum: Analoge Elektronik und Schaltungstechnik ADC Spannung zu niedrig= Alarmton


von flo (Gast)


Lesenswert?

Hallo!

Ich hab meinen Spannungswächter jetzt zum laufen bekommen, und schon 
stellt sich die nächste Frage:

-PIC 16f87-
Wie kann ich in .asm den Befehl für einen Alarm geben?

Wenn der ADC zb. (Messbereich 0-1023) 500 misst, soll ein Piezo 
angesteuert werden.


Mit welchen Befehlen kann ich denn hier arbeiten?

Viele Grüße
Florian

von Karl H. (kbuchegg)


Lesenswert?

Zunächst mal sollte man wissen, was du tatsächlich dranhängen
hast.
Ist das eine Piezo-Kristllscheibe oder ist das ein Summer.

Für ersteres musst du eine Rechteckschwingung ausgeben.
Im Prinzip ist das daher gleichwertig mit einer blinkenden LED,
nur dass sie schneller blinkt :-)

Letzteres summt ganz von alleine, wenn Spannung angelegt wird.
Im Prinzip ist das daher gleichwertig mit dem Einschalten einer
LED.

In beiden Fällen wirst du einen Treibertransistor brauchen,
der dafür sorgt, dass auch genug Strom durch den Schallgeber
gejagt werden kann.

von flo (Gast)


Lesenswert?

hallo karlheinz!

ich habe einen summer den ich gerne verwenden möchte.
was müsste ich für einen Transistor benutzten?

von Karl H. (kbuchegg)


Lesenswert?

flo wrote:
> hallo karlheinz!
>
> ich habe einen summer den ich gerne verwenden möchte.
> was müsste ich für einen Transistor benutzten?

Kommt auf den Summer an.

Schau mal hier:
Beitrag "SUMMER pfeift ganz leise obwohl er aus ist. :-("
Aber Achtung: statt den 557 nimmst du erst mal einen 547.
Der Widerstand zwischen Pin und Transistor-Basis: irgendwas
in der Gegend von 1kOhm sollte reichen.

von flo (Gast)


Lesenswert?

okay,super, das werde ich schonmal so vorbereiten.
wie müsste ich dann mit dem asm befehl fortfahren?

von Karl H. (kbuchegg)


Lesenswert?

flo wrote:
> okay,super, das werde ich schonmal so vorbereiten.
> wie müsste ich dann mit dem asm befehl fortfahren?

Nicht böse sein. Aber eine LED einschalten zu können ist
sowas wie Grundlagenwissen bei der µC Programmierung.
Du wirst doch wohl gezielt einen µC Pin auf 0 bzw. auf 1
setzen können?

http://www.sprut.de/electronic/pic/programm/index.htm

von flo (Gast)


Lesenswert?

ich möchte den summer ja nur bei einem bestimmten adc wert auf 1 setzen.
wie ich einen µC ausgang auf 1 setze weiß ich schon, aber wie ich das 
mit dem ADC wert kombiniere weiß ich nicht.

von Karl H. (kbuchegg)


Lesenswert?

flo wrote:
> ich möchte den summer ja nur bei einem bestimmten adc wert auf 1 setzen.
> wie ich einen µC ausgang auf 1 setze weiß ich schon, aber wie ich das
> mit dem ADC wert kombiniere weiß ich nicht.

Bei Sprut solltest du einiges finden
http://www.sprut.de/electronic/pic/programm/index.htm

von Εrnst B. (ernst)


Lesenswert?

Vorschlag:

ersetz den PIC komplett durch einen Komparator oder OpAmp (LM358 für 
knapp über 10cent)
Häng Transistor und Summer an den Ausgang, deine Referenz-Spannung über 
Poti an den + Eingang, und die zu messende Spannung (ggfs durch 
Spanungsteiler halbiert) an den - Eingang.
Fertig.

Die gesparte Zeit nutzt du, um dich (z.B. mit der o.g. Sprut-Homepage) 
erstmal mit den PIC-Grundlagen vertraut zu machen.

von Flo (Gast)


Lesenswert?

Hallo!
okay, ich hab mal gesucht und bin auch fündig geworden, denke ich.

ich habe folgendes zum programm hinzugefügt:

  movlw  ST
  SUBLW  2
  BTFSC  STATUS, C
  bsf    out

ST ist die tausender Stelle die im display angezeigt wird, sobald diese
1 ist, soll der port RB1 high sein.
Portb,1 habe ich als out definiert.

es tut sich aber an RB1 nichts!
Kann mir jemand sagen warum?
wo muss ich diesen abschnitt einfügen?

viele grüße
florian

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.