Hi liebes Forum, das ist mein erster Beitrag und daher bitte macht mich
auf Fehler aufmerksam.
Und zwar suche ich ein Mikrocontroller, der in THT Bauform ist, der min
9 PWM ausgänge hat und dazu noch min 6 digital Ausgänge.
Möchte ein RGB/ARGB controller bauen und brauche noch ein passenden
controller für die 3 RGB / 6 ARGB ausgänge. Mir ist SOFTPWM schon
bekannt nur möchte ich es möglichst umgehen um mehr Rechenleistung für
die synchron Steuerung und Effekte zu haben.
Hoffe ihr könnt mir welche empfehlen.
-LG Nick
Die 9 PWM gibt's in dieser Familie : dsPIC 33FJ64GS606-I , wobei der
genannte nur 16x6 PWM hat, ein anderer hat aber 9. der Genannte ist
allerdings im TQFP64.
Ein anderer : dsPIC 30F6015-30I hat vieles, im TQFP80.
The Weasel schrieb:> Es gibt doch eigene LED Treiber für sowas ...> Die steuerst du übern Bus an und fertig.>> Warum nicht sowas?
Er soll ein controller für den Pc werden, mit einer selbst
Programmierten RGB Software. Außerdem geht es mir auch um den
Lerneffekt.
Markus R. schrieb:> Als DIP fällt mir der TLC5940 ein. gibts als DIP ist aber schon recht> alt... 16 Kanäle, 12bit. Benötigt allerdings 2 externe Taktsignale vom> uC
Das ist ja ein LED Treiber. Ich hatte leider vergessen zu sagen wie die
RGB Strips angesteuert werden. Also das PWM signal geht in nen MOSFET
der dadrauf denn ein von den 3 GRD vom RGB Streifen steuert und das 3x
pro streifen also bei 3 Streifen 3x3 = 9; das heißt ich brauch min 9 PWM
ausgänge um 3 Streifen anzusteuern. Wenn es sowas nicht gibt. Dann
belasse ich mich auf 2 RGB und mache dann lieber mehr ARGB.
Nick H. schrieb:> The Weasel schrieb:>> Es gibt doch eigene LED Treiber für sowas ...>> Die steuerst du übern Bus an und fertig.>>>> Warum nicht sowas?>> Er soll ein controller für den Pc werden, mit einer selbst> Programmierten RGB Software. Außerdem geht es mir auch um den> Lerneffekt.
Das schreit ja dann gerade nach Treibern. Hat dann sogar einen höheren
Lerneffekt weil ein Bus dazu kommt und nicht nur stumpf direkt
ansteuern.
Denke sowas spezielles wie 9 PWM an einem yc wirds so einfach nicht
geben (Und wenn dann sicher nicht THT). Vor allem hätte ich noch nie
gesehen dass sowas direkt angesteuert wird (egal ob LED oder sonstwas).
Wie planst du die Ansteuerung vom PC?
Nick H. schrieb:> Wenn es sowas nicht gibt.
Wenn du deine altertümliche Restriktion eines DIP-Gehäuses aufgibst,
dann findest du im ARM-Bereich locker Controller, die ein Dutzend oder
mehr PWM-Ausgänge in Hardware ansteuern können. (Habe gerade beim SAMD21
geguckt: wenn ich richtig zähle, kann er bis zu 18 PWM-Kanäle treiben.)
Das alte Bastler-DIP ist einfach mal ein Auslaufmodell, gerade für
Pinouts mit vielen Pins ist es doch völlig unpraktikabel.
Ich vergas zu erwähnen:
was hält dich auf einen solche LED Controller nicht zu missbrauchen?
Anstelle der LED einen Transistor und BOOM ..... du hast einen PWM
Ausgang
Nick H. schrieb:> Er soll ein controller für den Pc werden
Genau da bietet sich der PCA9685 doch an... für den gibt's fix und
fertig einen Kernel-Treiber. "Nur noch" einen I²C Bus am PC rausführen
oder hinzufügen, fertig. Rest geht im userspace.
The Weasel schrieb:> Ich vergas zu erwähnen:>> was hält dich auf einen solche LED Controller nicht zu missbrauchen?> Anstelle der LED einen Transistor und BOOM ..... du hast einen PWM> Ausgang
Warum sollte ich dies denn tuen?
Nick H. schrieb:> Wenn mir da jemand die Ausgänge erklären könnte währe ich sehr dankbar.
Lies dir am besten mal im Datenblatt die Kapitel zum Pinout und I/O
Multiplexing (besonders die I/O Multiplexing Tabelle ist für dich
interessant), den PORTs und den Timern durch.
So ein ATSAM µC ist natürlich deutlich komplizierter als ein ATMega,
weil mehr Peripherie vorhanden ist.
Und vergiss nicht einen Programmer zu kaufen! (Atmel ICE, oder JLINK,
der JLINK EDU Mini ist relativ günstig)
Alternativ zu ATSAM gäbe es noch viele andere Mikrocontroller mit ARM
Kernen von anderen Herstellern, für STM32 gibts günstige Devboards und
Programmer aus China. Und es gibt sicher auch PIC µC mit genügend PWM
Kanälen, falls du schon Erfahrung mit PIC hast.
Ein PWM Ausgang kann aber auch ohne Probleme als digital verwendet
werden oder? Oder ich bleib dann doch lieber bei 2 RGB Ausgängen und THT
da ich mir SMT irgendwie doch nicht zu traue.
nick schrieb:> Mir ist SOFTPWM schon> bekannt nur möchte ich es möglichst umgehen um mehr Rechenleistung für> die synchron Steuerung und Effekte zu haben.
Was, zum Teufel, für grandiose Effekte willst du denn da programmieren,
dass dir die nach einer Soft-PWM verbleibende Rechenleistung auf einem
gängigen AVR8 nicht ausreicht? Zumal für nur 9 Kanäle...
Arduino? Wetten!
Alex D. schrieb:> Und vergiss nicht einen Programmer zu kaufen!
Kann man auch mit einem FT2232 machen, die ARM-Debug-Schnittstelle ist
ja von ARM genormt.
Für den SAMD21 gibt's doch auch einen Arduino …
https://store.arduino.cc/arduino-zero
Schätzungsweise auch Clones.
Nick H. schrieb:> Ein PWM Ausgang kann aber auch ohne Probleme als digital verwendet> werden oder? Oder ich bleib dann doch lieber bei 2 RGB Ausgängen und THT> da ich mir SMT irgendwie doch nicht zu traue.
SMD löten ist nicht unbedingt so schwer, wenn du Flussmittel und einen
halbwegs guten Lötkolben hast.
Die bei weitem größere Schwierigkeit wäre der Umstieg auf eine andere
(und kompliziertere) Mikrocontroller Familie, ob du dir das antun willst
ist deine Entscheidung. Der Lerneffekt wäre sicher größer, aber
natürlich auch der Zeitaufwand.
Guck Dir das Board mal an, hat USB schon drauf, reichlich PWM Kanäle und
kostet nur 5 Euro.
http://stefanfrings.de/stm32/stm32f3.html#stm32f3mini
Der Shop ist offenbar gerade down, versuche es später nochmal. Die
nehmen jedenfalls weniger als 5€ Versandkosten.
Nick H. schrieb:> Ein PWM Ausgang kann aber auch ohne Probleme als digital verwendet> werden oder?
PWM ist digital. ;-)
Ja, natürlich sind all diese Sonderformen Alternativbelegungen für die
Pins, die man anstatt der normalen PIO-Funktion benutzen kann.
> Oder ich bleib dann doch lieber bei 2 RGB Ausgängen und THT> da ich mir SMT irgendwie doch nicht zu traue.
Was zum Geier™ soll denn an SMD so schwer sein, dass man sich das nicht
zutrauen sollte? Mit Ü50 braucht man halt irgendein optisches
Hilfsmittel, aber sonst?
c-hater schrieb:> nick schrieb:>>> Mir ist SOFTPWM schon>> bekannt nur möchte ich es möglichst umgehen um mehr Rechenleistung für>> die synchron Steuerung und Effekte zu haben.>> Was, zum Teufel, für grandiose Effekte willst du denn da programmieren,> dass dir die nach einer Soft-PWM verbleibende Rechenleistung auf einem> gängigen AVR8 nicht ausreicht? Zumal für nur 9 Kanäle...>> Arduino? Wetten!
1. Es währen nur 3 Kanäle die über SoftPWM gesteuert werden müssten.
2. Nein kein Arduino sondern direkt über nen Mikrocontroller IC.
Nick H. schrieb:> 1. Es währen nur 3 Kanäle die über SoftPWM gesteuert werden müssten.> 2. Nein kein Arduino sondern direkt über nen Mikrocontroller IC.
Warum kleckern, wenn man klotzen kann. Wenn man schonmal eine SoftPWM
umsetzt, kann man es auch gleich richtig machen. Dann stellt man nämlich
fest, dass sehr viel Code redundant ist, d.h.: der Rechenzeitaufwand
steigt nicht linear mit der Anzahl der Kanäle, sondern sehr viel
langsamer.
Konkret mal die Eigenschaften einer konkreten Inkarnation meiner
Umsetzung (mit der ich etliche olle DIP-Mega16 und Mega32 vor der
Entsorgung gerettet habe):
Systemtakt 7.3728 MHz (per Autobaud via OSCCAL gezogen)
Bis zu 32 PWM-Kanäle (da man den Scheiß aber meist irgendwie steuern
möchte, sind es praktisch i.d.R. nur 30 = 10 RGB-LEDs).
17Bit(+1Digit)-PWM. D.h.: zwischen komplett aus und komplett an ist
alles möglich. Es gibt also (theoretisch) 131073 verschiedene
Helligkeitswerte. Die praktische Ansteuerung benutzt allerdings nur 256
dieser Werte, sprich: 8Bit-Steuerung mit eingebautem Gamma-Mapping. Die
Gamma-Kurve ist natürlich über eine Tabelle an die LEDs bzw. die
Anwendung anpassbar.
Das PWM-Bit0 mit der geringsten Signifikanz (pur nur zu sehen bei
Steuerwert=1) flimmert mit ca. 56Hz. Die höheren PWM-Bits haben eine
höhere Framerate entsprechend ihrer binären Wertigkeit. D.h.: PWM-Bit1
(allein immer noch sehr, sehr dunkel, Duty 1:3686400) hat schon 112,5Hz
usw. bis hin PWM-Bit 16 mit Duty 1:2 und einer Framerate von 14,4kHz.
Kurzfassung: auch kleine Sensibelchen sehen da (ausser bei minimaler,
kaum erkennbarer Helligkeit) nix flimmern, jedenfalls nicht im
Doppelblindtest...
Und es bleibt bei dieser Inkarnation nach Abzug des Rechenzeitaufwands
für die PWM noch weit mehr als 75% der Rechenzeit für die eigentliche
Anwendung. Sprich: Die rechnet in etwa so schnell, als liefe sie auf
einem AVR8 mit gut 5,6 Mhz.
Erkennst du jetzt, warum es so verwirrend für mich ist, dass du Probleme
mit der Rechenzeit für irgendwelche Effekte siehst?
Es gibt übrigens Varianten dieses Codes für Controller mit weniger als
vier Ports oder deutlich höherem Systemtakt, die dann nochmal einen
draufsetzen bezüglich der Eigenschaften der PWM. Und auch Varianten, die
auch konkurrierendes Bitbanging an einzelnen Pins der von der PWM
benutzten Ports erlauben (was dann allerdings die PWM-Eigenschaften
etwas verschlechtert, zumindest bezüglich der verbleibenden Rechenzeit).
Es geht also so Einiges, wenn man programmieren kann und dies dann
einfach auch tut...
Die Rechenzeit kann kein Problem sein. Auf einem AtTiny2313 erzeuge ich
mit einem Timer und Software 10 PWM Signale für Modellbau Servos und
kommuniziere (auch halb in Software) per I²C mit dem Host. Das alles mit
1 MHz - ohne großartig über Performance nachgedacht zu haben.
Und wenn das Löten von SMD das Thema ist, dann kaufst Du ein fertiges
Modul mit PCA9685. Und Du kannst Dich vollständig auf Deine gewohnte
Umgebung konzentrieren, Anbindung per I2C. Simpler gehts fast nicht
mehr.
Was spricht eigentlich dagegen mehrere µC zu nehmen?
Wenn es sowieso um TH-Bausteine geht, sollte Platz nicht das
herausragende Problem sein. Auch kosten die Teile nicht die Welt.
Stefan ⛄ F. schrieb:> Die Rechenzeit kann kein Problem sein.
Je nachdem, was man damit machen will, kann das bei LEDs fummeliger sein
als bei einem Modellbauservo. Ein Jitter könnte sich dort als
unangenehmes Flackern bemerkbar machen, während das deinen Servo kaum
stört.
Jörg W. schrieb:> Je nachdem, was man damit machen will, kann das bei LEDs fummeliger sein> als bei einem Modellbauservo. Ein Jitter könnte sich dort als> unangenehmes Flackern bemerkbar machen
Jepp. Wenn man's sinnvoll programmiert (wie etwa meine Lösung) sind
sogar variable ISR-Latenzen in der Größenordnung von knapp einer
"Zeitscheibe" erlaubt, weil die kritischen Timings eingebettet sind in
komplette Zeitscheiben der am wenigsten kritischen.
Oder konkret ausgedrückt: selbst eine volldümmliche C-ISR mit knapp 256
Takten Rechenzeitbedarf würde die PWM noch nicht sichtbar stören können,
zumindest solange sie nicht allzu häufig auftritt, also seltener als
zwei mal im kompletten PWM-Cycle...
Tja, es hat schon Vorteile, wenn man die volle Kontrolle und die volle
Übersicht auch über das Timing hat. Dann kann man sogar solche Garantien
geben...
Sebastian S. schrieb:> Was spricht eigentlich dagegen mehrere µC zu nehmen?> Wenn es sowieso um TH-Bausteine geht, sollte Platz nicht das> herausragende Problem sein. Auch kosten die Teile nicht die Welt.
Gerade WENN es ihm um einen Lerneffekt geht, würde ich dringend(!) zu
SMD raten. Zum einen möchte man sich ja mit aktueller µC Hardware
vertraut machen. Was nützt es, da jetzt auf Teufel komm raus 3 ATMEGA8
drauf zu löten, wenn ein aktueller µC das mit weniger
Programmieraufwand, weitaus günstiger hinbekommt.
Die ATMEGAx08 Serie z.B. hat 9 PWM Channels, im wirklich noch sehr gut
zu lötenden SOIC Package. Da braucht man echt keine Angst vor zu haben.
Nur schwer beschaffbar.
nick schrieb:> Mir ist SOFTPWM schon> bekannt nur möchte ich es möglichst umgehen um mehr Rechenleistung für> die synchron Steuerung und Effekte zu haben.
Dabei muss man immer im Hinterkopf behalten, dass 8x SoftPWM nicht 8x
die CPU Zeit von 1x SoftPWM brauchen. Auch synchrone SoftPWM ist keine
große Herausforderung, da man ja immer ein ganzes Byte ins
Ausgangsregister schreibt, und der µC (zumindest die gängigen) damit bis
zu 8 Pins gleichzeitig setzen kann.
Und für nicht genutzte CPU-Cycles gibts kein Geld zurück...
Schau dir nur zum Spass mal statt PWM das Verfahren der
Bitwinkelmodulation(BAM) an, ich finde es immer wieder faszinierend WIE
wenig CPU SoftPWM brauchen kann.
Hier mal ein Beispiel von der Forumslegende Peter Dannegger:
Beitrag "AVR: Fast-PWM (BAM) 12 Bit für 8 Kanäle"
8 Kanäle bei 12 Bit @ 2kHz BAM auf einem 8MHz AVR: 9% CPU Load, und die
8 Kanäle sind synchron.
Bei 8 Bit Auflösung wirds dann wahlweise schneller (16x) -> 32kHz
Refreshrate, oder noch weniger Zeitkritisch. Erst recht mit schnellerem
Basistakt von z.B. 20Mhz.
nick schrieb:> Und zwar suche ich ein Mikrocontroller, der in THT Bauform ist, der min> 9 PWM ausgänge hat und dazu noch min 6 digital Ausgänge.>> Möchte ein RGB/ARGB controller bauen und brauche noch ein passenden> controller für die 3 RGB / 6 ARGB ausgänge.
Und da kommst du auf 9 mal PWM? Das ist doch dasselbe, bis auf die
Adressierbarkeit bei ARGB, was du mit PWM ja ohnehin nicht kannst, denn
dafür müßtest du deine ARGB-Lichtstreifen digital ansteuern. Du meinst
vermutlich 3 Stück RGB-LED's, die du separat ansteuern willst.
Nick H. schrieb:> Er soll ein controller für den Pc werden, mit einer selbst> Programmierten RGB Software. Außerdem geht es mir auch um den> Lerneffekt.
OK, das mit dem Lerneffekt verstehe ich. Aber für den PC? Du meinst
vermutlich ne Beleuchtung für deinen Gaming-PC und nicht ne
Einsteck-Karte (PCI oder so).
Also, das mit den 9x PWM halte ich für eine blöde Idee. Ebenso halte ich
es für ausgesprochen unzeitgemäß, hier noch auf THT Bauteile setzen zu
wollen.
Leg dir mal ein paar AD8403 zu und nimm zu deren Ansteuerung irgend
einen beliebigen µC. Mit je 4x Digitalpotis zu je 8 Bit bist du für
Beleuchtungszwecke allemal ausreichend bedient. Und mit 3x AD8403 kannst
du sogar 4 RGB-LED's separat ansteuern.
W.S.
Nachtrag:
Und wenn man was lernen will und sich vor ner analogen Ansteuerung der
LED's scheut, dann wären 9 Stück der billigen µC von Padauk (zu je ein
paar Cent, wofür man nicht mal nen Transistor im TO220 kriegt) genau das
Richtige.
W.S.
W.S. schrieb:> dann wären 9 Stück der billigen µC von Padauk genau das Richtige.
Waren die nicht (besonders für Anfänger) schwierig, da schlecht
dokumentiert? Ich meine mich an eine entsprechende Diskussion zu
erinnern.
W.S. schrieb:> Nachtrag:> Und wenn man was lernen will und sich vor ner analogen Ansteuerung der> LED's scheut, dann wären 9 Stück der billigen µC von Padauk (zu je ein> paar Cent, wofür man nicht mal nen Transistor im TO220 kriegt) genau das> Richtige.>> W.S.
Alternativ:
Man nimmt statt 9 der billigen "0.03$-µC" PMS150C mit 1x8-bit PWM lieber
3 der etwa 70 % teureren Padauk PMS152, denn letztere haben 4
PWM-Generatoren (3x11-bit, 1x8-bit). Oder den 80% teureren PMS154C mit 5
(3x11-bit, 2x8-bit).
Und dann gibt es auch noch den "0.01€-µC" PMS15A, mit nur einem 8-bit
PWM, der etwas aufwendiger zu beschaffen ist.
Stefan ⛄ F. schrieb:> Waren die nicht (besonders für Anfänger) schwierig, da schlecht> dokumentiert?
Nö. Alle wirklich wichtigen Dinge sind seit letztem Jahr beisammen.
Es war lediglich so, daß die allerbilligsten Typen OTP sind. Aber es
gibt auch wieder löschbare Flash-Typen, mit denen man sich nicht schwarz
ärgern muß, wenn was nicht so klappt wie gedacht.
Siehe: http://www.padauk.com.tw
Vom Hersteller gibt es auch eine kleine IDE, die man zum Programmieren
in einer Art Quasi-Minimal-C benutzen kann. Allerdings sind die
tatsächlichen Brenn-Adapter relativ teuer, WIMRE um die $90.
Wohlgemerkt: mit diesen 90 Dollar und den bei Padauk herunterladbaren
PC-Programmen kann man die Dinger programmieren und brennen.
Ist ja OK so, jedoch reizt es natürlich, das ganze auf freier Basis
nachzuvollziehen. Das Problem besteht eher darin, daß es zwar ein
Nachbau-Projekt für den Brenner gibt, dieses jedoch ausgesprochen lausig
gemacht ist.
https://github.com/free-pdk/easy-pdk-programmer-softwarehttps://github.com/free-pdk/easy-pdk-programmer-hardware
Die Platinen des Adapters haben schlimme Footprints und exotische BE.
Die Schaltung ist eigentümlich (ich würde sagen stümperhaft).
Hab ein paar Stück davon da, teilbestückt und ich überleg mir derzeit,
ob ich die unangespitzt in die Tonne werfe.
Die µC-Firmware ist unstrukturiert, enthält aber die Algorithmen (!!!).
Und sie ist mal wieder mit 3 MB Drivers (CMSIS+STM HAL), 100 K
Middlewares usw. gemacht - und somit schlichtweg unportierbar (from
scratch ist einfacher)
Und die PC-Software ist ein Kommandozeilenprogramm, das lediglich alles
bloß durchreicht.
Dazu kommt noch, daß die Leute bei eevblog sich offenbar ausschließlich
auf den SDCC konzentrieren. Ein passabler Crossassembler fehlt noch
(Stand Sep2019).
Kurzum: Die Leute, die den SDCC benutzen wollen und sich einen fertigen
"easy-pdk-programmer" zulegen und mit dessen SW zufrieden sind, die
können damit loslegen. Aus meiner Sicht hingegen wäre noch eine Menge zu
tun.
W.S.
Philipp Klaus K. schrieb:> Alternativ:
Jaja, da gibt es noch ganz andere Alternativen, z.B. N76E003 von
Nuvoton, ein 16 MHz 1 Takt 8051er für stolze 24 Ct bei 10 Stück. Bei
denen ist verfügbare Infrastruktur noch viel besser.
W.S.
W.S. schrieb:> für stolze 24 Ct
Warum wird eigentlich im Rahmen von irgendwelchen Bastelprojekten, bei
denen es nie ein Problem ist, endlos Arbeits- (naja Frei-)Zeit zu
investieren, über Centpreise bei einem Controller gefeilscht?
Ob der Controller nun 0,05, 0,24 oder 3,50 kostet, wäre mir selbst bei
der Verwendung von 10 oder 20 Stück doch pupsegal. Jeglicher
Versandaufwand, egal ob nun aus Sande, Pförring oder Zhenzhen,
übersteigt den Preis doch ohnehin um ein Vielfaches, und wie
geschrieben, über die investierte Zeit diskutieren wir gleich gar nicht.
Wenn man als Industriekunde einige 1000 Stück davon nimmt, sieht die
Welt sicher anders aus. (Selbst bei den 100 oder so Stück, die wir in
der Firma in den Serien letzten Endes verbauen, dominieren alles in
allem nicht die Materialkosten.)
Sorry aber ihr habt mich als Anfänger jetzt leicht überfordert.
Hier mal ein paar Antworten.
1 Der Controller ist wirklich ein reines Spaß Projekt und der
Zeitaufwand ist mir daher relativ egal.
2. Es ist nicht im Sinne einer PCI-E karte sondern einer Box die via USB
an den Pc verbunden ist. Und ich hab ne RGB Steuerung übers MB, will
eben mal kapieren wie sowas funktioniert und mal eine eigene Software
dazu programmieren. Ist Thema für ne andere Diskussion, mir ist klar das
ich da nen Treiber schreiben muss.
3. Das mit Softpwm hatte ich gelesen aber wenn ihr sagt das es nicht so
viel Leistung zieht ist ja gut, dann kann ich auch darauf zurück
greifen.
4. Was SMD oder SMT(SMD sind die Bauteile und SMT die Löttechnik oder?)
angeht, ich hab keinerlei SMD Bauteile zuhause und hab kein bock auf 10
Wochen Lieferzeit aus fern-ost.
5. Mein Platz ist ca so groß wie eine 2,5“ HDD und damit groß genug für
tht.
6. Ich hatte als THT(oder eben DIP) Mikroprozessor nen atmega328p da er
eben nur 6 PWM Outputs hat und ich gern 3 RGB Streifen steuern würde
brauchte ich ein mit 9 PWM Ausgängen. (Hatte mich bei den RGB Ausgängen
, für den Controller, auf das Video gestützt:
https://youtu.be/CyzynCrnoOE )
Da der atmega328p eben mal nur 13 Ausgänge hat würde ich auch eben
6PWM+3mit Softpwm gesteuert nehmen und dann eben nur noch 4 Digitals
Outputs für die ARGB Ausgänge nehmen.
Also nochmal übersichtlicher:
- Möchte möglichst in THT(DIP) bauen.
- Möglich 9 PWM Ausgänge(jetzt auch mit Softpwm)
- dazu 4 digitals für die ARGB Ausgänge am Controller
- Zeitaufwand ist mir relativ egal denn ich bin Schüler und hab damit ab
Mittag Zeit also am Tag ca 4-5 Stunde wegen HAs. Dazu kommt noch eben
die derzeitige Situation.
- Ich bin mit den SMD(SMT) Mikroprozessoren noch nicht so vertraut.
Ich hoffe ich konnte noch ein paar Fragen beantworten und wir können
jetzt besser eine Lösung finden.
Jörg W. schrieb:> Ob der Controller nun 0,05, 0,24 oder 3,50 kostet, wäre mir selbst bei> der Verwendung von 10 oder 20 Stück doch pupsegal.
Ja, dir wäre das egal. Aber vielen anderen Leuten ist das eben nicht
egal, weil sie eben etwas mehr auf ihr Geld achten müssen.
Wenn da der TO für jeden seiner 9 Kanäle einen solchen Controller
anschließt, kommt da eben die Frage auf "Kostet mich das nun 45 Ct oder
2.16€ oder gar 31.50€" - merkst du das jetzt?
Die Alternative wäre irgend ein eher genauso exotischer Chip mit 9x PWM,
den es auch bloß nicht umsonst gibt.
Gerade wenn man dann seine kleine LP mit LED und µC bei JLCBCB fertigen
läßt und dabei gleich von den mit JLCPCB verbandelten LCSC die
Controller dazu ordert, dann halten sich auch die Bastel-Kosten in
Grenzen.
Jörg W. schrieb:> (Selbst bei den 100 oder so Stück, die wir in> der Firma in den Serien letzten Endes verbauen, dominieren alles in> allem nicht die Materialkosten.)
Du Scherzbold! Ich habe schon immer drauf achten müssen, die
Fertigungskosten niedrig zu halten. Ein Ereignis, was nun schon so etwa
5 Jahre zurückliegt, kommt mir da als Gegenstück in den Sinn: Ich war
bei einer unserer ehrenwerten Berliner Designfirmen (eben wegen eines
Designs) und so im Gespräch meinte mein Gegenüber "nun bei uns in
Deutschland ist der Kostendruck ja doch recht überschaubar, da könnten
wir..." - das war's dann mit dieser Firma. Knalltüten! Ich sag's mal so:
die Berlin-Subventionen (als die Mauer noch stand) und Subventionen
überhaupt sind ne Art Rauschgift für die Firmen, die sich auf sowas
einlassen. Gilt auch für Branchen wie Medizintechnik, weil schlußendlich
deren Umsatz aus dem Steuer- oder Kassen-Säckel generiert wird. Sind die
erstmal dran gewöhnt, können sie ohne die Subvention nicht mehr leben.
Dein Satz klingt mir verdächtig nach sowas.
So, wieder zur Sache:
Elende Nichtskönner, die dennoch sich damit brüsten wollen, auch die
Mikrocontroller beherrschen zu können, gibt es zuhauf. Die greifen
grundsätzlich zum dicksten Silizium, schreien dann nach einer IDE und
einer fertigen LP mit Brenner gleich drauf und einer möglichst 100%igen
vorgekauten Softwareunterstützung und versuchen dann als Allererstes,
damit eine Mondrakete zu programmieren - selbstverständlich nur in der
einzigen Programmiersprache, die sie mal gelernt haben.
Aber es gibt auch Leute, die eben NICHT bloß wie das Leydenfrostsche
Phänomen über der Sache wabern wollen, sondern tatsächlich etwas lernen
und verstehen wollen und denen auch ein kleines System - so es der Sache
ohne Verrenkungen gerecht werden kann - nicht als ihrer unwürdig
erscheint.
Und ich meine, gerade diese kleinen und eher wenig bei uns bekannten
chinesischen µC verdienen es, auch mit einer hierzulande benutzbaren
offenen Infrastruktur bedacht zu werden. Von den Chinesen kommt da
garantiert nichts, die sind sich selbst genüge und sie lieben offenbar
die Geheimniskrämerei - selbst dort, wo sie kontraproduktiv ist.
Im Grunde denke ich da weiter: Derzeit rennen alle hinter dem Cortex
hinterher. Das ist verständlich, die Chips sind ja auch gut - aber auf
lange Sicht ist eine derartige Monokultur wie ALLE Monokulturen eben
nicht gut. Es ist der Weg in die Inzucht (Mit etwas Zynismus kann man
die ersten Anzeichen bereits jetzt und hier in diesem Forum sehen).
Aber um die Sache hier zu verbessern, muß man es eben anpacken - und
wenn schon jemand ein dazu wirklich passendes Vorhaben im Sinne hat wie
der TO, dann macht das Sinn, sich damit zu befassen. Vielleicht kommt
ein besserer Brenner oder ein Cross-Assembler oder sonstwie ein
Fortschritt dabei heraus? Wer weiß? Ich will's hoffen.
W.S.
Nick H. schrieb:> Zeitaufwand ist mir relativ egal denn ich bin Schüler und hab damit ab> Mittag Zeit also am Tag ca 4-5 Stunde wegen HAs.
OK, dann sind einige der aufgezeigten Ideen für dich eher weniger
zutreffend, weil sie dich derzeit noch überfordern - Schule ist
wichtiger!
Eine nächste Sache wäre das Finanzielle, du hast ja noch kein eigenes
Einkommen.
Aber eines ist auch klar: Du wirst - egal was du dir an Elektronik
ausdenkst - immer eine Leiterplatte dafür benötigen, denn alles Andere
läuft auf einen elenden Draht-Igel hinaus und ergibt kein wirkliches
Gerät. Man könnte sich jetzt herausreden mit Streifen-Leiterplatte oder
deren Schwester der "NurLötaugenLeiterplatte", aber das wird mindestens
genauso eklig.
Also ist auch das Konstruieren einer Leiterplatte für dich im Programm.
Und wenn schon, dann sind auch SMD-Bauteile angesagt - sowohl von der
Verfügbarkeit her als auch von der Leiterplattenfläche als auch vom
Preis her. Da ist das Bestellen einer Art Sammelbuch mit SMD-BE bei Ali
oder Ebay noch die kleinere Übung.
Sowas z.B.:
https://www.ebay.de/itm/4250pcs-170-Werte-0805-1-SMD-SMT-Chip-Widerstande-Sortiment-Musterbuch-DE/164154276715
Abgesehen davon läuft das Ganze auch auf ordentliche Ausrüstung hinaus,
vor allem ein ordentlicher Lötkolben/Lötstation.
W.S.
W.S. schrieb:> Du Scherzbold!
Nee.
Solange eine meiner Arbeitsstunden mehr kostet als selbst ein großer
Controller (viel größer als die hier besprochenen), spielt es in der
100er Stückzahl schlicht keine Rolle, wieviel der Controller kostet.
Natürlich nicht "koste es was es wolle", aber wenn ein mehr an Speicher
in dem Teil oder eben ein paar vorgefertigte Kommunikationskanäle zwei
Tage Arbeit später einsparen, weil man nicht irgendwelchen Code von der
Pike auf neu dafür erfinden muss, dann sind die Mehrkosten wett gemacht.
Insofern ist es mir egal, ob es Controller für 10 Cent gibt … auch
privat (in meiner Freizeit) arbeite ich mich dann lieber in VHDL und
FPGAs ein, statt für ein paar eingesparte Cent nun völlig andere
Toolchains zum Laufen zu bringen. Da decken die gut vorhandenen und
ausreichend mit Tools versorgten AVRs und ARMs komplett meinen Bedarf.
Antwort auf W.S:
Hab ne Lötstation, Dritte Hand, Pinzetten und so :)
Eine Platine wollte ich dann sowieso designen und bestellen(PCBWAY
etc.).
Bei den Budget hast du schon recht aber deshalb THT da man da viele
Teile einzeln kaufen kann und nicht nur in größern Sammlungen für um
20/30€
Nick H. schrieb:> Eine Platine wollte ich dann sowieso designen und bestellen(PCBWAY> etc.).>> Bei den Budget hast du schon recht aber deshalb THT da man da viele> Teile einzeln kaufen kann und nicht nur in größern Sammlungen für um> 20/30€
Wenn du eine Platine bestellst, kannst du ja mal zu JLCPCB schauen, die
sind recht günstig, allerdings dauert der Versand etwas länger, wenn man
nicht für DHL Express zahlen will.
LCSC ist auch noch eine gute Bezugsquelle für alle möglichen Bauteile in
kleinen Stückzahlen und kleine Preise, auch Mikrocontroller.
Nick H. schrieb:> THT da man da viele Teile einzeln kaufen kann
Diese Begründung erscheint nicht wirklich schlüssig.
Selbstverfreilich kannst du auch SMD-Bauteile als Einzelstücke kaufen,
wenn du bereit bist denjenigen, der sie für dich abschneidet und
verpackt, dafür zu bezahlen. Entgegen anderslautenden Gerüchten kann man
SMD-Bauteile nicht nur in Fernost mit langen Lieferzeiten kaufen,
sondern auch bei europäischen Versandhändlern. Je nach Händler bekommst
du auch Mengenrabatte. Die häufig benötigten 100-nF-Kondensatoren
(Abblock-Cs) würde ich beispielsweise nicht unter 100 Stück auf einmal
kaufen – in der gut mit der Hand lötbaren Größe 0805 würde Reichelt
dafür dann gerade mal EUR 1,30 nehmen. Aber wenn du willst, tüten sie
dir auch tatsächlich drei Stück für insgesamt 9 Cent ein.
Das nur als Konter zu deinen "Sammlungen für um 20/30€". Entscheiden
musst du das für dich selbst, aber der THT-Zug fällt halt immer weiter
zurück. Du kannst dir dann weiterhin die Schlusslichter des SMD-Zugs
ansehen und dich selbst bedauern, warum deine Lokomotive den nicht mehr
einholen wird, oder du entscheidest dich für einen Umstieg. Da der
Vergleich hinkt: im Gegensatz zu den Zügen brauchst du nicht vollständig
umsteigen, sondern kannst in beiden drin sitzen.
Mir ist schon klar das THT immer weiter zurück fällt und es auch keine
moderne Technik ist. Da ich aber bei dem Controller nicht viel verbaue,
mal 1 2 Wiederstände und nen Kondensator ist das ja für dieses Projekt
eher unsinnhaft. Bei größeren Projekten die deutlich komplizierter sind
komm ich ja um SMD sowieso nicht drum rum.
Der Controller besteht im eigentlichen Sinne eben nur aus nen
Mikrocontroller und einem USB zu I2C Programmer.
Ich werde dann eben noch nen paar Dioden zum Schutz des ICs Verbauen
aber sonst ja nicht viel eventuell noch ein paar Kondensatoren zum
glätten der Spannung aber da es ja eh über Sata von nem PC Netzteil
versorgt wird sollte die Spannung ja relativ konstant sein.
Ich glaub ich nehm nen atmega328p mit meiner Lösung. Werd jetzt aber
erstmal auf tht setzten und dann bei anderen Projekten auf smd.
Aber danke für eure Ideen :)
Versuche jetzt mit SMD Anzufangen.
Nick H. schrieb:> - Möchte möglichst in THT(DIP) bauen.> - Möglich 9 PWM Ausgänge(jetzt auch mit Softpwm)> - dazu 4 digitals für die ARGB Ausgänge am Controller> - Zeitaufwand ist mir relativ egal denn ich bin Schüler und hab damit ab> Mittag Zeit also am Tag ca 4-5 Stunde wegen HAs.
Ok, dann ist der ATMega328 eine gute Wahl, weil SEHR weit verbreitet,
daher findest du bei Problemen leicht Unterstützung und Antworten in
Foren. Unterschätz das als Schüler nicht!
Die 9 PWM Kanäle sind mit BAM kein Problem. Mich wundern immer noch
diese ARGB-Kanäle. Was soll da genau dran? Ich verstehe unter digitalen
ARGB-LEDs immer solche adressierbaren LED streifen wie z.B. die
bekannten WS2812b etc.
Nur dann braucht es keine 4 Kanäle, das ist ja grad der Witz an den
adressierbaren LED. Oder wie viele 100te LED sollen da dran?
Wenn du diese noch nicht gekauft hast, rate ich dir dringend, welche mit
SPI Interface statt WS2812b zu kaufen. Für die WS2812b gibt es zwar
haufenweise mehr oder weniger gute Bibliotheken, aber die Ansteuerung
über die Hardware-SPI vom ATMEGA nochmal deutlich einfacher, schneller
und stabiler. Und viel wichtiger: Im Gegensatz zu den WS2812b viel
weniger zeitkritisch, da die SPI einen Clock mitliefert. Der Mega328P
hat neben der Hardware SPI noch einen USART, der im SPI mode eine zweite
Hardware-SPI zu Verfügung stellt. Wenns also wirklich eng werden sollte,
hast du 2 Hardware SPIs zur Verfügung. Damit kann man eine ganze Menge
APA102C, oder SK9822 LEDs ansteuern. Eher geht dir da der RAM aus.
Danke. Daher das es ein Controller wird sollen gibt es eben 3 unabhängig
von einander ansteuerbare RGB Ausgänge und dann eben das gleiche 4 mal
für ARGB also sind dir 4 letzten digitalen Pins für 4 verschiedene
Ausgänge. Wenn man zum Beispiel (da es ein Controller wird den man mit
dem Pc steuert) 4 ARGB Lüfter ansteuern will braucht man dazu eben 4
Ausgänge. Da es dann eben 4 nicht verbunde „Streifen“ sind.