Hallo, ich muss zuerst gestehen, dass ich keine große ahnung von Mikrocontrollern habe. Ich habe jedoch schon einiges dazu durchgelesen - auch das wunderbare Tutorial auf dieser seite.. Nun zu meinem Problem bzw. meiner Jahresarbeit in der schule. Ich will mir einen Funktionsgenerator basteln, der sägezahn, dreieck und sinusfunktionen generieren kann - frequenzbereich 10-200000Hz... ich will ihn hauptsächlich zum testen von endstufen (meine eigentliche Leidenschaft) verwenden. Eine Burst-Funktion zum testen der maximal leistung, soll auch noch dazu. Deshalb schreibe ich aber nicht hier ins forum - den funktionsgenerator ansich habe ich eigentlich schon fertig aufgebaut. Ich will jedoch noch eine LCD anzeige, die mir dann die Frequenz und am besten noch die Ausgangsspannung anzeigt. Ganz cool wäre natürlich noch, wenn es die Funktionsart anzeigen würde.. 8) Ich habe auch schon sehr viel gegoogelt und auch einige gute seiten gefunden. Es wurde auch der Atmel AT90S4433, der dazu ja ganz gut geeignet sein soll, verwendet. Mein Problem ist nun, dass ich keine große ahnung davon habe wie man so etwas programmiert - gibt es da vielleicht ein Roh-Programm, dass ich nur nach meinen vorstellungen verändern müsste? Noch ein paar infos: Der Funktionsgenerator (XR2206) hat einen Ausgang, der immer ein Rechtecksignal ausgibt - das wäre dann der eingang für den Zähler....imo. Ich habe den gesamten Frequenzbereich, des Funktionsgenrators in 3 Frequenzbereiche unterteilt; man könnte also womöglich die Torzeiten daran anpassen.. Ich würde mich sehr freuen, wenn ihr mir weiterhelfen könntet... Viele Grüße, Ulrech
Schau Dir doch einfach ein AVR-ASM-Tutorial an. Im Endeffekt musst Du dazu nichts weiter tun, als in gewissen Zeitabständen (Timergesteuert) schauen, ob ein Signal da ist. Um die Stärke des Signals rauszubekommen solltest Du einen AD-Wandler benutzen, da der interne ADC der AVRs etwas langsam ist. Allerdings weiß ich nicht, ob das überhaupt nötig ist. Immerhin kannst Du Dir ja auch einfach anhand des Steuersignals deines Generators einfach ne Ausgabe auf nem Display machen... Wäre billiger...
"ich muss zuerst gestehen, dass ich keine große ahnung von Mikrocontrollern habe." Dann würde ich auch dazu raten, erstmal mit weniger komplexen Dingen in die MCs reinzuriechen. "ein Problem ist nun, dass ich keine große ahnung davon habe wie man so etwas programmiert - gibt es da vielleicht ein Roh-Programm, dass ich nur nach meinen vorstellungen verändern müsste?" Ich könnte Dir mein fertiges Programm geben. Aber ohne es zu verstehen, wirst du es wohl nie zum Laufen bringen. Oder eben mit genau der gleichen Schaltung und völlig unverändert. Es ist für den AT89C2051 in C geschrieben (0,5Hz...125MHz). "Ich habe den gesamten Frequenzbereich, des Funktionsgenrators in 3 Frequenzbereiche unterteilt; man könnte also womöglich die Torzeiten daran anpassen.." Warum ? Für das menschliche Auge sind Ausleseraten von 2..5Hz optimal. Daher solltest Du die Meßzeit auch auf 200..500ms festlegen. Peter
@TecDroiD: Also im Prinzip weiß ich schon was der Mikrocontroller machen soll, aber ich weiß nicht wie ich es ihm "sagen" soll. Er muss z.B. 100ms lang die steigenden flanken des signals zählen, dann mal 10 nehmen und dann an das LCD weitergeben - so denke ich mir das... aber wie man das Programmiert weiß ich eben nicht wirklich. Meinst du also, dass ich nochmal ein extra display für die ausgangsspannung anbringen sollte? Es gibt ja solche billig mini-multimeter, die ich dann einsetzen könnte, aber das wäre eben längst nicht so edel. Der AT90S4433 hat doch zwei analog multimeter integriert, wenn ich das richtig gelesen habe.... So in etwa stelle ich mir es vor: [url]http://www.qsl.net/zl1bpu/micro/CNTR/CNTR.htm[/url] @peter dannegger: "Dann würde ich auch dazu raten, erstmal mit weniger komplexen Dingen in die MCs reinzuriechen." Ich kann dich absolut verstehen.Mich ärgert es auch immer, wenn jemand ohne ahnung in ein Forum kommt und dann gleich nach einem fertigen plan fragt, damit er sich auch blos keine arbeit machen muss. Ich würde ja gerne das programmieren von MCs richtig lernen und bei kleinen versuchen anfangen, aber mir fehlt einfach die zeit dazu - und ob das programm dann laufen würde wenn ich es selber schreiben würde bezweifle ich. Ich würde mich sehr freuen, wenn du mir das Programm mailen könntest. Hat der AT89C2051 auch ein integriertes analog multimeter? Dann könnte ich noch versuchen die spannung in das Programm zu integrieren.. Welche Auslesezeit hast du denn in deinem Programm verwendet? Du hast recht bei der vergleichsweise geringen Bandbreite reicht eine Auslesezeit für den gesamten Frequenzbereich. Ich würde dann eine Auslesezeit von 200ms wählen, 100ms wären vielleicht noch besser. Eine Auflösung von 1Hz wäre mir schon sehr recht bei sehr niedrigen frequenzen - bei hohen ist es dann zwar etwas unübersichtlicher, aber das ist ja egal.. Viele Grüße, Ulrech
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.