hallo leute,

also ein wenig enttäuscht bin ich natürlich schon, dass keiner der experten in diesem forum die geschwindigkeit einer c-control-unit abschätzen kann!!
aber gut...

ich habe jetzt eben doch eine m-unit2.0 zum testen gekauft und den durchsatz damit selbst ermittelt.
unten sind die ergebnisse meines benchmarktest angegeben, falls jemand ebenfalls mit der performance der c-control-unit zu tun hat.

für meine anwendung muss ich nacheinander 16 bytes auf die ports schreiben und jeweils noch einen pulse auf ein schieberegister (ca. 33µs elektronisch verzögert) geben, damit die richtige zeile angesprochen wird, wenn die parallelen daten anstehen.

das macht also im minimum 16 x write + 16 x pulse + 1 x goto
= 16 x 33 + 16 x 25 + 17 = 945 µs ==> 1058 Hz wiederholrate.
das ist ausreichend und bei tageslicht flimmerfrei!

das lesen aus dem flash-speicher lasse ich lieber sein. weil das zusätzliche 16 x 94 µs kostet.
überhaupt habe ich festgestellt, dass zugriffe auf konstanten (if a=1 then) geringfügig langsamer sind als zugriffe auf variablen (if a=b then).


hier die testergebnisse:


  • Benchmarktest M-Unit 2.0 mit Standard-CCBasic

    Portausgabe_____________Dauer in µs
    Tog (Flankenwechsel)___________25
    Pulse (2 Flankenwechsel)___________25
    Write Byte (=8 Bit)___________33
    Write Bit ___________45
    Write Bit const___________49
    Branch
    Goto #Marke___________17
    If False (=Byte) Then ___________80
    If False (=Word) Then ___________84
    If False (>Word) Then ___________91
    If False (Bit=const) Then___________98
    If False (Bit=Bit) Then ___________108
    If True (>Word) Goto #Marke___________101
    Unterprogrammaufruf
    Gosub...Return___________37
    If True (=Byte) Gosub...Return___________115
    If True (>Word) Gosub...Return___________120
    Zähler
    i=i+x (Byte)___________70
    i=i+x (Word)___________72
    i=i+1 (Byte)___________74
    i=i+1 (Word)___________79
    Schleifen
    For-Next Byte___________85
    For-Next Word ___________98
    Datei
    1 Word aus Flash-Datei lesen (inkl. EOF Check )___________94