Forum: Mikrocontroller und Digitale Elektronik Frequenzgenerator mit ATMEGA8


von Karsten K. (do6kk)


Angehängte Dateien:

Lesenswert?

Hallo,

nachdem ich nun einige Nachbau-Projekte erfolgreich abgeschlossen habe,
möchte ich mit an ein eigenes Projekt basteln. Ich möchte gern ein 18kHz
Frequenzgenerator basteln und damit lästige Marder von unserem Dachboden
entfernen. Da ich mit meinem 17 Jahren leider noch nicht über ein sehr
ausgeprägtes wissen über AVR verfüge wollte ich Euch fragen ob Ihr 
einmal meinen Schaltplan durchsehen könnt und oder eventuell fehler 
aufdecken könnt ?

Über die Software habe ich mir noch keine großartigen gedanken gemacht,
ich habe einiges gelesen von Toggeln ,OCR1H und OCR1L aber ernsthaft 
habe
ich nur verstanden einen Timer mit einer bestimmten Freuqenz bis 256 
zählen
zulassen und damit einen Overflow zuverursachen, richtig?

Ich würde mich über ein paar nette Antworten von Euch sehr freuen.



Und fangt Bitte nich mit dem satz an steht alles hier im Forum denn,
das habe ich bereits auf Frequenzgeneratoren durchsucht und habe mir
damit meine eigenen Fragen gestellt!

LG Karsten

von Markus -. (mrmccrash)


Lesenswert?

Das einfachste sollte sein, den Timer1 in den PWM-Modus zu stellen und 
dessen OC1A Ausgang zu benutzen. Details dazu stehen im Datenblatt und 
auch hier im Forum, suche mal nach PWM mit Timer1 etc. Damit hast du ein 
schönes Rechteck-Signal am Ausgang.

Deine Ausgangsstufe musst du dann aber an PB1 klemmen - das ist der 
PWM-Out des Timer1.

_.-=: MFG :=-._

von Karl H. (kbuchegg)


Lesenswert?

Zu deinem Schaltplan:

gewöhn dir bitte an: Strom fliesst von + nach -. Am Schaltplan von oben 
nach unten. Fast hätte man es nämlich übersehen: dein Transistor ist ein 
PNP Typ. So wie du den verschaltet hast sollte es aber ein NPN Typ sein.

von Stephan H. (stephan-)


Lesenswert?

jo Karl Heinz,
ich auch, ich habe PNP gesehen und instinktiv angenommen Vcc ist oben.
so kann Mann Erwartungshaltungen SEHEN.

von avr (Gast)


Lesenswert?

Hallo Karsten,

das mit dem Transistor wurde schon gesagt.
Das Signal kann der Atmel mit Timer 1 oder mit Timer 2 erzeugen.

Schau mal im Tutorial nach CTC. Für 18 kHz brauchst du dann
36 kHz und den Toggle-Mode für den Ausgangspin (der muß auch
Ausgang sein).

Der AREF nicht an AVCC (kann intern geschaltet werden) sondern
mit 100 nF an GND wenn keine ext. Ref verwendet wird.

Der Quarz mit 12 MHz ist für 3,3V als Versorgung für den
Mega 8 nicht zugelassen (lt. Datenblatt).
Du bräuchtest den Mega8l.
Einfach den Internen Oscillator mit 8 MHz verwenden.
Hier bestimmt genau genug (es ist wohl egal wenn es 18,4 kHz
werden oder so).

Insgesammt ist der Mega8 etwas groß.
Ein Tiny13 wäre da wohl angebrachter.

Aber als  eine der ersten "Baselleien" brauchbar!

gruß avr

von Stephan H. (stephan-)


Lesenswert?

und die obere 3dB Grenzfrequenz des Hochtöners beachten.
Evtl.werden Ultraschallgeber benötigt.

Wäre schade wenn es nicht funktioniert weil der Speaker nur leise piept 
un es dem Marder egal ist. Das muss kesseln,.....sagte Werner

von avr (Gast)


Lesenswert?

Hallo Karsten,

stephan hat mich auf eine Idee gebracht mit dem Schallgeber.

Du kannst einen Piezo ohne Elektronik nehmen.
Die haben zwar eine Resonanz bei 2 - 4 kHz machen aber weit
mehr mit.
Es gibt da Typen, die bei 5-6 V schon mächtig Krach machen.

Zum Ansteuern dann einen kleinen Trick verwenden.
Nimm z.B. einen 74HC132 (als Inverter, beim Gatter beide Eingänge
zusammen), das Signal vom Atmel durch ein Gatter an
den einen Piezo-Pin, dieses noch mal Invertiert an den anderen
Piezo-Pin.
Dein Piezo sieht dann ein Signal mit 2 x VCC des Inverters
und ist damit lauter.

gruß avr

von vlad (Gast)


Lesenswert?

bild mir ein gelesen zu haben, dass man den AREF port offen lassen 
sollte, wenn man den ADC gar nich tbraucht, spart wohl strom.
AVCC und AGND müssen aber verbunden sein.

wie gsagt, die externe clock kannst du auch sparen, da 8Mhz dicke 
ausreichen sollten, wahrscheinlich kannst du sogar noch runter gehen.

Was ist denn die typische Marder-Schreck-Frequez?

von vlad (Gast)


Lesenswert?

eigendlich reicht auch ne simple multivibrator schaltung, oder ein ein 
555er IC mit nem kleinen piezzo speaker
die dinger kriegste überall aus den singenden Glückwunschkarten

von avr (Gast)


Lesenswert?

@vlad

>AVCC und AGND müssen aber verbunden sein.

Ja, aber nicht miteinander! AVCC mit VCC, AGND mit GND!

