PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Funktioniert das so ?



tonikaufmann
22.06.2005, 21:23
Hallo Zusammen

Ich hab heute meine Erste Mikroprozessorschaltung entworfen für den MEGA8.
Nun, wollte ich frage, ob das so funktionieren würde.
Ich möchte nicht schon beim ersten Anlauf nen Microkontroller in die ewgen Jagdgründe schicken :-s

Mit freundlichen grüssen
Toni Kaufmann

PS: Ich verwende Transistoren mit anderen Bezeichnungen als im Schaltplanangegeben. Es sind aber auch Darlington TRansistoren

roboter
22.06.2005, 22:06
Also zum Ansteuern von Motoren kann ich wirklich nur vernünftige Treiber ICs wie zum Beispiel den L293 oder den L298 empfehlen.

Daran wirst du sicherlich mehr Freude haben.

waste
22.06.2005, 22:38
So wie die Schaltung ist, werden nur ca. 3,5V an den Motoren anliegen, wegen der Emitterschaltung der Transistoren. Ich glaube nicht, dass das so gewünscht ist. Wenn du 12V an den Motoren haben willst, musst du die Motoren an die Kollektoren der Transistoren schalten und die Basis über einen Vorwiderstand betreiben. Der Emitter muss dann natürlich an Masse.

Gruss waste

izaseba
22.06.2005, 22:51
Hallo,
Der RESET Pin muß über ein 10 kohm Widerstand an +5V , es kann nähmlich vokommen, daß der MC sich in Dauerreset befindet.

Gruß Sebastian

tonikaufmann
23.06.2005, 12:15
wie gross müsste denn der basiswiderstand für den Transistor sein ?

waste
23.06.2005, 15:50
Ein Basiswiderstand von 1kOhm sollte eine gute Wahl sein. Er kann auch etwas abweichen, wenn du den Wert nicht zur Hand hast.
Der Widerstandswert hängt ab vom Strom den du treiben willst und von der Stromverstärkung der Transistoren. Angenommen der Motorstrom ist max. 2A und die Stromverstärkung bei dem Strom mindestens 2000, dann ist der Basisstrom 1mA. Damit der Transistor schön in die Sättigung geht und damit weniger Verlustleistung verbraucht, sollte man den Basisstrom aber um mindestens den Faktor 2 höher wählen. Der Basiswiderstand berechnet sich dann aus der Spannung am Widerstand (= 5V - Ube = ca. 3,6V) durch den Basisstrom. Bei 1kOhm würde dann 3,6mA Basistrom fliessen, was ausreichende Reserve bietet. Der genaue Wert ist gar nicht so wichtig, Hauptsache du hast genügend Reserve gegenüber dem min. geforderten Basisstrom.

Übrigens solltest du noch eine Schutzdiode in Sperrrichtung parallel zu jedem Motor schalten. Das bietet Schutz vor den Spannungsspitzen beim Abschalten der Motoren.

Gruss waste

michaelb
23.06.2005, 17:00
Hi Tonikaufmann,
warum machst du so eine mikrige mikrocontrollerschaltung? Kein gescheiter ISP nur so ein paar Wiederstände! Dann keinen externen Quarz und letztendlich so eine Motorsteuerung!!!
Soll keine harte Kritik sein nur ne Anregung!! Ich würde dir empfehlen wenn schon ein Paraleller ISP Programmieradapter dann schon einen richtigen mit einem 74HCT244, dann ist wenigstens deine Paralelle Schnittstelle vor Stromspitzen geschützt! Und weiter würde ich dir einen externen 8Mhz Quarz empfehlen weil meistens der interne mit 1Mhz nicht ausreicht! Zur Motoransteuerung würde ich dir bei kleinen Motoren den L293D empfehlen und bei größeren den L298!
Gruß Michi

izaseba
23.06.2005, 20:28
Hallo Michaelb,
Grundsätzlich hast Du recht, man kann aber den internen Takt auch auf 8 Mhz stellen...
gruß Sebastian

techboy
23.06.2005, 21:05
Ich glaub nicht das man den internen Takt auf 8 Mhz stellen kann....Jeder Atmega hat nen standard von 1 Mhz....Ausserdem wie willst das umstellen?? Soweit ich weiß gibt es keinen Fuse der sowas bewirken würde...Nochwas:
Ein Atmega kann meiner Meinung nach keine 8 Mhz intern verkraften...

Es kann sein das ich mich irre aber ich bin mir ziemlich sicher...

Hast du dir schon mal die Schaltpläne im Roboternetzt für den Atmega8 angesehen?

Mfg.Attila Földes

RCO
23.06.2005, 21:33
Enschuldige, wenn ich dich da mal etwas korrigieren muss. Schau mal ins Datenblatt Seite 27! Du kannst ihn Intern mit 1, 2, 4 und 8 Mhz takten, wie unter anderem z.B: den Mega8. Und die 8 intern verkraftet er, warum sollte er nicht?

