Während meines Studiums möchte ich ein Gerät bauen/entwerfen, welches Mikrocontrollergesteuert ist. Dazu habe ich mich erstmal hingesetzt und nach meinen Anforderungen einen µC rausgesucht und die Pinbelegung erarbeitet (Details zur Funktion unten). Meine Frage an Euch ist jetzt, ob Ihr irgendwo Grundsätzliche Fehler/Verbesserungsvorschläge findet bzw. habt? Im Anhang ist mein geplanter Schaltplan gezeichnet mit Eagle. Alle Bauteile bei denen keine Werte dran stehen müssen noch dimensioniert werden. 1. Ich habe für mein Projekt den Atmel XMega128A1 ausgesucht. Sind die Anschlüsse von VCC, AVCC, GND, PDI und Reset richtig platziert? Der Taster oben links (S1) ist gedacht für einen manuellen Reset, wobei LED1 leuchten soll sobald der Reset Taster gedrückt wird. Die Belegung der Pins für das Programmierinterface ist vorerst willkürlich, weil ich die passende Buchse für den Stecker des Atmel AVRISP mkII (USB) nicht in Eagle gefunden habe. Generell würde aber die Programmierung mit dem Atmel AVRISP mkII funktionieren oder? 2. Der Taster S2 soll der Ein-und Ausschalter werden. Die Taster S3-S8 sind für die Menünavigation bestimmt. Ich kann doch mit jeden dieser Taster einen Interrupt auslösen, um im Menü zu navigieren oder? Gibt es noch eine Möglichkeit mit Hilfe eines Kondensators abzufragen, ob die Taste gedrückt wurde? 3. Die Leuchtdioden LED2 und LED3 sollen mir anzeigen, ob die Platine mit Spannung versorgt wird. 4. Mit den ADC soll ein optisches Signal ausgewertet werden, welches von den beiden Fotodioden kommt. Ebenso überwacht werden soll die Temperatur und die Batteriespannung (optional für später). Wie die Fotodioden Beschaltet werden (kommt später). 5. Die DAC sollen zwei optische Signale durch zwei LED's modulieren. Kommt auch später. 6. Die LED 4 dient zur Kontrolle, ob das Board auf meine Anweisungen reagiert. 7. Das Gerät soll über ein Display verfügen mit den Controller HD44780/KS0066. Das Display ist dazu an den Pins 25-30 angeschlossen. Kommt auch später. Sind die Funktionen die ich erreichen will mit der Schaltung möglich? Alles, was noch nicht genau spezifiziert ist (Display, Fotodioden), kommt später. Vielen Dank im Vorraus!
/Reset ist Low-active, dass heißt, wenn am Pin GND anliegt, ist der µC zurückgesetzt. Bei dir also immer dann, wenn S1 nicht gedückt ist.
Fange doch erst mal mit einem Mega88 an. Der kann auch ein LCD und dafür gibt es Beispiele hier. http://www.mikrocontroller.net/articles/Absolute_Beginner-AVR_Steckbrettprojekte Axel
danke für den tipp mit dem reset! hab den xmega ausgesucht, weil der DAC's hat... außerdem möchte ich das gerät später vlt um einige extra funktionen erweitern die rechenleistung dürfte bei den älteren modellen dann jetzt und in der zukunft nicht unbedingt ausreichen, weil es echtzeitfähig sein soll also den µC würde ich ungern ändern, aber ansonsten ist die beschaltung in ordnung ja?
Hi, ich habe zwar noch keine xMega verwendet aber die brauchen bestimmt auch ihre Abblockkondensatoren. Vielleicht solltest du auch einen Quarz einplanen, UART oder RS232 zur Kommunikation, eine stabile Spannungsversorgung. Wie ich Atmel kenne gibts dafür einen ganzen Haufen Application Notes. Echtzeitfähigkeit ist Definitionssache.
Hi >also den µC würde ich ungern ändern, aber ansonsten ist die beschaltung >in ordnung ja? Nein. Z.B. gehört an jedes (A)VCC-GND-Pärchen ein Abbblockkondensator. >die rechenleistung dürfte bei den älteren modellen dann jetzt und in der >zukunft nicht unbedingt ausreichen, weil es echtzeitfähig sein soll Du scheinst da noch keine rechte Vorstellung davon zu haben. >5. Die DAC sollen zwei optische Signale durch zwei LED's modulieren. >Kommt auch später. Dafür gibt es PWM. Der DAC Ausgang kann nur sehr bedingt eine LED treiben. > Das Display ist dazu an den Pins 25-30 angeschlossen. >Kommt auch später. Der ATXMega ist fast unbeschaltet. Und du nimmst 4-Bit Mode. MfG Spess
Johannes M. schrieb: > Vielleicht solltest du auch einen Quarz > > einplanen, UART oder RS232 zur Kommunikation, eine stabile > > Spannungsversorgung. Die Spannungversorgung ist gedanklich schon mit eingeplant, hatte es versucht anzudeuten mit den Symbolen aus Eagle. Die Ports E und F sind noch frei, über die kann man doch UART und RS232 laufen lassen oder? Soweit habeich nämlich noch nicht geplant xD erstmal soll der erste Prototyp laufen mit Display und vlt Belichtungsmessung der Fotodioden. spess53 schrieb: > Nein. Z.B. gehört an jedes (A)VCC-GND-Pärchen ein Abbblockkondensator. also zwischen GND-VCC, AVCC-GND und AVCC-VCC ein kondensator? (100nF hab ich in nem Tutorial gelesen!?) spess53 schrieb: > Dafür gibt es PWM. Der DAC Ausgang kann nur sehr bedingt eine LED > > treiben. was meinst du mit sehr bedingt? es sollen auf beiden led's zwei übereinanderliegende "sinuskurven" (blutdruckkurve) modelliert werden, wobei auch pulsform,störspitzen, artefakte,... vom benutzer ausgewählt werden können die led's sollen dann auch noch abwechselnd leuchten mit einer frequenz von etwa 4kHz spess53 schrieb: > Der ATXMega ist fast unbeschaltet. Und du nimmst 4-Bit Mode. hab jetzt den 4-bit modus gewählt, weil hier dazu ein Tutorial zu finden ist MfG Hendrik
noips schrieb: > Überlege dir, was du da an PK7 machst. Macht das Sinn? ui da hab ich mich aber ordentlich verzeichnet, soll nen taster werden wie die anderen unten...
Johannes M. schrieb: > Vielleicht solltest du auch einen Quarz > > einplanen, UART oder RS232 zur Kommunikation, eine stabile > > Spannungsversorgung. Achso die Sache mit dem Quarz habe ich glatt vergessen, wollte noch fragen wie und wo ich den anschließen kann!?
Hendrik E. schrieb: > wollte noch > fragen wie und wo ich den anschließen kann!? Am Ende kommt es dann evtl. noch so, dass der größte Teil deiner Schaltung von den anderen entwickelt wurde. Die Antwort auf diese Frage kannst du ja versuchen, selbst im Datenblatt herauszufinden. Man kann zwar alles fragen, aber du sollst ja auch lernen, selbständig zu arbeiten, zumindest bei solchen Sachen, die du selbst auch herausfinden kannst.
:
Bearbeitet durch Admin
Ja stimmt hast recht! Bin einen kurzen Moment der Bequemlichkeit verfallen... Kann ich den Quarz einfach zwischen PR1(XT1) und PR0(XT2) einsetzen?
Hi >was meinst du mit sehr bedingt? Ich habe das Datenblatt nur mal schnell überflogen. Der DAC hat einen minimalen Ausgangswiderstand von 300R. Da bleibt bei 3,3V nicht viel für die LED übrig. Hast du auch beachtet, das der ATXMega ein sehr bastelfreundliches Gehäuse hat. Du kannst löten? MfG Spess
spess53 schrieb: > Ich habe das Datenblatt nur mal schnell überflogen. Der DAC hat einen > minimalen Ausgangswiderstand von 300R. Da bleibt bei 3,3V nicht viel für > die LED übrig. Außerdem mußt Du erstmal über die Schwellspannung kommen, der Aussteuerbereich ist also nur ~50%. Für LEDs ist daher eine PWM sinnvoller. Peter
Hendrik E. schrieb: > Im Anhang ist mein geplanter Schaltplan gezeichnet mit Eagle. Nur am Rande: in einem Schaltplan haben 45° Leitungen nur in äusserstem Notfall was zu suchen. Auf der Platine sind 45° Winkel gern gesehen. Hendrik E. schrieb: > Während meines Studiums möchte ich ein Gerät bauen/entwerfen, welches > Mikrocontrollergesteuert ist. Dazu habe ich mich erstmal hingesetzt und > nach meinen Anforderungen einen µC rausgesucht Nach dem Motto: der Weg ist das Ziel? Normalerweise habe ich eine Anforderung/Aufgabe und wähle entsprechend der Anforderungen einen uC aus...
:
Bearbeitet durch Admin
Hendrik E. schrieb: > die led's sollen dann auch noch abwechselnd leuchten mit einer frequenz > > von etwa 4kHz die sind dann quasi immer an... so schnell kann keine led das an/aus spiel... mal davon abgesehen dein auge auch nich...
achso... nimm dir einfach nen controller, bastel dir ne spannungsversorgung drum rum, (die Abblockung beachten). wenn du noch nicht genau weißt was du vor hast, dann führe alle Ports auf Stiftleisten. So hast du ein Grundboard und kannst dir dann immer wieder Zusatzmodule auf Lochraster dazu basteln... An deiner Stelle würde ich nen Mega8 oder Mega16 für die ersten Gehversuche nehmen... Aber das muss jeder selbst entscheiden... Als Anfänger geht die Löterei sowieso schief und wird dir ne Menge nerven kosten.. Ausserdem is doch ein XMega rel. teuer für die ersten Gehversuche...
Als Anfänger sollte man auch bedenken, daß der Xmega sehr neu ist und daher deutlich weniger verbreitet als die standard AVRs. Bei Fragen kann es also oft passieren, daß keiner eine Antwort weiß. Z.B. ich kenne den Xmega nicht und werde ihn auch nicht einsetzen. Die Xmega haben ja nichtmal 5V tolerante Eingänge. Auch wenn viele ICs auch 3,3V fähig sind, bevorzuge ich doch die 5V-Technik und da haben die standard AVRs die Nase vorn. Es ist schon ein Unterschied, ob ich z.B. den INA122 bis 3,4V ansteuern kann oder nur bis 1,7V. Oder direkt nen Logik-Level-FET anschalten. Peter
spess53 schrieb: > Ich habe das Datenblatt nur mal schnell überflogen. Der DAC hat einen > > minimalen Ausgangswiderstand von 300R. Da bleibt bei 3,3V nicht viel für > > die LED übrig. Die beiden Dioden werden aber auch nur mit maximal 1,9V oder 1,1V betrieben, sollen aber eher nur 40% von ihrer maximalen Lichtintensität abgeben. Peter Dannegger schrieb: > Für LEDs ist daher eine PWM sinnvoller. hab ich da jetzt ein vVerständnisproblem, oder komm ich bei den PWM auch nur auf 3,3V abzüglich dessen was am Tiefpass verloren geht!? spess53 schrieb: > Hast du auch beachtet, das der ATXMega ein sehr bastelfreundliches > > Gehäuse hat. Du kannst löten? Ja kann ich hab (auf Arbeit) schon einiges solches kleines Zeug gelötet. Max schrieb: > wenn du noch nicht genau weißt was du vor hast, dann führe alle Ports > > auf Stiftleisten. So hast du ein Grundboard und kannst dir dann immer > > wieder Zusatzmodule auf Lochraster dazu basteln... ich wollte vom µC alle Pins mit Stiften Versehen und drumherum auch alles, weil ich stark davon ausgehe, dass ich noch im Laufe meiner Versuche vieles ändern werde... Max schrieb: > die sind dann quasi immer an... so schnell kann keine led das an/aus > > spiel... mal davon abgesehen dein auge auch nich... doch können die LED's die ich habe schon, ich möchte sie ja nicht blinken sehen sondern damit etwas messen und da ich etwas dynamisches messen will (f = 1kHz) brauch ich leider diese hohe frequenz Lothar Miller schrieb: > Nur am Rande: in einem Schaltplan haben 45° Leitungen nur in äusserstem > > Notfall was zu suchen. Auf der Platine sind 45° Winkel gern gesehen. danke für den hionweis, werde jetzt erstmal alle eure vorschläge einarbeiten und es dann noch einmal posten Lothar Miller schrieb: > Nach dem Motto: der Weg ist das Ziel? > > Normalerweise habe ich eine Anforderung/Aufgabe und wähle entsprechend > > der Anforderungen einen uC aus... teils teils... schreib eine studienarbeit über die messung der spitzenwellenlänge von monochromatischen licht (dazu die beiden Fotodioden), möchte es aber nich zu theoretisch machen, deswegen möchte ich parallel dazu das ganze mit µC aufbauen
>Die beiden Dioden werden aber auch nur mit maximal 1,9V oder 1,1V >betrieben, sollen aber eher nur 40% von ihrer maximalen Lichtintensität >abgeben. Dann leuchten sie nicht, die Flussspannung der meisten LEDs ist groesser als 2,0V. Die Spannungs als Regelparameter fuer LEDs ist denkbar schlecht, besser ist es, den Strom mittels PWM zu stellen. Da braucht man auch keinen Tiefpass. Das Menge des abgegebenen Lichts ist direkt proportional zum Strom.
Hans W. schrieb: > Dann leuchten sie nicht, die Flussspannung der meisten LEDs ist groesser > > als 2,0V. Doch tun sie. Wie gesagt die meisten LED's. Habs auch schon ausprobiert, die leuchten, man sieht halt bloß nicht die Taktung. Hans W. schrieb: > Die Spannungs als Regelparameter fuer LEDs ist denkbar > > schlecht, besser ist es, den Strom mittels PWM zu stellen. Da braucht > > man auch keinen Tiefpass. Das Menge des abgegebenen Lichts ist direkt > > proportional zum Strom. Irre ich mich jetzt oder erhält man beim PWM nicht auch eine Spannung und keinen Strom? Außerdem lässt sich doch auch Diodenstrom (der ja für das Licht verantwortlich ist) auch als Funktion von der Spannung über der Diode darstellen oder? Damit kann ich doch dann den Strom über die Spannung am DAC regeln? Es kommt dabei auch auf eine sehr genaue Taktung der beiden LED's an. Soll immer Rot, IR und dunkel getaktet sein mit ca. 4kHz.
Wenn du die PWM erst auf einen TP gibst dann ja, aber das ist ja nicht sinn der Sache. Es kommt wie immer auf die Anwendung an. Klassisch nimmt man einen Transistor in Emitterschaltung mit LED plus Widerstand. Das Tastverhaeltnis bestimmt dann den mittleren Strom, und damit die Helligkeit. Wenn du jetzt natuerlich so schnell abtastest, dass du diese Puls auf dem Oszi sehen kannst, dann hilft dir das nichts. Du musst also ueber die mittlere Helligkeit messen. >Außerdem lässt sich doch auch Diodenstrom (der ja für das Licht >verantwortlich ist) auch als Funktion von der Spannung über der Diode >darstellen oder? Damit kann ich doch dann den Strom über die Spannung am >DAC regeln? Ja, da es aber eine wird dann eine e-Funtkion, also nicht linear. Bei der PWM kannst du halt den Strom und demit die Helligkeit einfach linear einstellen. Das nichtlineare wirst du mit deinem DAC nicht gut hinbekommen. Sonst waere ein U/I Konverter mit OPV noch denkbar, da kannst du dann auch keinen geliebten DAC einsetzen. Beispiel im Datenblatt des LT1800, das geht aber auch mit jedem anderen billigen RAIL TO RAIL OP, der die 4 kHz hinbekommt.
Hans W. schrieb: > Sonst waere ein U/I Konverter mit OPV noch denkbar, da kannst du dann > > auch keinen geliebten DAC einsetzen. Beispiel im Datenblatt des LT1800, > > das geht aber auch mit jedem anderen billigen RAIL TO RAIL OP, der die 4 > > kHz hinbekommt. Ah klasse! Hatte ja Anfangs gesagt, dass ich die Beschaltung der LED's usw. noch nicht spezifiziert habe. Die Info, dass es grundsätzlich funktioniert ist schon einmal super.
Mal ganz ehrlich, Du solltest erst einmal das AVR-Tutorial komplett durcharbeiten (nicht nur lesen). So, wie sich dein aktueller Wissensstand für mich darstellt, ist dein Vorhaben völliger Overkill für dich. Ist nicht böse gemeint. Jeder fängt mal an und hat zu Beginn evtl. große Ziele. Die sollte man gerade zu Beginn jedoch ziemlich niedrig Stecken.
Chris schrieb: > Mal ganz ehrlich, Du solltest erst einmal das AVR-Tutorial komplett > > durcharbeiten (nicht nur lesen). So, wie sich dein aktueller > > Wissensstand für mich darstellt, ist dein Vorhaben völliger Overkill für > > dich. > > Ist nicht böse gemeint. Jeder fängt mal an und hat zu Beginn evtl. große > > Ziele. Die sollte man gerade zu Beginn jedoch ziemlich niedrig Stecken. Ja das ist mir leider schon klar, aller Anfang ist schwer. Kann sein, dass das alsch rüber gekommen ist, aber ich möchte am Anfang nur mal die eine Kontroll-LED zum leuchten bringen und die Taster betätigen, dann Display, dann ... . Ich hab bloß alles jetzt auf einmal angezeichnet, weil ich das über meine Firma bestellen müsste und das dauert immer ewig. Hab dann damit vor erstmal nen Tutorial zum XMega durchzuarbeiten, dass ich im Internet gefunde habe und dann die ganzen Funktionen, die es erfüllen soll einzuarbeiten (geht ja schnell mit Steckkarte). Hab jetzt im Anhang nochmal meine verbesserte Version mit euren Vorschlägen.
Hendrik E. schrieb: > Ja das ist mir leider schon klar, aller Anfang ist schwer. Kann sein, > dass das alsch rüber gekommen ist, aber ich möchte am Anfang nur mal die > eine Kontroll-LED zum leuchten bringen und die Taster betätigen, dann > Display, dann ... Empfehlen würde ich es dir dennoch nicht, aber wenn Du es unbedingt so willst... ;-) Dann solltest Du zunächst einmal diese Dokument hier lesen. Insbesondere den Abschnitt "Power Supply Connections". http://atmel.com/dyn/resources/prod_documents/doc8278.pdf
Ich vermute ich bin nicht der einzige der immer noch nicht versteht warum es unbedingt so ein riesiger xMega mit tausend unbeschalteten Pins sein muss, oder?
moep schrieb: > Ich vermute ich bin nicht der einzige der immer noch nicht versteht > > warum es unbedingt so ein riesiger xMega mit tausend unbeschalteten Pins > > sein muss, oder? ne bist du nicht... aber meine frage war ja eine andere, nämlich ob es in dieser konfoguration funktionieren würde...!? die ganzen pins werden sicher irgendwann noch belegt für bluetooth, rs232, usw. möchte halt das immer weiter ausbauen ohne nen neuen controller zu nehmen
Chris schrieb: > Dann solltest Du zunächst einmal diese Dokument hier lesen. Insbesondere > > den Abschnitt "Power Supply Connections". > > http://atmel.com/dyn/resources/prod_documents/doc8278.pdf Danke dafür hab mir da ein paar Sachen mal zu Herzen genommen und eingearbeitet (siehe Anhanh). Muss ich die beiden Kondensatoren, die in dem Dokument eingezeichnet sind mit 15pF bei dem Oszillator einbauen, weil bei dem einem Tutorial sind die nicht drinne, genauso wie die 100F Kondensatoren?
Hendrik E. schrieb: > Muss ich die beiden Kondensatoren, die in dem Dokument eingezeichnet > sind mit 15pF bei dem Oszillator einbauen Nein, nur bei einem Quarz (crystal oscillator). Dein Oszillator entspricht in dem Dokument "External clock source". Hendrik E. schrieb: > wie die 100F Kondensatoren? Zu denen schau nochmal auf Seite 2. Dort steht in Fußnote 2 "Decoupling capacitor should be placed close to the device for each supply pin pair [...]".
Chris schrieb: > Zu denen schau nochmal auf Seite 2. Dort steht in Fußnote 2 "Decoupling > > capacitor should be placed close to the device for each supply pin pair > > [...]". den satz versteh ich nicht ganz muss ich jetzt insgesamt 10 Kondensatoren einbauen zwischen jeden einzelnen pin VCC/AVCC und GND? wie sehen die restlichen Komponenten aus? könnte ich die so bestellen (spannungsversorgung fehlt noch)? ich kann nämlich nur alles auf einmal bestellen (über meine firma und dann auch nur einmal)
Hi >den satz versteh ich nicht ganz muss ich jetzt insgesamt 10 >Kondensatoren einbauen zwischen jeden einzelnen pin VCC/AVCC und GND? Ja. MfG Spess
Nimm einen ATmega8/16 bzw. etwas moderner: ATmega88 für den Einstieg. Punkt, aus. Die Rechenleistung reicht erst mal dicke und einen DAC brauchst du bei deiner Anwendung erst Recht nicht.
ATMega 8 hat den Nachteil das ein Quarz I/O Pins benötigt die man dann nicht zur Verfügung hat, deswegen würde ich gleich zum ATMega16 greifen die zusätzlichen Ports kann man als Anfänger eh gebrauchen.
So hab jetzt nochmal die Entkoppelkondensatoren eingebaut. Ist es jetzt richtig oder habe ich das jetzt komplett falsch verstanden!? Sind die anderen Kondensatoren (10µF) und Spulen auch so richtig oder kann ich die weg lassen? Grüße Hendrik
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.