Ich hab ne etwas verzwickte Schaltung vor. Dabei möchte ich einen kompletten Mega32 VCC übe rden Port eines anderen Atmel versorgen. Ist das möglich oder gibts da bedenken?
Wenn ich das richtig verstehe willst du den Atmel über einen Pin des anderen mit Strom versorgen? Die max belastung liegt glaube ich pro Pin bei 10mA das dürfte also nicht ausreichen. Da brauchst du einen Transistor welcher über einen Pin des ersten Atmel den zweiten mit Strom versorgt. Dafür brauchst du aber wiederum die +5V und GND als seperate leitung für den zweiten Atmel. Wenn du die Standard schnittstelle zB vom STK500 mit den 10 Poligen Port anschluss meinst kannst du das über die 5V und GND Leitung bedenkenlos machen. Aber für das einschalten des zweiten Atmels brauchst du dann trotzdem den Transistor. Oder du machst es Softwaremässig dann kannst du einen Interupt des zweiten immer auf Flankenänderung abfragen und in den Sleepmodus versetzen bzw. aufwachen lassen.
keine gute idee. 1.kann kein port des atmels soviel strom liefern 2.braucht der atmel ca. 16ms zum einschwingen 3.muss die Spannung (VCC) recht genau stimmen. Man kann aber einen atmel extern per ttl-pegel takten oder ihn per relais einschalten, das wäre wohl die Lösung. Für das Relais dann die entsprechende Schaltung raussuchen... Ansonsten braucht man da eine recht ausgefeilte schaltung oder einen steuerbaren (switched) regulator. Der strom kann aber nicht von dem Atmel selbst kommen, er kann nur einen Leistungstreiber fernsteuern. - Hans
Leistungstreiber könnte auch ein geeigneter Transistor + Beschaltung sein. Trotzdem finde ich diese Lösung nicht besonders gut.
Das ist alles etwas aufwendig. Der Hintergrund ist der: Der Versorgungsanschluss VCC kann immer auf einem anderen PIN liegen, je nach Atmel Typ. Die Pinbelegung soll quasi erst per Software eingestellt werden. 40 Transistoren oder Transistoren wäre etwas aufwendig.Wie machen es denn die Programmiergeräte die mit unterschiedlichen PiN´s umgehen? Warum sollte der Strom nicht reichen? Ein Atmel braucht doch nur ein paar mA !
40 Transistoren oder Relais meinte ich, wären etwas aufwendig
nein du brauchst nur ein Transistor oder Relai. Damit schaltest du den 5V eingang des 2ten Atmels ein. Dann ist der Aktiv. Du brauchst aber trotzdem eine Stromversorgung zu dem 2ten Atmel. _______ [ ______ ____[ Vorwiederstand ]____[Vcc µC2 [ / [_________ µC1 Pinx[-------|zb. BC237C oder Relai ________[ \ | | GND Ich hoffe man kann erkennen was gemeint ist...
Hi, @komons: 1.kann kein port des atmels soviel strom liefern -> Stimmt nicht, 20mA kann ein Port liefern und bei langsamem Takt verbrauchen die meisten AVR deutlich weniger. Würde ich aber trotzdem nicht direkt machen. 2.braucht der atmel ca. 16ms zum einschwingen Unfug, das komt auf die Fuses, den Typ und den Oszillator an. 16ms ist das extremste was man einstellen kann. 3.muss die Spannung (VCC) recht genau stimmen. Völliger Blödsinn, schau mal ins Datenblatt. Sorry, das war ne Menge Unfug auf einem Haufen... @Matthias: Was'n das für ne komische Schaltung? Das ist doch ganz einfach: Ein paar BC548, Basis über 10k an einen Pin des 1. AVR, 100k von Basis an Ub, Emitter an Ub, Collector an Vcc des 2. AVR. So viele verschiedene Belegungen von Vcc gibt es nun auch wieder nicht.
Ich weiss ca. 20mA. Dann kann man den 2.Atmel aber nur eingeschränkt nutzen. 16ms ist worst case. Ich sags nur weil man damit rechnen muss das der 2-te Atmel eventuell ne weile braucht bis er dann auch reagiert (je nachdem was man damit machen will sollte man das wissen). und vcc kommt ganz auf den chiptyp an 4,5V-5,5V, bei manchen ist die Spanne besser. Im Prinzip hab ich unfug geschrieben, wenn man es genau nimmt. Ich wollte nur auf die Probleme die auftreten können im Vorfeld der Betrachtung aufmerksam machen, und weil ich mir recht sicher bin das man die atmels normalerweise nicht "hart" an und ausschalet sondern lieber softwareseitig behandelt, aber da kann ich mich auch irren. Vielleicht kommts ja auft den stromverbrauch an? dann gibts switched regulators mit interner logik für genau dieses Problem (auch mit mehreren Spannungsversorgungen auf einem Chip). - Hans
@komons: "Unfug" nützt mir in dem Fall nix. Bitte lieber konkret, die genannten Punkte möchte ich dann schon gerne selbst beurteilen. >@Matthias: Was'n das für ne komische Schaltung? Ansteuererung verschieder Bauteile, nicht nur AVR´s! >Das ist doch ganz einfach: Ein paar BC548, Basis über 10k an einen Pin des 1. AVR, 100k von Basis an Ub, Emitter an Ub, Collector an Vcc des Da hast du dich sicher vertan, das kann nicht gehen. Du meinst sicher Emitter am VCC! So viele verschiedene Belegungen von Vcc gibt es nun auch wieder nicht. Es geht auch um ein paar andere Bauteile. Die Transistorlösung ist mir da wenig hilfreich, es müsste zuviele sein
Hi, Hoppla, nicht BC54... sondern 556, also PNP. Dann ist das schon so richtig wie ich schrieb. Du solltest genauer beschreiben was Du vorhast sonst stochern wir hier alle nur rum. Ansonsten schaust Du in den Datenblättern, wieviel Deine Teile verbrauchen die Du da betreiben willst und ein Pin kann eben 20mA, auch wenn da nicht mehr ganz 5V rauskommen. Steht auch im Datenblatt. Betreibst Du mehrere Teile mit den Pins direkt, musst Du noch den Gesamtstrom beachten.
Jede serielle Maus enthält einen Mikrocontroller und der wird schließlich auch von der Schnittstelle versorgt. Sind zwar etwas andere Pegel, aber das spielt keine Rolle. Wenn die Taktfrequenz des zweiten Prozessors nicht so hoch ist, kannst du VCC direkt aus einem Portpin nehmen. Alternativ kannst du den zweiten mit 3.3V versorgen, und je nach Prozessor verbruacht der dann z. B. nur 1mA@1MHz. Solltest halt nur 20ms warten, daß er auch schon eingeschwungen ist. Thorsten
Der zweite muss leider auch schon mit 5V gehen. Oder ich muss wohl nach Treiber IC suchen.
Hi, Wie wärs, wenn Du mal genauer spezifizierst, was der Zweite machen soll bzw. was Du da überhaupt vor hast? Typ, Takt / Taktquelle? Soll der was machen oder nur programmiert werden? Ohne weitere Infos kann Dir keiner sinnvoll helfen. Gruß, Norbert
Es geht nur um das programmieren der verschiedensten Bauteile! Hast du dazu noch eine Tip?
Ne PS2 Schnittstelel die für die Stromversorgung der angeschlosseen Perepherie ausgelegt ist mit einem µC für stuer aufgaben zu vergleichen ist schon etwas seltsam. Und nen Transistor + Widerstand kostet odch nicht die Welt besser als wenn der µC abraucht....
Ok, der AVR braucht keinen Strom... Aber wenn mal ein Port seinen Zustand ändern soll? Das macht man normal mit µCs. Also z.B. eine einzige LED einschalten und schon ist's vorbei mit der Herrlichkeit
Um die Versorgung zu garantieren kannst du den µC auch mit zwei Pins statt nur mit einem treiben. Aber klar sollte schon sein, dass auch hier die Resourcen beschränkt sind.
>Und nen Transistor + Widerstand kostet odch nicht die Welt besser als
wenn der µC abraucht....
Hi Läubi, du hast es noch immer nicht so recht verstanden. Wenn ich den
genauen Port von VCC wüsste könnte ich gleich VCC direkt anschließen.
Aber da der immer woanders sein kann, muss ich ne Lösung mit wenigen
Bauteilen finden. 40 Transistoren sind mir zuviel!
Ich denke ich bleib bei der Anfangslösung, scheint mir bislang noch am
besten.
Wenn dein "gesteuerter" AVR keine Peripherie (LEDs, weitere Dinge...) mit Strom zu versorgen hat, dann dürfte es funktionieren. Versuchs doch einfach mal... Ich denke mal, du willst ein universelles Programmiergerät bauen, bei dem jeder Pin der IC-Testfassung fest an einen I/O des AVRs (Mega mit vielen I/Os) angeschlossen wird. Die Pinzuordnung wird dann per Software erschlagen (ähnlich GALEP). Dann bleiben aber die Hochvolt-Modi außen vor, was die ganze Sache wieder etwas uninteressanter macht...
Bei den Programmiergeräten werden Puffer-Chips verwendet, die den entsprechenden Strom auch treiben können. Eine Möglichkeit sind 74XX07, das ist ein 6-fach Treiber mit Open Collector, somit bleibt auch der bidirektionale Charakter erhalten. Wenn Du wirklich alle 40 Pins auch als Versorgungsspannung betreiben willst, dann wirst Du Dich wohl nicht nur auf Atmels beschränken - ansonsten wären das nur aus dem Bauch heraus 5-6 Varianten.
Gibt es irgendwo eigentlich eine zusammengefasste Pin-Belegungsübersicht oder muss ich alles aus den Datenblättern sammeln Welche Hochvolt Typen meinst du z.B.? Ich will eigentlich nur für ein paar Standard-Controller und ein paar andere Teile die mich interessieren ein kleines Programmiergerät basteln.
Ich meine keine "Hochvolt-Typen" sondern den "Hochvolt-Programmiermodus"...
Hm - Mist - ich habe bei den Open-Collector nicht bedacht, daß Du ja die 5V treiben willst... Bleibt doch nur die Transistor-Lösung. Was es aber einfacher und übersichtlicher macht, sind Transistor-Arrays in IC-Form. Eine Übersicht aller Pinnings habe ich für die Atmels noch nicht gesehen - wäre aber mal eine interessante Sache fürs Wiki.
Wie wäre es denn mit ~16 Transistoren (wenn du eh nur seriell programmierst reichen auch 10 oder sogar noch weniger. Und für die verschiedenen Chips, die du programmieren willst baust du dir jeweils(da kann man auch einige zusammenlegen) eine Adapterplatine !!!
Da auf eiem PIN ja VCC oder GND sein könnte, bräuchte ich dann aber bei vielen PIN´s zwei Transitoren. Da käme schon einiges zusammen. Könnte ihr gute 40 - 100 mA Treiber IC empfehlen, sowohl welche nach GND alc auch VCC schaltend?
Hi... Die werden dir nix nützen, da sie nicht bidirektional sind. Denn bei dem, was du vor hast, muss jeder Pin ja je nach Ziel-IC mal Eingang, mal (Daten-)Ausgang und mal Power-Ausgang (GND, +5V, +12V) sein. Wenn es einfach werden soll, kommt man um einen kundenspezifischen Spezialschaltkreis nicht herum. Den wirst du aber nicht in Auftrag geben können... Lies dir mal die Produktbeschreibung zum GALEP IV im Reichelt-Katalog durch... (Stichwort "Pintreiber-ASIC") Mit der uns zur Verfügung stehenden Technologie muss man sich da schon ganz schön strecken um Vergleichbares zu realisieren... Also mit 'nem AVR und 'n paar Transistoren ist das nicht getan. ...HanneS...
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.