Und dann noch zum Schaltplan. Ich würde dich bitten, ihn nochmal sauber zu zeichnen, im moment sind die Widerstände überbrückt außerdem läuft der Mega8 bei dir scheinbar mit 10 V, da +5V und -5V. Einen Knubel auf die Verbindung zwischen Pin24 und 25 des Parports. Ein "richtiger" ISP währe echt zu empfehlen und die Widerstände an der Transistorbasis Pflicht.

Edit: da hab ich dann wohl die 2 Controller vertauscht.

izaseba
23.06.2005, 21:40
Hast du dir schon mal die Schaltpläne im Roboternetzt für den Atmega8 angesehen?

Eine Gegenfrage, hast Du Dir schon mal die Dattenblätter zu AVR Mikrocontrollern angesehen?

Wenn nicht dann verweise ich dich z.B. auf Seite 28 von Mega 8 und dann auf Seite 218, damit Du weißt wie man es umstellt.

Es kann ja sein, daß ich mich irre, aber genau diese Lösung habe ich schon mehmals gesehen und auch selber gemacht.

Gruß Sebastian

edit: RCO war schneller als ich

pebisoft
23.06.2005, 23:06
techboy du bist eine schnappsnase, lies dir einmal das datenblatt durch, dann erkennst du, das es geht. wenn du es auswendig gelernt hast, meldest du dich bei mir wieder. wegtreten.
mfg pebisoft

Marco78
24.06.2005, 00:10
techboy du bist eine schnappsnase, lies dir einmal das datenblatt durch, dann erkennst du, das es geht. wenn du es auswendig gelernt hast, meldest du dich bei mir wieder. wegtreten.
mfg pebisoft
???
Ich glaube das hätte man auch anders ausdrücken können!

Aber zum Thema:
Pullup für Reset und Basiswiderstand für die Transistoren wurde ja schon gesagt. Aber den Programmieradapter mit einem HCT244 würd ich nicht mit auf die Platine machen, sondern via Steckverbindung. So ist er für andere Zwecke noch zu verwenden.
Der Programmer mit den Widerständen geht auch. So habe ich auch angefangen. Aber wenn wirklich mal irgendwo ein richtig großer Schaltungfehler da sein sollte, würde ich lieber ein kleinen IC opfern als den LPT ;)

Die internen 8MHz wären nicht ganz so genau wie ein externer Quarz. Die interne Taktrate lässt sich aber auch irgendwie einstellen/kalibrieren. Hab ich selbst noch nicht gemacht und ist sicherlich ohne geeignete Messgeräte und für Anfänger nicht das erste was man machen sollte. Wenn's nicht auf die mS ankommt kannst du ja erstmal den internen Takt nehmen. Aber später für größere Aufgaben wird es wohl oft ein externen 16MHz Quarz werden.

tonikaufmann
24.06.2005, 12:42
Danke alle zusammen !

Ich habe heute meinen Mega8 und einen Tiny13 erhalten. nun hab ich aber ein problem mit dem Tiny13: Ich weiss nicht wo die Pinnummerierung beginnt.
Die, im Handbuch eingezeichnete einbuhtung hat er nict.

Kann mir jemand sagen, wo der Pin1 ist ?

KingNothing
24.06.2005, 13:09
Normalerweise auf der seite mit dem Dreieck ganz oben....

michaelb
24.06.2005, 14:30
Ja ich stimm KingNothing zu!
Auf der Seite auf der das weiße Dreieck und die Kerbe ist(ich mein den komischen schwarzen punkt) ,liegt wenn das Dreieck und die Kerbe oben der Pin1! Bei sonstigen Fragen hilft das Datenblatt!
Gruß Michi

techboy
24.06.2005, 15:55
Sorry,
Jeder kann sich mal irren...... :(

Ich hab mir mal das Atmega8 Datenblatt angesehen aber das sagt mir überhaupt nichts... da steht nur was von der externen Quarz...kann aber auch sein das ich was beim lesen nicht verstanden habe....Habt verständnis ich lerne erst seit 3 Jahren englisch.... :roll:


Techboy,du bist eine Schnapsnase

pebisoft das war echt gemein

Mfg.Attila Földes

sonic
24.06.2005, 20:29
techboy du bist eine schnappsnase, lies dir einmal das datenblatt durch, dann erkennst du, das es geht. wenn du es auswendig gelernt hast, meldest du dich bei mir wieder. wegtreten.
mfg pebisoft

Also eine Schnappsnase ist der Techboy sicher (hoffentlich) nicht, der ist nämlich erst 13. Und für das Alter ist er damit schon verdammt weit.

Mit den in Ultrakurzfachenglisch gehaltenen Datenblättern hab ja selbst ich meine Probleme. Etwas auswendig zu können heißt noch lange nicht dass man es verstanden hat.

Gruß, Sonic

tonikaufmann
24.06.2005, 20:56
da geb ich dir recht !!