Der Nachfolger des WDR-Computerclub mit Wolfgang Back und Wolfgang Rudolph - ...und immer ein Bit übrigbehalten!


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Performance CControl Kategorie: Programmierung Basic (von Carsten - 17.09.2004 12:19)
 Als Antwort auf Re: Performance CControl von Sebastian - 17.09.2004 9:53
Naja, ein bischen belesen (Internet, Conrad) und löten muß man schon.. es gibt auch bei Conrad viele für kleines Geld, z.B. DAC0808LCN

> Hallo Carsten !
>
> ja du hast wahrscheinlich recht. die c-control ist wirklich nur zum durchreichen.
> nur: ich muss die werte mit macromedia director wieder einlesen, d.h. das mit der Soundkarte wird nicht ganz funktionieren. ausserdem kann ich mit directror auch nur auf die serielle schnittstelle zugreifen. dafür aber auch mit 230400 Baud...
>
> kannst du mir einen D/A-Wandler IC empfehlen? was kostet sowas ca.?
>
> danke und gruss
>
>
> sebastian
>
>
>
>
> > Hallo Sebastian,
> >
> > die M-Unit2.0 die ich habe kann max. 9600, einfach wegen dem Basic-Befehlssatz, der keine höhere Geschwindigkeit anbietet. Von der Geschwindigkeit her kann die sicher mehr, aber ich wüßte nicht wie.
> >
> > Aber zu Deinem Beispiel: Wenn Du ohnehin die C-Control nur zum "Durchreichen" der Daten verwendest, kannst Du auch gleich NUR den PC verwenden: Die Werte z.B. an der Parallelschnittstelle ausgeben, dahinter einen D/A-Wandler IC, zum Einlesen den Line-In der Soundkarte (da gibt es viele Shareware- un Codebeispiele, z.B. "Oszilloskop") - da solltest Du spielend Meßfrequenzen von 20kHz und mehr erreichen..
> >
> > C.
> >
> >
> > > Hallo Carsten!
> > >
> > > Ist eigentlich nur ein Versuch. Ich versuche Werte (Daten) über unterschiedliche Materialien  zu schicken und dann wieder einzulesen. Funktioniert auch ganz gut, nur die Geschwindigkeit ist halt sehr lahm.
> > >
> > > D.h. jetzt also: ich kann max. 1953 Werte pro Sekunde auswerten. Das wäre ja schon mal ok.
> > > Wegen der seriellen Schnittstelle. Da kann ich ja die CC1 nur mit 9600Baud betreiben. Irgendwo habe ich gelesen, daß die CC2 das jetz mit 19200 Baud hinbekommt. Das würde heißen: 2400 Zeichen pro Sekunde. Also schneller als der DA.
> > >
> > > Also die maximale Leistung wäre also 1953 Werte pro Sekunde
> > >
> > > Oder habe ich mich da jetzt irgendwie verrechnet???
> > >
> > > danke für deine hilfe. werde mir auf alle fälle mal die M-Unit2 besorgen
> > >
> > > sebastian
> > >
> > >
> > > > Hallo Sebastian,
> > > >
> > > > die angegebenen Zeiten stimmen wirklich :-) die Unit ist ja auch nicht sooo teuer, bis jetzt kann ich sie empfehlen, weil einfach, günstig und mit kleinen, aber überschaubaren Macken.
> > > >
> > > > Bei den Wandlern ist (denke ich) der D/A-Wandler zeitkritischer. Laut Beschreibung (MANUAL_M2.0_M1.2.pdf) kann man wechselnde Werte maximal mit 1953 Hz ausgeben. Was willst Du denn so Schnelles messen? für's Oszilloskop oder Audio ist es schon noch bischen langsam :-)
> > > >
> > > > C.
> > > >
> > > > > Hallo Carsten !
> > > > >
> > > > > ich habs jetzt mal mit meiner CC1 probiert und da braucht dein Script ca. 40 Sekunden. Also ca. 20mal langsamer (ist die neue C-Control wirklich soviel schneller???). Das Programm mit put ca. 2min30sek.
> > > > >
> > > > > bleibt die frage ob sowohl der PWM als auch der AD-Eingang diese Geschwindigkeit mitmachen würden? sind die Ein- und Ausgänge auf der neue C-Control auch schneller?
> > > > >
> > > > > gruss, sebastian
> > > > >
> > > > >
> > > > >
> > > > > > Hallo Sebastian,
> > > > > >
> > > > > > ich denke, die meiste Zeit benötigt die Datenübertragung vom und zum PC (9600 Bit/Sekunde), nicht die eigentliche Messung. Auf meiner 2.0 z.B. braucht folgendes Programm (Ausschnitt) etwa 2 Sekunden:
> > > > > >
> > > > > > BEEP 11,2,1
> > > > > > for i = 1 to 10000
> > > > > >     pwm = wert_out
> > > > > >     wert_in = messung
> > > > > > next
> > > > > > BEEP 11,2,1
> > > > > >
> > > > > > währenddessen dieses Programm über 12 Sekunden braucht:
> > > > > >
> > > > > > BEEP 11,2,1
> > > > > > for i = 1 to 10000
> > > > > >     put wert_out
> > > > > > next
> > > > > > BEEP 11,2,1
> > > > > >
> > > > > > Evtl. kannst Du die Eingangswerte vor der Messung auf der C-Control zwischenspeichern (mit open#, write# usw) und dann von dort und nicht vom PC aus holen. Der D/A-Wandler hat außerdem auch eine max. erreichbare Frequenz, siehe Beschreibung.
> > > > > >
> > > > > > Gruß Carsten
> > > > > >
> > > > > > > Hallo
> > > > > > >
> > > > > > > ich habe folgendes simples Programm geschrieben.
> > > > > > >
> > > > > > > ich schicke also über die serielle Schnittstelle einen wert an die ccontrol, dort wird dieser über den pwm geschickt und wieder am ad eingelesen. das funktioniert ganz gut.
> > > > > > >
> > > > > > > NUR ... etwas langsam ! für 1000 werte braucht die ccontrol ca. 3 Sekunden.
> > > > > > >
> > > > > > > gibt es da eine möglichkeit das ganze zu beschleunigen ?
> > > > > > > also entweder die ccontrol schneller zu machen bzw. das programm zu optimieren???
> > > > > > >
> > > > > > >
> > > > > > > mfg sebastian
> > > > > > >
> > > > > > >
> > > > > > > ----------------------
> > > > > > >
> > > > > > > define pwm da[1]
> > > > > > > define messung ad[1]
> > > > > > >
> > > > > > > define wert byte
> > > > > > >
> > > > > > >
> > > > > > > #Main
> > > > > > >
> > > > > > > get wert
> > > > > > > pwm = wert
> > > > > > >
> > > > > > > put messung
> > > > > > >
> > > > > > > GOTO main
> > > > > > >
> > > > > > > -----------------------
> > > > > >
> > > > >
> > > >
> > >
> >
>

 Antwort schreiben

Bisherige Antworten: