PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Eigenes AVR-Flashboard erstellen



Einfachkrank
14.11.2007, 13:26
Moin zusammen!

Hoffe, dass ich hier richtig bin, bei den vielen Unterforen... Ich bin noch relativ neu in der Welt der Microcontroller und hab jetzt vor ein eigenes Flash- und Experiementierboard für AVR Mega16 & 32 (und auch für Mega 8 mit Adapter) zu entwickeln und herzustellen...

Habe einen Schaltplan mit EAGLE entworfen und hoffe, es kann hier jemand mal seinen produktiven Senf dazugeben ;-)

http://www.michael-eberhardt.de/projects/avrflashboard.png

Vielen Dank!

MfG Michael

nikolaus10
14.11.2007, 13:32
Hallo

Doch, da gibt es ein anderes Board wo es vielleicht besser hin passt.
AVR Hardware.

Aber, schoen gemacht !

Was ist das besondere an deinem Board?
Worin unterscheidet es sich von anderen AVR Testboards?
Hast du schon Platinen machen lassen?

MFG

Einfachkrank
14.11.2007, 13:40
Was ist das besondere an deinem Board?
Worin unterscheidet es sich von anderen AVR Testboards?

Um ehrlich zu sein, hab ich verschiedene Boards gesehen und mir nach meinem Geschmack die Details zusammengesteckt. Ich hatte folgende Überlegungen:

1. Bei der Spannungsversorgung ist per Jumper wählbar, ob ein Spannungsregler verwendet werden soll. Falls man ein Netzteil mit genau 5V hat oder falls nicht kann man zwischen 7V und 16V anklemmen und den Spannungsregler verwenden.

2. Grundsätzlich sind alle Ports über Wannenstecker anschließbar. Port B besitzt keine besondere Funktionl.

3. Die Signale des A-Port können wahlweise durch Jumper über 8 LED's angezeigt werden

3. Port C ist für einen externes LCD (max 80 Zeichen) vorgesehen, dass mit 4Bit mit Busy Variante angesteuert wird. Der Kontrastregler ist im Board integriert.

4. Port D ist geteilt in 4 Taster und einen 4-poligen Codeschalter für eingaben und Programmtests...

5. Und ich wollte so was schon immer mal selber entwickeln, deswegen hier der Versuch ;-)

Achso, und Platinen sind noch nicht hergestellt, da ich erst die Schaltung mal von jemand korrigieren lassen wollte, wegen eventueller Fehler...
Oder ist ein Layout gemeint, das ist auch schon da, falls Interesse besteht...

EDIT: Hab noch was vergessen... ISP Schnittstelle sollte es sein, da ich noch nicht sicher war, ob ein Serieller oder USB Anschluss daran soll... So blieb ich flexibel was den Programmer betrifft

AlKI
14.11.2007, 13:49
Hi, habe mir auch gerade ein (zu Anfang noch reines) Flash-board für so ziemlich alle Arten von Microcontrollern gemacht. Einfach auf ne Lochrasterplatine einige IC- Stecksockel gelötet, und noch ne externe lpt-ISP-Schaltung gebaut.

Ich hab die (acht 2X7 Pin) IC-Stecksockel in drei Reihen nebeneinander angeordent, so dass ich kleinere Microcontroller in der mittleren Reihe, und größere in der jeweils zweitäusersten Reihe einsetzen kann. die äuserste reihe nutze ich wie ein Steckbrett, um die ganzen (Programmier- , Stromversorgungs- uns jetzt auch vom Programm genutzte) Aus- und Eingänge zu belegen.

Da es eine Lochrasterplatine ist, kann ich jederzeit irgendetwas dazubauen und variabel anschließen (z.Z. 10 LEDs, 4 Taster und ein Lautsprecher mit Transistor zum verstärken)

ich weiß, meine Beschreibungskenntnisse sind etwas mies, aber ich hoffe man versteht mich.

chr-mt
14.11.2007, 13:51
Hi,
ich würde, einen 6-poligen ISP Stecker vorsehen, da das bei Atmel Standard ist (STK500, AVRISP).
AREF nicht direkt an VCC hängen, sondern mit Spule und Kondensator versehen.
Bei Reset fehlt der Kondensator gegen Masse.

Was ich vorsehen würde,
wäre ein Max232 mit entsprechender 9-pol D-Sub Buchse.
SV4 scheint für ein LCD Display zu sein, richtig ?
Warum keine eine 16 polige Stiftleiste für ein Standard Display inklusive Vorwiderstand für die Hintergrundbeleuchtung?
EDIT: hat sich erledigt.... hast das ja schon erklärt, während ich noch geschrieben habe :)

Gruß
Christopher

