Forum: Mikrocontroller und Digitale Elektronik Benötige kleine Digitale Schaltung mit Zählwerk


von Bernd B. (bernte01)


Lesenswert?

Hallo,

ich benötige eine kleine Schaltung mit zwei Eingängen und einem Ausgang, 
die folgendes tut:

a) Sie wird mit einem Start-Triggersignal gestartet. (eine steigende 
Flanke 3.3V)
b) Sie bekommt an zweiten Eingang ein ständiges Rechtecksignal, zwischen 
400kHz und 1700kHz. Sie zählt die Perioden.
c) Nach N Perioden (ca. 40 bis 200) gibt sie einen Triggerpuls auf einem 
Ausgang (damit startet sie eine Messung mit einem Scope).
d) Das macht sie insgesamt M (ca. 100) mal.
e) Fertig. Sie wartet auf den nächsten Start-Trigger.

Es wäre natürlich schön, M und N frei einstellen zu können. Ich kann 
aber leider nicht viel Zeit investieren. Daher würde es mir auch 
genügen, z.B. M=128 fest zu verdrahten, und N z.B. mit einem Jumper auf 
64 oder 128 stellen zu können.

Meine Frage ist jetzt, was ihr mir als Technologie empfehlen würdet. Ich 
habe von Digitaltechnik nur wenig Ahnung (bin Elektroingenieur, der zu 
viel Zeit vor Computern verbracht hat). Ich vermute, am einfachsten ist 
es, sich aus Logikbausteinen und einem Binärzählwerk etwas 
zusammenzustecken. Alternativ könnte ich mir ein Raspberry Pi 
vorstellen, falls die Schleife mit halbwegs konstanter Latenz läuft, 
sodass ich immer möglichst genau die gleiche Phase erwische. Als drittes 
wäre natürlich eine Arduino / Mikrocontroller Lösung. Ich hatte aber 
beides noch nicht in der Hand, fürchte also recht lange 
Einarbeitungszeit.

von Blubber (Gast)


Lesenswert?

Bernd B. schrieb:
...
> b) Sie bekommt an zweiten Eingang ein ständiges Rechtecksignal, zwischen
> 400kHz und 1700kHz. Sie zählt die Perioden.
...
> Meine Frage ist jetzt, was ihr mir als Technologie empfehlen würdet. Ich
> habe von Digitaltechnik nur wenig Ahnung (bin Elektroingenieur, der zu
> viel Zeit vor Computern verbracht hat). Ich vermute, am einfachsten ist
> es, sich aus Logikbausteinen und einem Binärzählwerk etwas
> zusammenzustecken. Alternativ könnte ich mir ein Raspberry Pi

1. Der RPi schafft deine 400-1700kHz nicht.

2. Ein µC mit Hardwarezähler und externem Eingang könnte das bei 
geschickter Programmierung.

3. Mit einer handvoll Logikbausteinen und ein paar (Dil)Schaltern bist 
du sicherlich am schnellsten am Ziel.

4. Die Lernkurve für ein paar FlipFlops, Zähler und Vergleicher ist 
sicherlich steiler als für hoch optimiertes Assembler ...

von Volker S. (vloki)


Lesenswert?

Blubber schrieb:
> 2. Ein µC mit Hardwarezähler und externem Eingang könnte das bei
> geschickter Programmierung.
> ...
> 4. Die Lernkurve für ein paar FlipFlops, Zähler und Vergleicher ist
> sicherlich steiler als für hoch optimiertes Assembler ...

Ich stelle mir das gar nicht so kompliziert vor.
Assembler braucht man wohl auch nicht, da alles was schnell gehen muss 
von irgendwelchen Hardware-Modulen gemacht wird.

z.B. bei einem 8bit-PIC mit CCP Modul.
- das Rechtecksignal kommt auf einen Timer/Counter Eingang
- der Timer/Counter ist fest verknüpft mit einem Compare Modul
- der Compare Wert ist "N"
- bei Counter == N wird der Counter automatisch auf 0 gesetzt, ein 
Interrupt ausgelöst, in welchem der Trigger für das Oszi erzeugt wird, 
der M-Zähler inkrementiert und mit "M" verglichen wird...

von Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite


Lesenswert?

