Search Results

Search results 1-20 of 1,000. There are more results available, please enhance your search parameters.

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

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!

  • zertifikat ablgelaufen?

    Mitch64 - - Themen am Rande

    Post

    Ich habe auch diese Fehlermeldung mit abgelaufenen Zertifikat erhalten. Verwende ebenfalls Firefox. Bei genauerem hinschauen gab es aber auch den Hinweis (von Browser), dass der Fehler verursacht werden kann, wenn die Uhrzeit des Servers oder Clienten nicht stimmt. In dem Fall kann das Zertifikat nicht geprüft werden. Bei mir stimmte die Uhrzeit, also Clientseitig. Bleiben also noch - Uhrzeit Serverseitig ungenau oder eben doch - Zertifikat-Problem (abgelaufen). Das als Hinweis meinerseits.

  • Ist das Thema bei dir noch aktuell? Ich konnte mittlerweile den Code Testen (Simulator). Jetzt habe ich auch eine kompakte CRC-10 Routine, die ist in Basic geschrieben und benötigt ca. 6300 Takte pro Codeword (32 Bit). Du kannst das selber mal ausprobieren. Hier der Code und die neuen Routinen für - CheckParity() - CheckCRC() Bitte Rückmelden, ob der Code so funktioniert. Edit: Den Code sollte man auch hinzufügen, ich Bachel BASCOM Source Code (263 lines)

  • In der Bascomhilfe findest du Infos und es gibt auch einen Beitrag im Lexikon.

  • Das mit den 17 Byte ist relativ. Ich weiß jetzt nicht, von welchem Stack du redest. Aber wenn du eine Routine aufrufst, werden Werte übergeben, die werden auf dem Framesize gespeichert und die Adresse dazu auf dem SWStack. Wenn du von der Routine zurück kommst, ist der Speicher wieder frei für eine andere Routine. Auch lokale Variablen landen auf dem Framesize mit nem Zeiger im SWStack. Diese Variablen sind nur temporär belegt und danach wieder frei für andere Variablen oder Parameter. Wenn man …

  • @DG7GJ Biste schon schneller geworden mit deinem Code? Für deinen Parity-Check hätte ich dir folgende Routine anzubieten. BASCOM Source Code (42 lines)Deine Ursprüngliche Parity-Routine brauchte 3342 Takte. Meine obige, wenn man die Basic-Variante verwendet noch 2643 Takte. In Assembler sind es 330 Takte, also rund 10x schneller als deine Routine. Wäre ja schon mal ein Angang.

  • Falls du jetzt vermutest, dass meine Stack-werte falsch eingestellt sein könnten, muss ich dich enttäuschen. Bei meinem Test waren die Stack-werte wie folgt eingestellt und der Fehler trat dennoch auch: BASCOM Source Code (9 lines)Der Fehler ist definitiv da. Ja die Stack-werte sind wichtig, wie du selbst festgestellt hast. Ich habe da schon Routinemäßig ein besonderes Auge drauf. Wenn man versteht wofür die Stack-werte da sind und durch was die wie verwendet werden, dann kann man die Stack-wert…

  • Also ist der Bug ab Version 2.0.8.7 vorhanden. Danke für die Rückmeldungen. Ich schreib dann mal ein Ticket, wie so oft (schon das 2. zu dieser Version ). Edit: Ticket ist raus!

  • Hallo zusammen. Wenn man eine Variable hat, z.B. myWord und möchte dann das Bit 12 abfragen, geht das einfach mit BASCOM Source Code (2 lines) Wenn ich das nun aber auf einen Parameter anwenden möchte, der einer Sub/Funktion übergeben wurde. funktioniert das nicht. BASCOM Source Code (11 lines)BitVal erhält immer das LSB-Byte, also &h55, aber nicht 0 oder 1. Ich verwende die Version 2.0.8.7 Kann das fehlerhafte Verhalten jemand bestätigen? Ist das bei Version 2.0.8.6 auch schon so? Ich habe die …

  • Das Nadelöhr ist meist in dem Programmteil, der am häufigsten durchlaufen wird. Das dürfte wohl der While-Block ab Zeile 57 sein. Ohne große Mühe könnte man also mal den Codteil in den Zeilen Zeilen 61 bis 81 optimieren. BASCOM Source Code (26 lines) Du kannst den Simulator bemühen, um die Laufzeit zu ermitteln von 1. deinem aktuellen Code 2. bei dem Code nach obigem Muster optimiert 3. und Alternativ mit If ElseIf ElseIf usw. Dann entscheidest du dich für die schnellste. Vermutlich wird das abe…

  • Das kommt drauf an. Erstens muss man nicht diesen Code in alle States einfügen. Typischerweise würde man den Code dann in einer Sub bereit stellen und wurde dann von den States aus einfach einen Call machen. Die Frage ist doch, ob du in jedem State alle Tasten prüfen musst. Und die Antwort ist normalerweise nein. Aber Code, der von jedem Zustand immer ausgeführt werden müsste, kann natürlich außerhalb der Select case Struktur sein. Aber der sollte nicht die States verändern. Nur innerhalb der St…

  • Im Übrigen sind deine Tastenabfragen syntaktisch falsch. So nicht: Sub Taster_ab: .. End Sub Sondern so: Sub Taster_ab() .. End Sub. Der Compiler meckert vielleicht nicht, aber du weißt nicht, was er dann compiliert! Das solltest du korrigieren. Lass auch mal den Codeexplorer drüber schauen, ob der was sieht und das auch berichtigen.

  • Wie ich es mir gedacht habe. Statemachine ist fehlerhaft umgesetzt! In der Do Loop Fragst du zwar die States ab. Aber außerhalb der Select Case Struktur (Statemachine) fragst du die Tasten ab und hast anderen Code, der die States ändert. Da wird das Problem seine Wurzel haben. Die Zustandswechsel gehören immer in die entsprechenden Zustände. In der Schleife mit der Statemachine darf im Grunde nur die Select case Struktur sein. Aller Code muss in die Cases und zwar zum richtigen Case. So wie es j…

  • Vorgehen bei Fehlersuche

    Mitch64 - - Hauptforum BASCOM-AVR

    Post

    Die Umsetzung in eine Statemachine war schon die richtige Entscheidung. Den Grund haste ja eben genannt. Und ich würde auch dabei bleiben. Aber du hast irgendwo bei der Umsetzung einen Fehler gemacht. Vielleicht die States nicht korrekt definiert oder zu viel in einen State gepackt. Kann auch sein, dass du die Übergangsbedingungen an den falschen Stellen auswertest. Die gehören in die States (Cases) rein. Vielleicht zeigst du mal die Schleife, in der die States abgehandelt werden und wo die tast…

  • Im Datenblatt stehen zum Thema EEProm Corruption so ein paar Hinweise. Zum einen Dürfen Schreibzugriffe auf das EEProm nicht durch Interrupts unterbrochen werden. Das sollte eigentlich Bascom selber schon beim Schreiben bewerkstelligen. Aber du kannst ja mal beim Schreiben per Code die Interrupts abschalten und schauen, ob das Phänomen weg ist. Zum anderen muss die Spannung am Controller korrekt sein während des Schreibens ins EEProm. Ist sie zu tief, kann das zu corrupten Daten führen. Ein ande…

  • Vorgehen bei Fehlersuche

    Mitch64 - - Hauptforum BASCOM-AVR

    Post

    Grundsätzlich kommt man dem Fehler durch logisches Denken auf die Spur. Wenn der Wert falsch ist, stellt sich die Frage, wo der Wert her kommt und ist er dort auch schon falsch? Wenn per Tasten die Grenzen eingestellt werden, wird das korrekt verglichen beim Fahrerwunsch? Wo wird der Fahrerwunsch eingestellt? Die Werte für Min, Max und Fahrerwunsch müssen den Werten nach mindestens mal 16-Bit Werte sein. Laufen da Interrupts und funkt da beim auslesen vielleicht was dazwischen? Der Wert ist ja n…

  • Beschreibung einer lib

    Mitch64 - - Hauptforum BASCOM-AVR

    Post

    Quote from Heinrich_38: “Wo hast du das gefunden ? ” Nicht gefunden, ChatGPT generieren lassen

  • Beschreibung einer lib

    Mitch64 - - Hauptforum BASCOM-AVR

    Post

    Meinst du sowas? Source Code (55 lines)

  • Ja, manchmal braucht man eben unterschiedliche Daten, die aber zusammen gehören. Angenommen du willst was loggen/Sampeln, und da fallen unterschiedliche Daten-Typen an, z.B. fällt pro Sampel ein Byte, ein Word und ein Single an. Und man will das in einem Array speichern, dann muss man bisher 3 Arrays anlegen. Source Code (3 lines) Da die 3 Werte aber zusammen gehören, kann man die auch mit Type zusammen-fassen, wie einen Datensatz. Source Code (7 lines)Die 3 unterschiedlichen Variablen-Typen wur…

  • I2C-LCD und Bascom

    Mitch64 - - Hauptforum BASCOM-AVR

    Post

    Quote from Noerbe: “I2C klappert bei 16MHz und "Config I2cdelay = 1" mit ca. 175kHz. Damit ist das wirklich arschlahm und ein 20x4-Display komplett vollzuschreiben dauert über 100ms. Die Bascom-Hilfe schreibt über das Delay da was völlig Anderes. Setzt man I2cdelay = 0 wird das langsamer, ca. 80kHz! Mit "Config I2cdelay = 2" sind es dann etwa 150kHz. ” Lt. Hilfe soll der Wert bei Config I2CDelay die Dauer bis zum nächsten Clock Puls bedeuten (SoftI2C). Ein Delay von 5 = 5µs und das sollte 1 / 5µ…

  • Quote from Mechanic: “kurzes Beispiel von Dir zu type mit passenden Erklärungen ” Das findest du in der Hilfe unter TYPE. Wenn du dann noch weitere Fragen hast, kannst du gerne ein Diskussions-Thema aufmachen. Grundsätzlich kann man sagen, dass ein Array mehrere Variablen vom gleichen Typ zusammenfasst, mit Type kann man unterschiedliche Variablen-Typen zu einer neuen Variable zusammen fassen. Ein solcher Datentyp kann auch Arrays aufnehmen. Aus Typen lassen sich auch Arrays generieren. Es kann …