CSR
14.11.2007, 13:52
sieht cool aus

hab so n board auch mal angefangen, bin aber mangels zeit immer noch nicht wirklich fertig(höchstens frühe alpha-version)

also mich würd auch mal des layout interessieren

grüße

AlKI
14.11.2007, 13:55
ich würde, einen 6-poligen ISP Stecker vorsehen


hab ich auch so gemacht, obwohl ich die Schaltung, wie schon geschrieben, selbst gebaut habe.



SV4 scheint für ein LCD Display zu sein, richtig ?
Warum keine eine 16 polige Stiftleiste für ein Standard Display inklusive Vorwiderstand für die Hintergrundbeleuchtung


du kannst einen Port ja auch auf mehrere Stiftleisen gleichzeitig legen, also das LCD einmal mit und einmal ohne hintergrundbeleuchtung.

Einfachkrank
14.11.2007, 14:09
Ok, 6 poliger ISP Stecker - überredet *g*


AREF nicht direkt an VCC hängen, sondern mit Spule und Kondensator versehen
Hab das hier auf den Wissenseiten immer so gesehen... Welchen Vorteil hat das?

Bei Reset fehlt der Kondensator gegen Masse
Passt das mit C1 nicht so? Der steht etwas in der Weltgeschichte rum, aber dachte eigentlich, dass der das sein soll


Max232 mit entsprechender 9-pol D-Sub Buchse
Für Datenausgabe zum PC oder für integrierten Programmer? Programmer wollte ich extern halten, da ich dann flexibel bleibe ob Seriell oder USB(da der auch schon in Planung steht)...


Warum keine eine 16 polige Stiftleiste für ein Standard Display inklusive Vorwiderstand für die Hintergrundbeleuchtung?
Bin mit LCD's noch nicht weiter als bis zu diesem Konzept vorgedrungen, wie sieht das dann genauer aus?

AlKI
14.11.2007, 14:31
Zitat:
Max232 mit entsprechender 9-pol D-Sub Buchse

Für Datenausgabe zum PC oder für integrierten Programmer? Programmer wollte ich extern halten, da ich dann flexibel bleibe ob Seriell oder USB(da der auch schon in Planung steht)...


MAX232 is für die Kommunikation mitm PC (soweit ich weiß. achtung: nutzt +9V für high und -9V für low, guck im wiki mal nach)

Hubert.G
14.11.2007, 14:44
Nicht AREF sondern AVCC sollen mit Spule und Kondensator versehen sein. AREF gehört über einen 100n Kondensator an GND und eventuell sollte mit einem Jumper die Möglichkeit gegeben sein einen externe Referenzspannung anzulegen.
C1 ist für VCC, auf den Reset-Pin gehört ein eigener Kondensator
RXD und TXD solltest du freihalten für die Datenübertragung, das hat nichts mit dem Programmer zu tun.
Für ein LCD brauchst du, je nach Beschaltung, 6 oder 7 Pin www.roboternetz.de/wissen/index.php/LCD-Modul_am_AVR
Die Beschaltung von PortA noch mal überdenken. So kannst du den ADC nur schwer nützen.

T.J.
14.11.2007, 14:55
soweit klingt es mit den ganzen Vorschlägen ja ganz gut. stell doch bitte mal deine überarbeitete Version nochmal online, wenn du das korrigiert hast :)

chr-mt
14.11.2007, 15:07
Nicht AREF sondern AVCC sollen mit Spule und Kondensator versehen sein.
Stimmt, hast Recht, hab mich verschrieben ;)
Kann aber trotzdem nicht schaden, wenn man an AREF eine Spule hängt, wenn man externe Spannungen als Referenz nimmt. :)

Den MAX232 würde ich für zum steuern externer Hardware, bzw. zum steuern vom PC aus vorsehen.
Ich hab' zusätzlich auch immer noch gerne einen RS485 Treiber (MAX481) dran.


Gruß
Christopher

Einfachkrank
14.11.2007, 15:50
So... Ich hoffe jetzt ist bei dem schnellen Überarbeiten nicht all zu viel schief gegangen!

Hab jetzt den Kondensator für Reset eingefügt, nen Jumper für externe Versorgung an den AREF eingebaut und den 6poligen ISP statt 10poligen...

Soweit erstmal... MAX232 und das mit dem LCD bastel ich dann noch mal in Ruhe heute Abend um und stell ich noch ne Version rein, die kritisiert werden darf :-) (Aber trotzdem schon mal vielen Dank für den Input mit dem MAX232 - an den hatte ich nämlich gar nicht gedacht...)

Hier das Update: http://www.michael-eberhardt.de/projects/avrflashboard1.png


