 Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Hallo zusammen,
ich möchte ein winziges Board mit einem atmel328u4 oder atsamd21
zusammenstellen, das mit ein paar weiteren Teilen (DRV8388 H-Brücke für
die Motorsteuerung) in einem ferngesteuerten H0-Fahrzeug als Fahrregler
dienen soll. Empfänger wird ein deltang, angeschlossen per serieller
Verbindung.
Die beiden ICs sind in der engen Auswahl, weil sie Arduino-kompatibel
und USB bieten (damit man ihn später einfach mit neuer Software updaten
kann). Der atsamd21 hätte sogar genug Flash-Speicher für ein paar
Soundsamples.
Folgende Fragen zum Programmieren:
1) Die Chips haben erst mal keinen Bootloader, d.h. per USB anstecken
und in der Arduino IDE "Upload Sketch" klicken, wird nicht klappen. Man
benötigt z.B. einen Atmel ICE, um die ICs per SWD-Ports zu
programmieren. Letzteres klappt aber immer, auch bei fabrikneuen Boards?
2) Auf vielen Boards (z.B. dem Tau) sieht man den SWD-Header extra
ausgeführt, aber ich kann auch die ganz normalen PINs dafür verwenden,
richtig (mit einem geeigneten Adapter/Kabel zum ICE)?
3) Da das Board winzig werden soll, habe ich keinen Platz für den
SWD-Header bzw. sind auch die Pins später im H0-Fahrzeug zu groß/im Weg.
Gibt es ein Alternative, den IC initial zu programmieren und dann erst
auf das Board zu löten? Es gibt SMT Test Sockets von Adafruit, aber die
kosten für >100$. Kann man einen IC auch anders vor dem Verlöten
programmieren? Auf ein QFN64-Breakout drücken?
4) Falls das nicht geht, kann man normale through-holes auf einem PCB
ohne zu verlöten kontaktsicher verbinden?
Und weil wir schon dabei sind:
5) Die beiden ICs vertragen keine super-hohen Ströme an ihren Ausgängen
(für LEDs). Könnt ihr mir einen Transistor-Array-IC (ist das der
richtige Begriff? Ich will nicht viele einzelne Transistoren auflöten)
empfehlen, den ich mit aufs Board packen kann? Ziel wären so ca. 30mA
pro Ausgang.
6) Gibt es kleine und stromsparende Bauteile, die mir die komplette
LiPo-Spannungsbreite 3.1-4.2V auf 3.3V transformieren können? Oder
sollte ich einfach einen einfachen Step-Down auf 3.3V nehmen und muss
dann damit leben, dass das System eben schon bei einer LiPo-Spannung von
3.4 oder 3.5V "aus" ist?
Danke
Daniel
Daniel K. schrieb:
> Gibt es ein Alternative, den IC initial zu programmieren und dann erst
> auf das Board zu löten? Es gibt SMT Test Sockets von Adafruit, aber die
> kosten für >100$. Kann man einen IC auch anders vor dem Verlöten
> programmieren? Auf ein QFN64-Breakout drücken?
Eher nicht.
> 4) Falls das nicht geht, kann man normale through-holes auf einem PCB
> ohne zu verlöten kontaktsicher verbinden?
Sicher, mit Federkontakten.
Oder man nimm diesen Tag-Connect, der kostet zwar ein paar Euros, ist
aber die professionelle Version des selbstgebastelten
Federkontaktadapters.
http://www.tag-connect.com/
Kleiner und besser geht es kaum.
> 5) Die beiden ICs vertragen keine super-hohen Ströme an ihren Ausgängen
> (für LEDs).
Nimm ultrahelle LEDs, sie blenden selbst bei 5mA.
> Könnt ihr mir einen Transistor-Array-IC (ist das der
> richtige Begriff? Ich will nicht viele einzelne Transistoren auflöten)
> empfehlen, den ich mit aufs Board packen kann? Ziel wären so ca. 30mA
> pro Ausgang.
Hast du so große oder so schlechte LEDs?
Wenn es klein sein soll, nimm ein passendes Gatter der AC-Familie, z.B.
75AC04, die haben ca. 10 Ohm Ausgangswiderstand. Wahrscheinlich geht
auch ein HC mit 50 Ohm, da spart man die Vorwiderstände. Ist zwar
offiziell nicht spezifiziert, geht aber. Und wenn man je 3 LEDs nach GND
und 3 gegen VCC schaltet, paßt das auch mit den Strömen über VCC und
GND.
> 6) Gibt es kleine und stromsparende Bauteile, die mir die komplette
> LiPo-Spannungsbreite 3.1-4.2V auf 3.3V transformieren können?
Sicher, denn du bist ja nicht der Erste, der sowas braucht.
> Oder
> sollte ich einfach einen einfachen Step-Down auf 3.3V nehmen und muss
> dann damit leben, dass das System eben schon bei einer LiPo-Spannung von
> 3.4 oder 3.5V "aus" ist?
Würde ich nicht machen. Höchstens einen Low Drop Linearregler mit 3V,
dann kannst du die Akkus praktisch voll ausnutzen. Die meisten ICs
laufen auch mit 3 anstatt 3,3V.
Ebay-Artikel Nr. 263748509563
Fabian F. schrieb:
> Ebay-Artikel Nr. 263748509563
Dumm nur, daß dort keine QFN-Gehäuse reingehen, wie sie der OP nutzen
will. TQFP ist RIESIG, wenn man WIRKLICH miniaturisieren will.
Wenn es wirklich klein sein soll, nimm den ATtiny13A im 10M1 Gehäuse und
den DRV8837C im DSG0008A Gehäuse. Du brauchst dann aber ein Mikroskop
und eine Flasche Rotwein zum Bestücken. Die Platinen sind kleiner als
5mm*5mm. Du musst dann nicht nur LKW fahren lassen, dann geht auch eine
BWM-Isetta.
Zum Programmieren nimmst du Pogopins oder lötest dünnen Drähte an
(Stichwort "Dekoderlitze").
Falk B. schrieb:
> Fabian F. schrieb:
>> Ebay-Artikel Nr. 263748509563
>
> Dumm nur, daß dort keine QFN-Gehäuse reingehen, wie sie der OP nutzen
> will. TQFP ist RIESIG, wenn man WIRKLICH miniaturisieren will.
Dann nimmt man eben einen für QFN:
https://www.alibaba.com/product-detail/QFN32-0-5-Adapter-MLP32-chip_60832901551.html?spm=a2700.galleryofferlist.normalList.307.cecc1a8cBXOBaD
Man sollte in der lage sein einen Buchstaben bei der Googlesuche zu
ändern.
Danke euch!
Ein TQFP-Programmieradapter ist dann vielleicht doch das richtige. QFN
kann ich nicht löten ;) Rotwein wäre ja vorhanden, aber das ist glaub'
nicht ausreichend...
Für eine Isetta ist mir die Mechanik zu klein, dann ist die LKW-Größe
vollkommen ausreichend.
Bezüglich der LEDs hatte ich an mehrere an einem Ausgang gedacht, die
30mA waren sehr passiv geschätzt.
Bei ti.com finde ich nichts bezüglich 75AC04, was genau ist da gemeint?
Daniel K. schrieb:
> ich möchte ein winziges Board mit einem atmel328u4
So ein IC gibt es nicht.
Es gibt einen ATmega328 oder einen ATmega32u4.
> oder atsamd21 zusammenstellen
> Die beiden ICs sind in der engen Auswahl, weil sie Arduino-kompatibel
> und USB bieten (damit man ihn später einfach mit neuer Software updaten
> kann).
Ich halte das für vollkommen falsche Prioritäten. Das updaten per USB
ist ganz sinnvoll für ein Board, das neben dem Monitor auf dem
Schreibtisch liegt und dabei am einfachsten auch gleich aus dem USB mit
Energie versorgt wird. Aber in einer H0 Lok wird man eher keine
USB-Buchse haben wollen.
Der zweite grund, warum Arduino auf USB und einen Bootloader gesetzt
hat, ist ganz einfach, weil der geneigte Arduino-Jünger so kein Geld für
einen Programmieradapter ausgeben muß.
> Fragen zum Programmieren:
> 1) Die Chips haben erst mal keinen Bootloader, d.h. per USB anstecken
> und in der Arduino IDE "Upload Sketch" klicken, wird nicht klappen. Man
> benötigt z.B. einen Atmel ICE, um die ICs per SWD-Ports zu
> programmieren. Letzteres klappt aber immer, auch bei fabrikneuen Boards?
SWD für den ATSAMD. Ein ATmega braucht ISP. Das Atmel ICE kann beides,
für ISP gibt es aber deutlich billigere Programmieradapter. Schon dieser
Punkt spricht gegen den Upload per USB. Wenn du sowieso einen
Programmieradapter anschaffen mußt, kannst du den auch gleich für dein
endgültiges Programm verwenden.
> 2) Auf vielen Boards (z.B. dem Tau) sieht man den SWD-Header extra
> ausgeführt, aber ich kann auch die ganz normalen PINs dafür verwenden
Sicher. Pins sind Pins. Andererseits: warum redest du immer von Boards?
In deine Lok paßt keins davon.
> 3) Da das Board winzig werden soll, habe ich keinen Platz für den
> SWD-Header
Aber für USB reicht der Platz?
> bzw. sind auch die Pins später im H0-Fahrzeug zu groß/im Weg.
> Gibt es ein Alternative, den IC initial zu programmieren und dann erst
> auf das Board zu löten?
Kann man machen. Aber die Praxis zeigt, daß man wenigstens den Prototyp
immer wieder neu programmieren können will. Und zwar ohne den µC jedes
Mal wieder auslöten zu müssen.
ISP kommt mit 6 Kontakten aus, SWD mit 4. Es gibt jede Menge
schnuckelige kleine Steckverbinder für sowas. Im Notfall nur ein paar
Pads und einen Adapterstecker mit Federkontakten oder Pogopins.
> 4) Falls das nicht geht, kann man normale through-holes auf einem PCB
> ohne zu verlöten kontaktsicher verbinden?
Pogopins
> 5) Die beiden ICs vertragen keine super-hohen Ströme an ihren Ausgängen
> (für LEDs). Könnt ihr mir einen Transistor-Array-IC (ist das der
> richtige Begriff? Ich will nicht viele einzelne Transistoren auflöten)
> empfehlen, den ich mit aufs Board packen kann?
Platzmäßig lohnt das nur, wenn du wirklich viele Kanäle brauchst.
Ansonsten gibt es geeignete MOSFET in SOT-23 oder SC-70. Oder paarweise
in SOT-26 bzw. SOT-6
> 6) Gibt es kleine und stromsparende Bauteile, die mir die komplette
> LiPo-Spannungsbreite 3.1-4.2V auf 3.3V transformieren können?
Eher nicht.
> Oder sollte ich einfach einen einfachen Step-Down auf 3.3V nehmen
Wohl eher einen LDO. Wenn die 3.3V nicht in Stein gemeißelt sind, nimm
einen für 3V.
Axel S. schrieb:
> Daniel K. schrieb:
>
>> ich möchte ein winziges Board mit einem atmel328u4
>
> So ein IC gibt es nicht.
> Es gibt einen ATmega328 oder einen ATmega32u4.
Vertippt, ich meinte letzteren.
> Aber in einer H0 Lok wird man eher keine USB-Buchse haben wollen...
Da ist schon viel leerer Raum drin. Aber eigentlich soll das Teil +
Empfänger, Akku und Servo in einen LKW. Die gibt es ja immerhin auch mit
großem Kofferaufbau, da ist dann noch mehr Platz ;) Aber halt auch nicht
ewig. Aktuell plane ich mit 20x20mm beidseitig bestückt.
Den USB-Anschluss würde ich an eine extra Platine machen und die dann
für USB und Akkuladen benutzen. Hier dachte ich an eine Klemmvariante,
um die Pins rauszuführen. Und da ich nicht der einzige sein werde, der
so ein Teil benutzt, will ich schon auch USB haben.
> Platzmäßig lohnt das nur, wenn du wirklich viele Kanäle brauchst.
> Ansonsten gibt es geeignete MOSFET in SOT-23 oder SC-70. Oder paarweise
> in SOT-26 bzw. SOT-6
Es sind schon so acht oder zehn Kanäle, jeweils mit 1 bis 4 LEDs.
>
>> 6) Gibt es kleine und stromsparende Bauteile, die mir die komplette
>> LiPo-Spannungsbreite 3.1-4.2V auf 3.3V transformieren können?
>> Oder sollte ich einfach einen einfachen Step-Down auf 3.3V nehmen
>
> Wohl eher einen LDO. Wenn die 3.3V nicht in Stein gemeißelt sind, nimm
> einen für 3V.
Das schaue ich mir mal an - Danke für die Tipps.
Daniel
Antwort schreiben
Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.
Wichtige Regeln - erst lesen, dann posten!
- Groß- und Kleinschreibung verwenden
- Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
- [c]C-Code[/c]
- [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
- [math]Formel in LaTeX-Syntax[/math]
- [[Titel]] - Link zu Artikel
- Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
"Adresse kopieren", und in den Text einfügen
|