Suchergebnisse

Suchergebnisse 1-20 von insgesamt 275.

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Aufgrund technischer Veränderungen ist der Mailverkehr innerhalb des Forums (Private Nachrichten) nur noch eingeschränkt möglich. Die Einschränkung ist notwendig, um zusätzliche Betriebskosten für das Forum zu vermeiden. Näheres zu den Hintergründen im Thread "Aktuelles zum Forum".Wir bitten um Verständnis.

Hinweis kann nach Kenntnisnahme deaktiviert werden!

  • Ehrlich gesagt, würde ich das ausprobieren. Besonders ob der Wert von Position auch in der aufrufenden Sub erhöht wurden.

  • Festkommaarithmetik

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Nur dadurch, dass du die Lib in deinem file angibst, wird ja noch kein Flash verbraucht. Erst die Benutzung von Double Funktionen führt dazu. Und das würde in deiner abgestrippten Version ja auch sein. Daher sehe ich noch nicht, wie du damit Flash sparen willst. Vielleicht kommst du auch mit ganzen Zahlen aus, dass wäre sehr viel sparsamer.

  • Binär zu BCD Wandlung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Was mich richtig geschockt hat, war dieser Befehl: Mystr = Str(i) Der braucht über 3000 Takte, also ganz alleine 20 mal soviel wie Galahats Programm. Das kann ich beim besten Willen nicht verstehen, was MCS da gemacht hat. Bestätigt mich nur darin, dass Bascom keinesfalls ein "Textverarbeitungsprogramm" ist. Kopfrechnen übrigens schwach: Es muss 07D0 heißen.

  • Binär zu BCD Wandlung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Hallo Galahat, bei bin2bcd4 hast du glaube ich einen C&P Fehler. müsste bestimmt 07C0 heißen. Siehst du eigentlich Potential darin, diese immer gleichen Blöcke durch einen zu ersetzen um den Flash Bedarf zu reduzieren? Also eine Schleife über die 8 gleichen Abschnitte und nur die Vergleichs- und Add Werte anpassen. Heißt 40000->20000->10000 usw.

  • Binär zu BCD Wandlung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    @Galahat Ich kann tschoeatschs Bedenken schon nachvollziehen. Wenn du in ASM etwas programmierst, dann kommen dazwischen ja in der Regel keine Bascom Befehle. Damit können die auch nicht den Inhalt von Registern ändern, in denen du Werte hältst, die über den Bascom Befehl erhalten bleiben sollen. Das ist hier ja anders, sowohl bei den GPIOR als auch bei den von dir verwendeten Registern. Aber ich habe auch noch nie gesehen, dass Bascom diese verwendet. Das wäre auch nur sinnvoll, wenn der Compil…

  • Binär zu BCD Wandlung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Hallo tschoeatsch, ich würde nicht mal mitmachen, wenn es einen Preis zu gewinnen gäbe. Es wird auch nicht „die“ beste Lösung geben. Die schnellste und Flash/SRAM sparsamste wirst du sicherlich in ASM finden. Da die meisten von uns da eher nicht so fit sind, wird Galahat das regeln müssen. Die Lesbarkeit und Möglichkeit für individuelle Updates geht dabei für uns dann eher verloren. Dazu würden die meisten wohl eine Bascom Version favorisieren. Ich benutze Bascom jetzt schon seit 10 Jahren und d…

  • Binär zu BCD Wandlung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Hallo Michael, mir ging es nicht darum, einen Wettbewerb zu dem Thema aufzumachen. Ich wollte nur zeigen, dass monkyes Ansatz noch sehr deutlich schneller werden kann, wenn man die einfache Subtraktionsmethode optimiert. Allerdings haben solche Verbesserungen dann häufig andere Nachteile – wie etwa Flash- und SRAM-Bedarf, Lesbarkeit ... Dass man dies dann in ASM noch um einiges schneller und kompakter machen kann, ist klar und Galahat hat es ja auch schon gezeigt. Ist dann aber nur für ASM Kundi…

  • Binär zu BCD Wandlung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Zitat von Galahat: „Hier noch meine Interpretation zum Subthraktionsverfahren. Resultat: 306 cycles bei 59999, ~230 bytes Flash Habe da jetzt noch nicht wirklich nach Optimierungspotential gesucht, würde vom Speed her aber sicher kein Quantensprung sein. “ Hallo Galahat, mit Bascom Befehlen kommt er halt mit etwa der Hälfte Takte aus, wenn du nicht immer 1000 oder 100 subtrahierst, also im schlechtesten Fall 9 mal, sondern so, dass du mit max. 3 Subtraktionen auskommst. Zum Preis von etwas mehr …

  • Binär zu BCD Wandlung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Hallo monkye, ich habe auch noch mal etwas rumgespielt und versucht, bzgl Speicherplatz und Speed was rauszuholen. Ist für den Attiny85. Da der auch noch 3 GPIO Register hat, habe ich in der schnellsten Variante die auch eingesetzt. BASCOM-Quellcode (93 Zeilen)

  • Eleganter Zugriff auf Bits

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Und wenn du das mit der Fehlermeldung geklärt hast, dann kannst du dies auch einfacher so schreiben: BASCOM-Quellcode (8 Zeilen)

  • Schreibe lieber nicht auf absolute Adressen (&H60) sondern lass den Compiler die Adressen verwalten. Dein Overlay machst du dann so: Dim Testsingle_write As Single Dim Byte1_w As Byte At Testsingle_write Overlay Dim Byte2_w As Byte At Testsingle_write + 1 Overlay Dim Byte3_w As Byte At Testsingle_write + 2 Overlay Dim Byte4_w As Byte At Testsingle_write + 3 Overlay Und einfacher geht es dann noch, wenn du das Array nimmst, was Tschoeatsch schon vorgeschlagen hat: Dim Testsingle_write As Single D…

  • Sound parallel zu anderen Aktionen

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Das hast du aber sicherlich auch nur im Simulator ausprobiert. In HW wird das nicht gehen, weil du den Inhalt des UDR Registers, der den letzten Aufruf ausgelöst hat, nicht mehr zu sehen bekommst, wenn der eigentliche URXC Interrupt das Register gelesen hat. Ich wüsste außer UDR übrigens kein einziges Register, welches du lesen müsstest, geschweige denn in einer bestimmten Reihenfolge. Und das UDR liest du ja hier auch schon.

  • Sound parallel zu anderen Aktionen

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    @monkye Das war mein Vorschlag vor gefühlten 30 Posts. Zitat von Pluto25: „Aber das Problem war keins denn Bytematch funktioniert noch wenn der Puffer "überläft" - richtig keine weiteren Zeichen aufnimmt. (Richtig Monkey) “ Das Label Serial0ByteMatch wird in dem Fall angesprungen. Aber die Daten, die dann im Puffer stehen, wirst du nicht nutzen können, denn es ist ja wahrscheinlich etwas falsch gelaufen, sonst wäre der Puffer ja nicht übergelaufen. Also hilft das nur zum Synchronisieren auf das …

  • Sound parallel zu anderen Aktionen

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Zitat von Pluto25: „Gibt es bei Bascom nicht die Möglichkeit das eingegangene Zeichen gleich wieder zurückzusenden? “ Klar, printen in der Serial0ByteReceived Zitat von Pluto25: „Dann könnte ich Bytematch auf Enter setzen wobei dann jedoch der Buffer überlaufen könnte und dann geht gar nix mehr. “ Mach doch den Buffer größer, du sagst doch, dass du genügend Speicher hast. Zitat von Pluto25: „Läßt der sich nicht als Ring auslegen oder automatisch löschen falls er überläuft? “ Du wirst es nicht gl…

  • Schrittmotor ansteuern

    hero - - Elektronik

    Beitrag

    Hallo tschoeatsch, vielen Dank für das Angebot. Den Boden komplett tauschen, darf ich nicht. Wie gesagt, von außen möglichst keine Änderung. Höchstens mal eine Schraube oder so. Wenn ich heute noch Zeit habe, werde ich mal deine Fake Räder ausprobieren, sprich eine oder zwei kleine Kugeln so platzieren, dass die hinteren Räder abheben. Das sollte erlaubt sein.

  • Time$ , Date$ und Timerbenutzung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Nein Detlef, wie Michael mehrfach geschrieben hat, gibt es keinen Grund, auf Timer0 und Timer2 zu verzichten. Timer 1 mit DCF77 und Timer2 mit asynchroner Clock könnten sich theoretisch in die Quere kommen, weil beides die Zeit/Datums Funktionen benutzt. Aber das erlaubt der Compiler schon nicht. Häufig kommen solche Gerüchte auf, wenn es bei jemand nicht funktioniert hat. Aber allgemeingültig ist so eine Aussage auf jeden Fall Blödsinn.

  • Schrittmotor ansteuern

    hero - - Elektronik

    Beitrag

    Hallo tschoeatsch, klingt einleuchtend. Leider hat der Chinamann die Micro-Stepper noch nicht geliefert. Was ich auch nur sehr schwer schaffe ist, mit den einzeln angetriebenen Rädern geradeaus zu fahren. Meistens kommt ein großer Bogen raus, evtl. weil die Räder minimal unterschiedlichen Radius haben. Ich kann jedenfalls die Richtung nur sehr schwer beeinflussen. Hoffentlich habe ich das Auto nicht schon komplett vernudelt, bis die Stepper kommen. Im Moment favorisiere ich die angetriebene Hint…

  • Time$ , Date$ und Timerbenutzung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Ich wollte da nichts kritisieren sondern habe nur auf deine Frage geantwortet, ob das aus dem DB rausgelesen werden kann. Wenn ich von Softclock spreche, meine ich die, die mit Config Clock=Soft erzeugt wird. Dazu ist zwingend ein asynchroner Timer (meistens/immer? Timer2) mit ext 32KHz an den OSC Pins notwendig. Folglich können nur solche AVRs verwendet werden, die diese HW haben. Ich glaube, dass dazu parallel kein Config DCF77 möglich ist. Config DCF77 verwendet einen Timer (Timer1 für Tiny u…

  • Schrittmotor ansteuern

    hero - - Elektronik

    Beitrag

    Hallo Detlef, die Hinterachse könnte ich recht einfach so ändern, dass die Räder unabhängig laufen. Allerdings bezweifle ich, dass dies hier mein Problem ist. Da kein Diff eingebaut ist , müsste für Kurvenfahrt schon etwas Schlupf sein. Das ist richtig. Aber wenn die Vorderräder beide auf geradeaus stehen und trotzdem soll eine Kurve gefahren werden, müsste dazu entweder die Vorder- oder die Hinterachse ein wenig seitlich verschoben werden und das geht mal grad gar nicht. Ich hatte auch schon an…

  • Time$ , Date$ und Timerbenutzung

    hero - - Hauptforum BASCOM-AVR

    Beitrag

    Hallo Detlef, für DCF wird wegen der langsamen Signale wahrscheinlich ein 16-bit Timer benötigt, was in der Regel Timer1 ist. Für die Softclock wird ein asynchroner Timer (meistens Timer2) mit den Anschlüssen OSC1 und OSC2 für den 32KHz Quarz benötigt. Beides kannst du im DB sehen.