Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: ports zu langsam Kategorie: Sonstige Hardware (von UlliS - 25.04.2008 21:09)
Als Antwort auf Re: ports zu langsam von PeterS - 25.04.2008 19:24

Hallo Noob,

es wird demnächst Inline ASM geben, wir werden versuchen
dadurch die Ports schneller zu machen. Jedoch versprechen
kann ich noch nix.

Grüße Ulli

> Hallo Noob,
>
> die C-Control Pro benutzt zur Abarbeitung der Programme einen Interpreter: Ähnlich wie bei Java wird das
> Programm in einen Bytecode übersetzt, der vom Interpreter in der Firmware abgearbeitet wird. Genauso
> arbeiten auch C-Control I (beide Versionen) und C-Control II von Conrad.
>
> Es wird im Handbuch an vielen Stellen darauf verwiesen, das ein Bytecode Interpreter benutzt wird. Bitte sag
> mir, welche Stellen Du im Handbuch gelesen hast, dann bekomme ich einen Eindruck, wo noch weiter auf
> den Einsatz des Interpreters hingewiesen werden kann.
>
> Warum wurde ein Interpreter benutzt? Die Entwicklung eines Compilers, der effizeinten Assembler Code
> erzeugt dauert mehrere Mannjahre. Da Conrad die Software umsonst herausgibt, war dieser Aufwand nicht
> möglich, zumal da ja BASIC und C unterstützt werden sollten, hätte es denn Aufwand nochmal verdoppelt.
>
> Es ist augenfällig, das fast alle Compiler für den Atmel die Assembler erzeugen, nicht auf dem Chip selbst
> debuggen können. Oft wird nur ein Simulator mitgeliefert. Die Option wäre der Support von AVR Studio
> (das Conrad aus Lizenzgründen nicht mitliefern dürfte), aber da muß man auch noch mindestens einen ISP
> Adapter dazu kaufen.
>
> Am einsteigerfreundlichsten ist halt die Interpreterversion (die übrigens auch beim Speicherüberlauf warnt,
> was eine Assemblerversion nicht kann), aber ein Interpreter ist halt nicht so schnell wie richtiger Maschinen-
> code.
>
> Gruss Peter
>
> > Port_Write oder Port_WriteBit Befehle benötigen etwa 30 bi 36 mikrosekunden um die ports umzuschalten.
> > das ist für meine applikation aber mindestens um eine grössenordnung zu langsam.
> >
> > wie kann man das schneller machen.
> >
> > ich bin davon ausgegangen dass ein risc prozessor etwa einen takt braucht um so ein port zu ändern.
> > das wären dann aber 71 ns.mit 3 oder 4 takten wäre ich zufrieden gewesen. (300ns)
> >
> > liegt das am compiler ?
> >
> > ich wäre für einen tip oder trick sehr sehr dankbar da ich bereits etwa 600 Euro in meine Schaltung gesteckt
> > habe, für eine abschlussarbeit. 3 mikrosekunden würden gerade noch gehen maximal.
> >
> > um das festzustellen habe ich eine subroutine geschrieben 1000 mal aufgerufen mal mit 24 Portwrite befehlen
> > mal mit 48 und die zeitdifferenz die mir der ide angibt auseinander gerechnet.
> >
> > etwas geschockt Noob


    Antwort schreiben


Antworten:

Re: ports zu langsam (von ThomasO - 29.04.2008 17:18)
Re: ports zu langsam (von noob - 26.04.2008 11:34)
    Re: ports zu langsam (von Jo - 13.01.2009 16:42)