Die Beschaltung von PortA noch mal überdenken. So kannst du den ADC nur schwer nützen.
Klappt das über den Port und die Deaktivierung der LED's nicht mehr? Klär mich auf, zur Not werf ich die LED's an Port B und lass den A für den ADC frei...

Hubert.G
14.11.2007, 16:33
Der Kondensator von AREF auf GND fehlt noch.
Wenn du mehrere ADC Eingänge gleichzeitig nützen willst, wäre es besser wenn du die LED verlegst. Ich habe es bei meinem Board so, das ich mir die LED dorthin stöpsle wo ich sie brauche.

Einfachkrank
14.11.2007, 21:46
Aktueller Schaltplan: http://www.michael-eberhardt.de/projects/avrflashboard2.png

Wie machst du das mit deinen LED's, weil du sagst, du stöpselst sie dahin wo du sie brauchst?

Mit dem MAX232 bin ich auch auf nen neuen Trichter gekommen, was wirklich keine schlechte Idee ist. Das sollte doch kein Problem sein, den noch zusätzlich dranzuhängen, da ich am Port D eh nur Taster und Codierschalter hängen habe, oder?

Zu LCD's hab ich noch ne Frage: Das Standard LCD verlangt für die BL-Beleuchtung 4,2V und ein blaues mit weißer Schrift nur 3,5V... Gibts da ne Möglichkeit um flexibel zu bleiben? Oder soll ich mir wieder nen Jumper für den passenden Vorwiderstand setzen? *g*

MfG Michael

T.J.
15.11.2007, 06:00
man könnte sich LEDs mit entsprechenden Vorwiderständen angelötet bauen und neben dem Controller so Buchsen für die Pins machen. Dann kannst sie hinstecken wo du willst. Problem: brauchst nur noch ne Masse

Einfachkrank
19.11.2007, 23:20
So, also hab jetzt die LED's nochmal drauf gelassen und eine aktuelle Version als Layout verfasst...

Hier sind noch mal alle aktuellen Links der aktuellen Variante:
http://www.michael-eberhardt.de/projects/avrflashboard2.png
http://www.michael-eberhardt.de/projects/layout.png

http://www.michael-eberhardt.de/projects/top.png
http://www.michael-eberhardt.de/projects/bottom.png

Hubert.G
20.11.2007, 09:34
Sieht nur auf dem ersten Blick nicht schlecht aus, allerdings sind die Kondensatoren C1, C10, C11 zu weit vom µC entfernt. Parallel zu C7 gehört je nach Type des Regler ein Kondensator mit 100 bis 330n. Dieser KOndensator und C9 so nahe wie möglich beim Regler.
D2 würde ich so weglassen, sie verschlechtert nur die Eigenschaft des Reglers und verringert die Spannung, gib sie besser in Sperrrichtung parallel zu Regler.
Im Layout ist am JP3 zwischen Pin3 und 6 eine Brücke die nicht hingehört.
Die Stromversorgung für den MAX232 fehlt, gehört mit "invoke" eingefügt, fehlt auch im Layout.
Wofür R3, R4 sind ist nicht ersichtlich. Du solltest noch über Jumper PullUp für I2C vorsehen, PC0, PC1.
Ich habe bei meinem Board zu den µC-Pin noch einen einreihigen IC-Sockel gelötet, das ist für eine Verbindung zu Steckbrett, so schnell mal was probieren, ganz ideal.

ogni42
20.11.2007, 10:25
Falls Du den ADC verwenden willst solltest Du noch das LC Glied, wie im Datenblatt beschrieben einbauen.

Am Ausgang des 7805 muss kein Elko, an den Eingang noch zusätzlich 100nF möglichst dicht beim Regler.

Einfachkrank
21.11.2007, 00:18
So, hab noch mal unter den letzten Links ein Update hochgeladen. Die Spannungsregelung sollte korrigiert sein(hatte die letzte Variante aus einer Schaltung in der Elektor abgekuckt und dachte, die macht vielleicht auch Sinn, aber dann doch die gute alte aus dem RN *g*)

@Hubert G.
Danke, hatte Pin 15+16 vom MAX232 total vergessen! Das mit dem einreihigen Sockel hab ich nicht ganz verstanden... Wie sieht das bei dir genau aus? Und hoffe, dass die Kondensatoren am uC jetzt nah genug dran sind, oder sollte man da noch mehr umstellen?

nikolaus10
21.11.2007, 07:23
Wenn du den Spannungsregler um 90 grad drehst ist er fuer einen eventuellen Kuehlkoerper besser geeignet. Wenn du ihn nahe genug an den Rand bringst koennte man rel. einfach ein eventuelles Gehaeuse als Kuehlkoerper nutzen.

