Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > > > 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 >