PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bascom Sirenenton mittels µC erzeugen



oderlachs
23.10.2011, 10:01
....ich weiss einfach nicht wie ich beginnen soll...
Mit Bascom finde ich keinen Anfang, ebenso wenig in C oder ASSR. Betimmt ist mein Anfängerwissen daran Schuld, das ich in diese Materie nicht einzusteigen weiss :mad:
Auch habe ich keine praktische Erfahrung welches Bauteil ich zur akustischen Ausgabe verwenden sollte, mit Pieszo-Elementen kenne ich mich fast gar nicht aus, also nur dyn. Ausgabesysteme kämen für mich in Frage.

Weiss wer eine Lösung , oder Lösungsansatz, denn ein wenig möchte ich ja selber noch dazu betragen und auch dabei Lernen.

MfG

Gerhard

dino03
23.10.2011, 10:41
Hi Gerhard,


mit Pieszo-Elementen kenne ich mich fast gar nicht aus,
Piezos sind eigentlich ähnlich wie Quarze zu betrachten. Man hat eine Keramikscheibe mit zwei Kontaktflächen die sich bei Spannung durchbiegt oder wenn man sie mechanisch belastet eine Spannung liefert.

Die Dinger packst du einfach an einen Ausgangspin und erzeugst an dem ein wechselndes Signal (Bei Digitalkram eine Recheckschwingung). Fertig ist es. Piezos sind recht hochohmig und unkompliziert anzusteuern.


also nur dyn. Ausgabesysteme kämen für mich in Frage.
Dynamische Systeme (Lautsprecher) benötigen noch einen Verstärker weil sie gegenüber den Piezos doch recht niederohmig sind (etwa 8...50 Ohm). Sonst einfach den Verstärker (LM386 oder so) über nen kleinen Kondensator an den Ausgangspin koppeln, Lautsprecher dran und fertig. Ist aber dann mehr Schaltungsaufwand.

Für die Signalerzeugung nimmst du am einfachsten nen 16Bit-Timer an dessen Ausgang du den Piezo/Verstärker dranhängst. Dann kannst du über den Vorteiler und das Zählerregister hardwareunterstützt eine Frequenz erzeugen. Nun muß dein Programm nur noch über Änderung der Parameter vom Timer die Tonhöhe verändern.

Gruß
Dino

oderlachs
23.10.2011, 11:14
Hallo Dino !
Habe vielen Dank für Deine Infos zu den zwei Sachen.
Ich habe im Netz auch etwas Code in Sachen "Sirene" gefunden, das werde ich mal ausdrucken und versuchen zu verstehen... So einfach abschreiben und auf den Chip flashen wäre mir nix, das wäre eine Black-Box und ich möchte ja wissen was ich da mache und auch nach eigenen Vorstellungen anwenden/abändern....

Nun kommen die kalten tage, da habe ich im Garten nicht mehr viel zu tun, also bleibt Zeit für "meine" AVR und Roboter (http://robot.oderlachs.de) (der 1. ist erst im Aufbau )...

Gruss und Dank
Gerhard

bluelight_electronic
23.10.2011, 13:38
http://www.avr-praxis.de/forum/images/styles/Aesthetica/misc/quote_icon.png Zitat von oderlachs http://www.avr-praxis.de/forum/images/styles/Aesthetica/buttons/viewpost-right.png (http://www.avr-praxis.de/forum/showthread.php?p=19649#post19649)
mit Pieszo-Elementen kenne ich mich fast gar nicht aus,



Piezos sind eigentlich ähnlich wie Quarze zu betrachten. Man hat eine Keramikscheibe mit zwei Kontaktflächen die sich bei Spannung durchbiegt oder wenn man sie mechanisch belastet eine Spannung liefert.

Die Dinger packst du einfach an einen Ausgangspin und erzeugst an dem ein wechselndes Signal (Bei Digitalkram eine Recheckschwingung). Fertig ist es. Piezos sind recht hochohmig und unkompliziert anzusteuern.

nur noch kurz was von meiner Seite dazu, Piezos (mal die wenigsten) mögen es wenn sie mit DC in Kontakt kommen ..(gehen dabei Kaputt). Einfach nen kleines C in Reihe zum PWM Pin, dann beugst du da schaeden vor.

für ne Sirene würde ich aber eher mit nem Lautsprecherlein machen .. (ist einfach Realistischer da die kleinen Piezos hochtöner sind).

Wie du den Ton ausgibst ist eigentlich relativ simpel ... wie dino schon meinte am bessten über einen Timer mit dessen Hardware PWM (wobei ich für ne Sirene nur nen 8 Bit Timer nehmen würde so fein aufgelöst muss der Sound ja normal nicht sein ^^.

Irgendwie musst du dir ein Grundton überlegen (die meisten Piezos wenn du damit erste Versuche machen willst liegen so bei ca. 3 - 4khz.) das ist die Grundfrequenz für diesen, (dort ist er am Lautesten).

Würde dir empfehlen erst mal einfach eine Tabelle mit 25 Werten machen und dort unterschiedliche pulsweiten zu hinterlegen (10, 20, 30, ... 250). Diese Tabelle legst du in einer Schleife in die PWM für jeweils 100ms. (damit bekommst du ein Gefühl wie sich dein Piezo anhört).

Mit der Tabelle kannst du dann auch gleich Melodien machen was du magst (ob Sirene oder wie auch immer)..

Hoffe ich konnte dir damit etwas helfen,
Gruß,
Manuel