
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Hallo Achim, so mache ich es auch, alles was in dem Zeitbereich liegt ist in der Schleife, die Grundeinstellung wird mit einer anderen Schleife voreingestellt. Da aber die Impulslänge 1 und 2 und die Pausenzeit immer die gleiche Gesamtlänge haben müssen (11ms + 22ms + 267ms = 300ms oder 20ms + 28ms + 252ms = 300ms) wäre es einfacher gewesen die Pausenzeit berechnen zulassen, als in einer extra Tabelle abzufragen. Man könnte sicher auch noch mit den Verhältnissen der Zahlen zueinander arbeiten, leider ist das Spektrum, Spreizung zu groß, Schleife (b) für Impuls 1 geht von 88 bis 240, Schleife (c) (davor Schleife - 1 bis 100 als Grundeinstellung) für Impuls 2 geht von 78 bis 220, Pause (a) (Doppelschleife) geht von 228 bis hin zu 10. siehe unten - also 2 Rechteckimpulse mit bestimmter Länge und angepaßter Pause zur nächsten Periode. Ja und das wäre halt mit der 16Bit Erw. viel einfacher gewesen. Hättest du einen andern Vorschlag wie ichs sonst machen könnte. ?????? Gruß Georg pause 7 ' der Vorlauf als Grundeinstellung FOR x = 1 TO a ' Doppelschleife für die Pause NEXT FOR x = 1 TO a NEXT TG = off FOR x = 1 TO b ' Impuls 1 NEXT tog TG FOR x = 1 TO 100 ' Impulspause und Impulslänge sind gleich FOR x = 1 TO c NEXT tog TG FOR x = 1 TO 100 NEXT FOR x = 1 TO c next tog TG > > so jetzt funktionierts, leider hat die OM-Micro mit der 16 Bit Erweiterung nur noch 30% der Geschwindigkeit. Ein Schleifen Durchlauf von 1 zu 220 waren mit dem Oszi gemessen 27,5ms, nach der Erweiterung sind es über 80ms. Damit erreiche ich leider nicht mehr die zeitliche Auflösung die ich brauche. Das Spektrum was ich brauche sind 11ms bis 34ms in 0,1-0,2ms Schritten. > > Ohne 16 Bit - Ein Schleifendruchlauf von 1 zu 8 sind gemessen 1ms = Auflösung ca 0,125ms > > > > Schade mit der 16 Bit Erweiterung wäre es so einfach und komfortabel gewesen. > > > > Gruß > > Georg > > > > Gibt es noch eine andere Möglichkeit > > Verstehe ich etwas nicht oder warum zählst Du nicht einfach bis zu einem drittel des bisherigen Endwertes? > > Statt bis 220 nur bis 70, statt bis 8 nur bis 2? > > Ansonsten ohne 16-Bit-Erweiterung: > > Statt > c= 360 > ... > FOR x = 1 TO c > NEXT > tog TG > > ein > > c= 105 > ... > FOR x = 1 TO 255 > NEXT > FOR x = 1 TO c > NEXT > tog TG > > > Ggf. c etwas kleiner, um den Overhead der zweiten For-Schleife zu kompensieren. > > Bye > Achim |
| Antwort schreiben |