Forum: Mikrocontroller und Digitale Elektronik Flexibler Rechteckgenerator?


von Martin W.T. (Gast)


Lesenswert?

Rechteckgeneratoren sind ja nun eher einfache Geräte... mit einem NE555 
oder AVR sehr schnell gebaut.

Für etwas speziellere Anwendungen würde ich jedoch einen "richtigen" 
Rechteckgenerator benötigen, heißt:
-Frequenz von 1 kHz bis 1 MHz od. 10 MHz (Durchstimmbarkeit 
1:1000/1:10.000)
-Ein zweiter Ausgang mit in weiten Bereichen einstellbarer Vorauseilung: 
Also ein Ausgang, der kurz vor der steigenden Flanke auf High geht ; 
z.B. um ein Oszilloskop oder ähnliches rechtzeitig zu triggern
-Einstellbare Impulsbreite
-Einstellbare Impulspause
Die beiden separat einstellbar, also nicht wie bei vielen Schaltungen 
mit NE555, wo ein Poti auch das andere mehr oder weniger stark 
beeinflusst.
-Jitter spielt keine so große Rolle, wichtig ist lediglich, dass 
zwischen Neben- und Hauptausgang sehr wenig Jitter auftritt.

-Und das vermutlich schwierigste: Einstellbare Flankensteilheit sowohl 
für den Hauptausgang als auch für den Nebenausgang und zwar unabhängig 
voneinander für beide.

Für die ersten paar Anforderungen wäre bei niedrigeren Frequenzen ein 
AVR nötig und gut is. Aber schon bei 1 MHz verliert man viel 
Einstellspielraum...
Und gerade einstellbare Slewrate "killt" die AVR-Lösungen, oder?

* Hat jemand sowas schonmal gebaut? Gibt's da vielleicht erprobte 
Ansätze?
* Wie geht man an die Teilprobleme geschickt ran? Also wie erzeugt man 
erstmal diese Frequenzen bei der Durchstimmbarkeit (ein NE555 wird's 
wohl kaum tun, oder?!), wie implementiert man den vorauseilenden 
Nebenausgang, wie macht man überhaupt einstellbare Flankensteilheit?

PS: Es wäre verschmerzlich, wenn die Vorauseilung des Nebenausgangs 
nicht einstellbar wäre, sondern in einem festern Verhältnis z.B. zur 
Impulsdauer stände.

von c-hater (Gast)


Lesenswert?

Martin W.T. schrieb:

> Für die ersten paar Anforderungen wäre bei niedrigeren Frequenzen ein
> AVR nötig und gut is. Aber schon bei 1 MHz verliert man viel
> Einstellspielraum...

Hmm. Bei 1MHz wären auf jeden Fall noch mindestens 1Hz-Schritte (wenn 
ich mich richtig erinnere sind es theoretisch sogar 0.2Hz-Schritte) bei 
der Einstellung möglich. Was für eine Auflösung hast du dir denn 
vorgestellt?

> Und gerade einstellbare Slewrate "killt" die AVR-Lösungen, oder?

Nein, das ist nun wirklich simpelst zu lösen. Prinzipiell: Einfach alle 
freien Ports mit Kondensatoren unterschiedlicher Kapazität gegen das 
Signal bestücken und diese in unterschiedlichen Kombinationen als 
variable kapazitive Last einsetzen, indem man einfach alle zugehörigen 
PORT-Bits auf 0 und die DDR-Bits entsprechend der gewünschten 
kapazitiven Last setzt. Also im Prinzip sowas wie ein R2R-Netzwerk.

Das einzige wirkliche Problem sehe ich in der variablen Verzögerung der 
beiden Kanäle gegeneinander, denn da ist man naturgemäß auf Schritte in 
der Größenordnung von einem Takt beschränkt, bei 20Mhz Systemtakt also 
50ns Schritte. Kleiner geht nicht.

von Unwichtig :0 (Gast)


Lesenswert?

Versuche es mit einem kleinen AVR.

von Martin W.T. (Gast)


Lesenswert?

Manchmal sehe ich wirklich den Wald for Bäumen nicht. Dass ich natürlich 
die Flankensteilheit wunderbar mit einer Sammlung von Kapazitäten und 
einer Linearkombination derer einstellen kann, war wohl einfach zu 
offensichtlich für meinen Kopf :)

Dann setzte ich mich mal ans Millimeterpapier...

von Benjamin B. (bussi04)


Lesenswert?

Programmierbarer Rechteckgenerator bis über 1 MHz mit vorauseilendem 
Trigger:

Trial-Software https://www.dropbox.com/s/tdj4tvq0ytftn58/PGen_demo_d.pdf 
für Propeller-Prozessor.

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
Noch kein Account? Hier anmelden.