>spart wohl strom

Wie soll der bei einem Kondensator und DC fließen?

von vlad (Gast)


Lesenswert?

> Ja, aber nicht miteinander! AVCC mit VCC, AGND mit GND!
DAs sollte hoffentlich klar sein ;)

> Wie soll der bei einem Kondensator und DC fließen?
er hats ja direkt mit vcc verbunden.
Wenn AREF == VCC, sollte man sowiso lieber die interne VCC-REferenz 
benutzen und den pin nur mit einem Kondensator gegen Masse verbinden

von avion23 (Gast)


Lesenswert?

Hi Karsten,
zusätzlich zu allem was gesagt wurde: Vielleicht auch noch einen 
Widerstand in Reihe zum Schallwandler vorsehen? Nicht, dass der Strom 
für Transistor oder Schallwandler zu groß wird.

Sieht aber ganz ordentlich aus. Wie programmierst du den atmega?

von vlad (Gast)


Lesenswert?

bei einem piezo brauchst, denk ich nicht mal einen transistor.

von Karsten K. (do6kk)


Angehängte Dateien:

Lesenswert?

Vielen Dank für eure Antworten!

Ich habe den Schaltplan nocheinmal überarbeitet und habe Heute auf der
Arbeit etwas gelesen und festgestellt Marder und Katzen sprigen auf
Frequenzen von 12 bis 25KHz an. Also isses relativ egal wiehoch die
Frequenz ist man soll diesen Ton allerdings nicht als fauer sondern als 
Impuls ton ausgeben sozusagen 10Sekunden Ton und 10Sekunden kein Ton.
Dies werde ich wohl über einen zweiten internen Timer abhandeln müssen?

Zum Programmieren lese ich gerade fleißig im Internet weiß aber leider 
noch nicht zu welcher Programmiersprache ich mich hinreißen lasse. 
Vielleicht habt
ihr ja noch einen tipp?

Zum Software überspielen benutze ich bei meinen Nachbauprojekten immer
das AVR-Board von Pollin oder bei Größeren Chips ein selbstgebasteltes
ISP Interface :-)

Danke Nocheinmal für eure Hilfe

Lieben Gruß

Karsten

von spess53 (Gast)


Lesenswert?

Hi

>Ich habe den Schaltplan nocheinmal überarbeitet

Da fehlen aber noch die Kondensatoren (100n) an VCC und AVCC. Der 
Kondensator an VREF hat keine Verbindung nach Masse.

>etwas gelesen und festgestellt Marder und Katzen sprigen auf
>Frequenzen von 12 bis 25KHz an.

Katzen tun nichts und Marder lachen über dein Gepiepse. Nimm 12kHz, 
damit wenigstens du etwas davon hast.

MfG Spess

von avr (Gast)


Lesenswert?

Hallo Karsten,

wenn du Assemblerbeispiele suchst schau mal hier:

http://www.avr-asm-tutorial.net/avr_de/praesentation/index.html

Besonderst Nr. 6 und 8 passen recht gut, und die Erklärung
für die Tonerzeugung stimmt auch für C.

Diese Beispiele sind jedoch mit Tiny13, aber Mega8 ist
rechtr ähnlich und das Tutorial hilft hier weiter.

gruß avr

von gerd (Gast)


Lesenswert?

Ich habe die Präsentation, auf die "avr" im vorherigen Beitrag verweist, 
verlegt:
http://www.avr-asm-download.de/praesentation/index.html

mfg
gerd

von Luftfeuchte (Gast)


Lesenswert?

Den Marder wird das alles NICHT interessieren...
Auch die Programmiersprache ist ihm völlig Latte.

Glaub mir......;-(

von Ulrich H. (lurchi)


Lesenswert?

Nur für die Tonerzeugung reicht es wenn der µC mit 1 MHz internem Takt 
läuft. Den Lautsprecher kann man auch mit der ungeregelten ca. 5 V 
Spannung laufen lassen, dann mit einem NPN statt PNP Transistor. Man hat 
dann immer noch die Wahl ob man 3,3 V oder 5 V haben will.

Die Beschaltung von AREF ist so richtig, wenn man den ADC nicht braucht, 
kann man den Kondensator an AREF aber auch weglassen.

Für die AVRs bietet sich C mit GCC als Compiler an, etwa über Atmels 
AVRStudio als Umgebung.

von fredl (Gast)


Lesenswert?

Hallo Karsten,

vom "olympischen Geist" her gesehen, ist es sehr löblich, sich mit der 
Programierung eines Atmega zu beschäften, um einen Ultraschall-Generator 
zum Laufen zu bringen.

Aber mit wesentlich weniger Beschaltungsaufwand kann man solch ein 
Gerätchen mit einem NE555 u. 12 V-Stecker-Netzgerät aufbauen.
Ich habe zusätzl. einen 2. Multivibrator aufgebaut u. mit etwa 100 Hz 
den US-Gen. getaktet (ein- u. ausgeschaltet).

Das ergibt ein "Zwitschern", mit dem man bestimmte Viecher vergrämen 
kann.
Bei uns dauerte es etwa eine Woche, bis ich ein Rattenpärchen, daß sich 
unter unserem Gartenhaus eingenistet hatte, zum Auswandern überzeugen 
konnte.

Ansonsten:
Karsten K. schrieb:
> damit lästige Marder von unserem Dachboden
> entfernen.

Hab ich mit meinem Gerät beim Nachbarn probiert. Der Marder war 
scheinbar "ultraschall-resistent".
Mein Nachbar hat sich dann bei einem Jäger eine Lenbendfalle für Marder 
besorgt. Hat geklappt!

Viel Erfolg, fredl

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.