mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PWM-Maschine gesucht


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo experten.

ich brauche einen Controller, der mir 16 10kHz-PWMs (ca. 3% Auflösung) 
liefern kann, außerdem 8 500kHz-PWMs (ca. 5% Auflösung) und 8 200Hz-PWMs 
(1% Auflösung).

Die 500kHz- und 200Hz-Signale müssen phasenverschoben werden können.
Bei den 200Hz ist das ja kein Problem, das geht über eine Software-PWM. 
Bei 500kHz wird's ohne Hardware-Timer äußerst schwierig :-)
Für jede einzelne PWM soll natürlich ein individuelles tastverhältnis 
einstellbar sein.

Welcher (möglichst billige) Controller könnte dafür geeignet sein?

Gruß

Michael

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
XC3S500

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matthias Lipinsky wrote:
> XC3S500
Da reicht schon weniger...
3% Auflösung = 5 Bit   --> fin = 32*10kHz --> 300kHz
5% Auflösung = 4-5 Bit --> fin = 32*500kHz--> 16MHz
Das macht schon das billigste Lattice-FPGA MachXO 640 für 5€.

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Lothar Miller (lkmiller) :

Glaub ich, das der etwas groß ist. Die Antowrt war eher eine Ironie auf:

>Welcher (möglichst billige) Controller könnte dafür geeignet sein?

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Matthias Lipinsky (lippy)
Oder eher  ;-)
>Welcher (möglichst billige) Controller könnte dafür geeignet sein?

@  Michael (Gast)
Du hast ein ganz spezielles Problem (oder von mir aus auch: eine ganz 
spezielle Aufgabe, weils ja keine Probleme mehr gibt, sondern nur noch 
Aufgaben). Dafür gibt es keinen Controller "von der Stange". Zudem hast 
du nichts dazu gesagt, wie du es deinem Controller sagen willst (I²C, 
SPI, Parallel...).

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@lothar:
für 500kHz bei 5% reicht schon ein timer mit 10MHz ;-)
8 stück davon kann die PWM-einheit eines freescale S12X erzeugen.

die 8 200Hz-PWMs lassen sich über den ECT machen und wenn ich das XGate 
über einen PIT alle 3µs triggere, hab ich bei 100MHz XGate-Takt ungefähr 
300 Takte zeit, zwei ports zu beschreiben und einen index für eine 
PWM-tabelle hochzuzählen.

damit sind zwar noch nicht alle anforderungen (phasenverschiebung!) zu 
realisieren, aber angesichts dieser performance auf einem relativ 
kleinen controller (der in stückzahlen bei weitem keine 5 euro kostet) 
glaube ich nicht, daß es keinen controller von der stange für diese 
aufgabe gibt.

@matthias:
wenn denn wirklich ein FPGA notwendig sein sollte, dann isses eben so.
und dann muß man eben überlegen, ob eine mehr-controller-lösung nicht 
sinnvoller ist. da braucht's doch keine ironie für.

gruß

michael

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> für 500kHz bei 5% reicht schon ein timer mit 10MHz ;-)
Ich denke da immer ein bisschen binär und runde auf ;-)
>> .. 4-5 Bit ..

> der in stückzahlen bei weitem keine 5 euro kostet
Ja, die Lattice FPGAs dann auch nicht mehr.
Dafür kannst du bei geänderten Anforderungen mit der Schulter zucken, 
und das ganz ohne Tricks ins FPGA reinhacken. Solche Frequenzen schaffst 
du noch ganz ohne irgendwelche Überlegungen, Optimierungen und Tricks.

Autor: Josef Warta (josefwa)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die PWMs der C2000 Familie koennen eine Aufloesung bis zu 150 ps.

Die kleinsten dieser Familie heissen PICCOLO und sind auch sehr 
preisguenstig.

http://www.ti.com/corp/docs/landing/f280xx-piccolo/index.htm

Autor: Ralph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
TMS 470 von TI; ist ein ARM7 TDMI und kann über einen internen Timer bis 
zu 32 Kanäle PWM erzeugen. Die 10 KHz sind da auch keinerlei Problem

Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Die PWMs der C2000 Familie koennen eine Aufloesung bis zu 150 ps.
6 Stück. Das wird dem Threadstarter aber nicht viel bringen... Und 
"möglichst billig" trifft auch nicht ganz zu...

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau mal bei Renesas nach einem externen PWM Controller. Ob das mit der 
Phasenverschiebung allerdings klappt, weiss ich nicht.
Aber die Teile kann man haufenweise an einen uC mit Speicherinterface
anflanschen und die haben eine Taktversorgung bis ca. 20 MHz...

Vielleicht hilft das ja weiter.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein mittelgrosser CPLD schafft das spielend.

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

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [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




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.