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

Re: Operationsgeschwindigkeit Kategorie: CC-Pro Unit & Appl.Board (von Gerhard - 29.11.2005 18:07)
Als Antwort auf Re: Operationsgeschwindigkeit von Bernd - 28.11.2005 22:22

> > Hallo Bernd,
> > In Assembler kannst Du mit einem simplen Programm alles komfortabel schalten:
> > 1. Schritt: den ganzen Port auf Ausgang
> > 2.Schritt:Belegung des Ports mit einer 01 Folge: z.B.:Port=01010101
> > (mit bset und bclr-Befehlen)
> > Nun kommt die Routine
> > Label1:
> > asl Port ;schiebt die Bits um eine Stelle nach links Port=10101010
> >             ;dauert 4 Takte
> > jmp Label2 ;Dauer 2 Takte
> > Label2:
> > asr Port ; schiebt die Bits um eine Stelle nach rechts: Port=11010101
> >              ; dauert 4 Takte
> > jmp Label1 ;dauert 2 Takte
> > (also ganz symmetrische Kennlinien: Immer wenn die Pins 0,2,4,6  auf 5V sind,
> >  dann sind die Pins 1,3,5,7 auf GND - und umgekehrt...)
> >
> > Mit 12 Takten hast Du eine Routine im 300 kHz-Bereich (open-Micro),
> > Durch Einführung von Wartebefehlen (nop), kannst Du die Zeitdauer verändern.
> > Könnte man die Pro in Assembler bearbeiten, sollten auf Grund der höheren
> > Taktrate, MHz-Geschwindigkeiten erreichbar sein
> > ... aber Assembler und Mega-Pro is nich...
> > (aber Elektor bietet dies wohl alles auf 16Bit-Basis als Zugabe fĂĽr zwei Hefte an...)
> >
> > GruĂ?, Gerhard
>
> Hallo Gerhard!
> Sieht gut aus, aber dein Programm verbrät einen ganzen Byteport, nur um 1 Bit umzuschalten,
> Haben wir denn soviele freie Bytports. Ist bestimmt das Schnellste, da 8 Bit Datenbreite.
>
> Jetzt nim Peters Frequenzausgang. du startest x kHz an einem Pin, mit negator machst du die
> 2. Pase und hast ein in allen Bereichen symetrisches zwei Phasiges Signal,
> bis du den Port wieder abschaltest.
> durch Pegelabhängige Hardwaremässige Freischaltung des Potes kann sogar ein
> definierter Sartzustand erzeugt werden, der eine Verzögerung des Starts um maximal
> einen Takt der Ausgangsfrequenz verzögert wird.
>
> Tolles Problem
> gruĂ? Bernd

Hallo Bernd,
natĂĽrlich kannst Du in Assembler auch nur 2 Ports schalten...
Und natürlich sind Hardware-Lösungen denkbar, aber, wenn ich schon mal einen 20 MHz-Rechner
habe, sollte der das Problem auch per Software lösen können. Schlie�lich baut sich kein Mensch
an einen Merzedes (bei dem die Handbremse angezogen wurde) einen neuen Motor an, um
schneller als ein Trabbi oder ne Ente zu fahren, obwohl der Merzedes-Motor eigentlich schneller ist
GruĂ?, Gerhard
 


    Antwort schreiben


Antworten:

Re: Operationsgeschwindigkeit (von Bernd - 30.11.2005 13:41)