Bernd B. schrieb:
> Meine Frage ist jetzt, was ihr mir als Technologie empfehlen würdet. Ich
> habe von Digitaltechnik nur wenig Ahnung (bin Elektroingenieur, der zu
> viel Zeit vor Computern verbracht hat).
Schade, aber wahrscheinlich wirtschaftlich profitabel. ;)

>Ich vermute, am einfachsten ist
> es, sich aus Logikbausteinen und einem Binärzählwerk etwas
> zusammenzustecken.
Du hast keine Signal-/Betriebsspannung genannt, aber das ist Deine 
Chance, Dir mal die vor kurzem neu auf den Markt gebrachte 74HC-Familie 
anzuschauen...

Falls das privat ist und Du doch ein wenig Zeit (eine Woche oder so) 
investieren kannst, dann würde ich Dir ein STM32-Evalboard (10€) mit 
Atollic TrueStudio lite (kostenlos) vorschlagen:
http://de.farnell.com/stmicroelectronics/stm32vldiscovery/discovery-kit-f100-st-link/dp/1824325

von Peter D. (peda)


Lesenswert?

Man könnte die 0,4..1,7MHz direkt als CPU-Takt z.B. für einen ATtiny2313 
benutzen. N und M stellt man über BCD-Kodierschalter ein.
Da es auf jeden Zyklus ankommt, sollte man das in Assembler 
programmieren. Es muß ja nichts gerechnet werden.

von Oleg A. (oga)


Lesenswert?


von Bernd B. (bernte01)


Lesenswert?

Vielen Dank für die ganzen Vorschläge. Ich denke, ich werde mit einer 
Lösung mit Logikbausteinen anfangen. Dann habe ich hoffentlich erstmal 
ein schnelles Ergebnis. Falls wir den Messaufbau in eine Dauerlösung 
überführen, werde ich mich mal mit dem ATiny und dem CPLD Board 
auseinandersetzen.

Es ist leider nicht privat, und wenn ich mich abends aus Interesse noch 
mit dem Lötkolben hinsetze gibts Ärger mit meiner Frau ;-)

von Bernd B. (bernte01)


Angehängte Dateien:

Lesenswert?

Vielleicht könntet ihr noch einen Blick auf diese Schaltung werfen und 
mir sagen, ob das so klappen könnte:

Ein Flip-Flop wird vom Start-Trigger angeschaltet. Dadurch werden zwei 
74HC4040 aktiviert. Der erste 74HC4040 zählt fleißig die Pulse, und z.B. 
jeden 32. Puls greife ich am Q5 ab und gebe ihn auf das Oszi. Der zweite 
74HC4040 zählt die Aquisitionen, und schaltet nach 128 den Flip-Flop 
wieder aus.

von MaWin (Gast)


Lesenswert?

Oleg A. schrieb:
> Ein CPLD Board deckt alles ab, was Du brauchst und kostet ca. €
> 10.-

Erscheint mir auch am sinnvollsten.
Leicht umprogrammierbar, und 1.7MHz leicht schaffbar, also massig 
Reserven.

von Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite


Lesenswert?

Bernd B. schrieb:
> Vielen Dank für die ganzen Vorschläge.
Gerne.

> Es ist leider nicht privat, und wenn ich mich abends aus Interesse noch
> mit dem Lötkolben hinsetze gibts Ärger mit meiner Frau ;-)
Na dann könnt Ihr das auch an einen Profi vergeben. Hier im Forum soll's 
ja ne Menge Dienstleister geben. ;)
Dann hast Du auch keinen Stress mit Deiner Frau.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Bernd B. schrieb:
> counter.PNG

Sieht doch so aus, als würde es funktionieren. Wenn du sowieso zu viel 
Zeit vor dem Rechner verbringst, kannst du es nochmal simulieren. Aber 
wenn die Eingangspegel schon auf CMOS Level sind, dann sollte das so 
klappen.
Denke ein wenig daran, das die 4040 Ripple Counter sind und nicht 
synchron mit dem Clock Puls die Ausgänge umschalten - das kommt 
verzögert, wenn auch nicht viel.

von Tom (Gast)


Lesenswert?

Mit 74HC40103 statt 4040 könnte man wahscheinlich deine N und M 
einstellbar machen. Der ist nur ziemlich ausgestorben.

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.