Einfachkrank
21.11.2007, 08:17
Wenn du den Spannungsregler um 90 grad drehst ist er fuer einen eventuellen Kuehlkoerper besser geeignet. Wenn du ihn nahe genug an den Rand bringst koennte man rel. einfach ein eventuelles Gehaeuse als Kuehlkoerper nutzen.
Daran hab ich schon gedacht, aber trotzdem danke! Hab en kleinen länglichen und flachen Aufsteckkühlkörper und werd den 7805 höchstens noch ein Stück nach Rechts zum Platineninneren schieben, damit der Kühlkörper nicht über den Rand hinaussteht, aber sonst sollte der zwischen die Kondensatoren passen, da er recht schmal und mehr hoch ist...


@Hubert G.
Danke, hatte Pin 15+16 vom MAX232 total vergessen! Das mit dem einreihigen Sockel hab ich nicht ganz verstanden... Wie sieht das bei dir genau aus? Und hoffe, dass die Kondensatoren am uC jetzt nah genug dran sind, oder sollte man da noch mehr umstellen?

Hubert.G
21.11.2007, 09:03
Die Sockel gibt es bei Reichelt unter Kontaktbuchse, mit kleinem Abstand zum IC-Sockel setzen.
Die C wären mir immer noch zu weit weg, nach etwas 3cm Leiterbahn haben sie ihre Wirkung verloren. Ich nehme daher wenn es geht SMD-Kondensatoren und setze sie direkt an den Pin.
Die Diode in Sperrrichtung über den Spannungsregler ist auch noch empfehlenswert, ebenso das L in die AVCC-Leitung.
3 oder 4 blanke Sockelstifte um einen GND-Draht einzustöpseln oder die Masseverbindung zu Oszi herzustellen sind auch noch zu empfehlen.

AlKI
21.11.2007, 11:32
hmmm, ich würde noch versuchen, den Quartz näher an den Microcontroller zu setzen, hochfrequente Signale mögen glaub keine langen, ungeschirmten Leitungen...

Hubert.G
21.11.2007, 12:14
Das mit dem Quarz ist auch sicher richtig. Dazu solltest du noch versuchen zumindest auf einer Seite den GND als Polygon auszuführen.

Einfachkrank
22.11.2007, 00:05
Ok, hab noch versucht was an den Abständen zu drehen und hab die freien Flächen im Layout gefüllt...

Zu der Frage, warum Jumper und R3 und R4... Das war die Schnappsidee, flexibel zu bleiben zwischen unterschiedlichen LCD's, da die Datenblätter bei Reichelt zwischen Standard und z.B. blauen LCD's unterschiedliche Werte ausgespuckt hatten... Wenn es da von der Theorie Verbesserungsvorschläge gibt, dann immer her damit ;-)

Ansonsten hab ich jetzt nicht mehr vor, so viel daran zu ändern, da ich mit meinem ersten Flashboard ganz zufrieden bin, wenn es jetzt auch noch funktioniert *g* (Abgesehen von ner Spule, die ich noch einfügen kann)

MfG Michael

Hubert.G
22.11.2007, 09:10
Wenn du am Einfügen bist, dann zu Pin 15, 16 des Max auch noch ein 100n dazu. Überlege dir die Verwendung von SMD-Kondensatoren noch mal, die Größe 1206 lässt sich noch wunderbar löten.

magic33
22.11.2007, 09:31
Du legst dich ja mächtig ins zeug RESPEKT

Einfachkrank
22.11.2007, 11:15
Du legst dich ja mächtig ins zeug RESPEKT
Ich hoffe, das war jetzt keine böswillige Ironie O:)


Wenn du am Einfügen bist, dann zu Pin 15, 16 des Max auch noch ein 100n dazu. Überlege dir die Verwendung von SMD-Kondensatoren noch mal, die Größe 1206 lässt sich noch wunderbar löten.
Ich hatte mal ganz kurz einen der C's gegen nen 1206er SMD ersetzt, aber im Layout bei Eagle hat das gar keinen Platzunterschied gemacht und die 805er werden ja dann wirklich schon etwas klein... oder hatte ich da vielleicht den falschen an der Angel?!

Vielen Dank für die zahlreichen Tipps! ;-)

Hubert.G
22.11.2007, 12:43
Den 1206 kannst du ja unter den Sockel plazieren, also auf die Bottom-Seite. Sonst bringen sie ja keinen Vorteil.

Einfachkrank
22.11.2007, 17:42
Den 1206 kannst du ja unter den Sockel plazieren, also auf die Bottom-Seite. Sonst bringen sie ja keinen Vorteil.
http://www.michael-eberhardt.de/smilyes/bonk.gifDas stimmt natürlich... *g* Danke!