mikrocontroller.net

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


Autor: flo (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: flo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo karlheinz!

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

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: flo (Gast)
Datum:

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

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: flo (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Flo (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

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.