kannst Du in der Regel besser und einfacher testen, ohne den Code jedesmal hochzuladen. Da Du auch C# Code hast: Das Visual Studio sollte eigentlich auch C Code veraerbeiten können. Eventuell musst Du die passenden Teile nachinstallieren. fchk
handler = get_volt, }, etc... [/c] jedes Command hat seinen Funktionszeiger auf das was ich Handler nannte. Aber zunächst bearbeitet der Parser den empfangenen String vom Port und separiert die Parameter, übergibt dann an den Handler
. rechnet man das LF (0a) nicht mit, komme ich auf 37: [code] 61 3d 30 3b 62 3d 31 0a 77 68 69 6c 65 20 61 3c 31 65 36 3a 70 72 69 6e 74 28 61 29 3b 62 3d 61 2b 62 3b 61 3d 62 [/code] Bitte um einen kleinen Hinweis wie man noch 3 byte einsparen kann?
das Ergebnis ein nicht wartbarer Quältext ist. Ausser, man schreibt ausdrücklich einen Obfuscated C/Perl/Python/Tcl/Brainfuck ... contest aus. Wie sieht eigentlich obfuscated Brainfuck aus?
Optional Info
Log Type: B - Since Boot (Power On Reset), D - Delta, S - Statistic
S - QC_IMAGE_VERSION_STRING=BOOT.BF.3.3.1.1-00066
S - IMAGE_VARIANT_STRING=MACANAZA
S - OEM_IMAGE_VERSION_STRING=4.2.1.1.0
S - Boot Config, 0x000002c5
S - Reset status Config, 0x00000010
S - Content of Watch Register, 0x00000000
konstanten String angegeben, der ähnlich wie bei einem printf verwendet wird: %-Platzhalter werden durch die Werte der nachfolgenden C-Ausdrücke ersetzt, und die resultierende Zeichenkette wird in die Assembler-Ausgabe
Assembler Programs Assembler-Module werden analog zu C-Modulen übersetzte: Während ein C-Modul modul.c mittels avr-gcc -c modul.c zum Object übersetzt wird, ist der Compileraufruf für eine Assembler-Quelle modul.sx avr-gcc -c modul.sx Durch die Endung .sx
, usw. Für weitere Funktionen und deren Prototypen siehe die Dokumentation der AVR-LibC. Strings. Strings sind in C nichts anderes als eine Abfolge von Zeichen und einem '\0' als Stringende. Der prinzipielle Weg ist daher identisch zum Lesen von Bytes, wobei auf die Besonderheiten von Strings
String-Literals zu initialisieren: Leider sieht der Embedded-C Draft nicht vor, String-Literale direkt in einem anderen Adress-Space als generic anzulegen, so dass hier der Umweg über FSTR genommen werden
ChargingType sieht man den Typ nicht. Könnte ein enum sein. Unten bei der Response ist es klar: [c] responseDoc["Modus"].as<String>() [/c] N. M. schrieb im Beitrag #8068359: > Bei der Wandlung der Response ist es das gleiche.
aber alle in Ordnung, trotzdem behauptet er es gäbe einen ISOfehler. Der testhalber angeschlossene String funktioniert an einem Kostal einwandfrei und hat >20 MOhm mit 1kV gemessen. Gibt es bei diesen Geräten einen "bekannten Fehler"? Bei den älteren Kostal WR ist ja oft nur ein Elko genau in der
seriellen Konsole zur Kontrolle Serial.print("Sensor erfolgreich ausgelesen: "); Serial.print(tempC, 1); Serial.println(" C"); // Holt die Temperatur sicher als String mit genau einer Nachkommastelle (z.B. "39.2") char tempBuffer[10]; dtostrf(tempC, 4, 1, tempBuffer); // Kombiniert den Wert mit einem Leerzeichen und dem 'C' // Zusätzliche Leerzeichen sorgen für einen sauberen Abstand zwischen den Durchläufen laufText = " " + String(tempBuffer) + " C "; } [/code]
also lieber auf der sicheren Seite bleiben. Vermutlich ist mein Deye mit 13A für einen einfachen String spezifiziert weil das vor 3 Jahren der Normalfall der Ströme aus einem Panel bzw. String war. Der 26A Eingang hat zwei MC4 Ports, aber im Gerät parallel geschaltet.
kriegst ca. 40ms Latenz dazu Wenn du das am RasPi am laufen hast, kannst du überlegen das auf einen µC zu portieren. Größenordnung STM32H7, vielleicht reicht sogar STM32F4. Die haben zwei USB-Ports, ST USB Device Library und ST USB Host Library kannst du im CubeMX reinklicken...
Ich habe jetzt einen 10€ Schalter mit USB-C Kabel gekauft. Der hängt an der PS und sobald ich den betätige bekommt der Dongle keinen Strom mehr und die PS meldet Headset getrennt und der Sound kommt wieder vom TV, sobald ich wieder einschalte
numbers are prefixed with a dollar sign ($). Examples: A=$FF B=$100 C=$1234 The following digits may be used: 0 1 2 3 4 5 6 7 8 9 A B C D E F STRINGS ======================================================================================= Text strings are enclosed in quotation
Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten. C:\Users\berres> C:\Users\berres> C:\Users\berres>type %USERPROFILE%\AppData\Roaming\Mozilla\Firefox\profiles.ini [Install308046B0AF4A39CB]
prefs.js finde ich hier in dem Verzeichnis nicht. Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten. C:\Users\berres>set user USERDOMAIN=Privat USERNAME=berres USERPROFILE=C:\Users\berres C:\Users\berres>dir Datenträger in Laufwerk C:
the extension of the file "SERIALNO.xxx" in the root directory of the PC-Card. "xxx" is taken as string and has to exactly match the number shown after "Serial No." in the Version-Display, it should be 3 characters long.
used instead. The "A:" drive letter is for the PC-Card, the "E:" drive letter is the RAM-Disk and "C:" and "D:" are for the Flash memory.
= (uart_tail + 1) & (UART_BUF_SIZE - 1); // overwrite old } uart_buf[uart_head] = c; uart_head = next; } /* -------------------------------------------------------- uart_bufferget liest ein Zeichen aus dem Ringbuffer Uebergabe: *c : Pointer auf ein uint8_t, in den das Zeichen eingelesen
################################################################################ softwareuart.h / .c ist eine C-Sourcedatei, die eine serielle Uebertragung von und zu einem PFS154 Microcontroller ermoeglicht. Im Gegensatz zu einer Realisierung, die die Bitzeiten ueber Zaehlschleifen realisiert und von
sofort nach Aufforderung Verbindung trennen die Verbindungen wieder und nach einigen Minuten erscheint C0 im Display. Wieder nach einigen Minuten erfolgt die Aufforderung einen Kondensator>100nF anzuschließen. Ich habe einen 150nF Kondensator angeschlossen. Nach einer Stunde war das Gerät wieder
Laut den Strings im Binary ist es "Version 1.12k-FA", was auch immer dann bei der "FA" Version anders ist im Vergleich zu den diversen Versionen auf Github.
wurde if (!strreadln_ready) { ch= mySerial.read(); // Zeichen lesen if (!uart_readenable) break; // String einlesen und Echo nur dann, wenn Uart-lesen aktiv. // Hiermit kann verhindert werden, dass sich Ausgaben und // Eingaben auf der Konsole gegenseitig in ihrer Darstellung // "stoeren" printf("%c",ch
-tags netgo,usergo,osusergo \ -ldflags="-s -w -extldflags=-static -buildid=" -gcflags=all="-l -B -C" \ -trimpath -o $(TARGET).exe [/code] ein statisch gelinktes Executable "aa.exe" gebaut, das laut Linux' file(1) ein "PE32+ executable for MS Windows 6.01 (console), x86-64 (stripped to external
dein Freund es mit Unter-Unter-Unterordnern übertrieben, dass der > gesamte Pfad so lang ist? C:\Users\<username>\aa.exe -- und der Username ist fünf Zeichen lang, alles zusammen also 21 Zeichen. > Versuch das mal ohne ldflags, gcflags, trimpath. Gute Idee, das versuche ich mal.
number, b: number): number { return a - b; } // ... rest of code ... END_ARG ``` To perform exact string replacements in files, use the single_find_and_replace tool with a filepath (relative to the root of the workspace) and the strings to find and replace. For example, you could respond with: ```tool TOOL_NAME: single_find_and_replace BEGIN_ARG: filepath path/to/file.ts END_ARG BEGIN_ARG: old_string const oldVariable = 'value' END_ARG BEGIN_ARG: new_string const newVariable = 'updated' END_ARG BEGIN_ARG: replace_all false END_ARG ``` To perform a grep search within the project, call the grep_search
wurde if (!strreadln_ready) { ch= mySerial.read(); // Zeichen lesen if (!uart_readenable) break; // String einlesen und Echo nur dann, wenn Uart-lesen aktiv. // Hiermit kann verhindert werden, dass sich Ausgaben und // Eingaben auf der Konsole gegenseitig in ihrer Darstellung // "stoeren" printf("%c",ch
empfangenen Daten interpretiert und das angeschlossene Display ansteuert. Im Gegensatz zu den verbreiteten I²C-Interfaces auf Basis des PCF8574 befindet sich die komplette Ausgabelogik auf der Senderseite. Der Sender bestimmt nicht nur den auszugebenden Text, sondern auch Cursorpositionierung, Zeilenverwaltung
mit urjtag zeigen Reaktion, beschreibungsdatei für AMD/RMI/NetLogic Au1210 / Au1250 fehlen noch I2C. Sockelplatine: TP6 - CLOCK TP7 - DATA USB Anschluss nachrüsten. Anleitung: Forumspost: Bilder: LAN Anschluss nachrüsten. Theoretisch müsste ein LAN Anschluss nachrüstbar sein (beim italienischen UEBBI
man den Kernel entpacken und mit einem Hex-Editor abändern. Der Bootparameter liegt einfach als String vor, der überschrieben werden kann. Achtung: Keine Zeichen einfügen, sondern nur überschreiben! Je nachdem, ob man von SD oder USB booten will, müssen Teile des Bootparameters wie folgt geändert werden
< sizeof(buffer)-1){ buffer[index++] = c; } } else{ buffer[index] = '\0'; // Beende den String mit einem Null-Byte index = 0; // Setze den Index zurück für die nächste Nachricht message_received
glaubst. Das wartet nicht nach jedem Zeichen, sondern nur einmal, nach dem kompletten Absenden des Strings "str". Um nach jedem Zeichen zu warten, müsste es so aussehen: [c] void uart_puts(const char *str) { while (*str) { uart_putchar(*str++); // dem Empfänger Zeit zur Verarbeitung
temperature range ADC0803/04-1 LCD -40 to +85 ⋅C ADC0803/04-1 LCN -40 to +85 ⋅C ADC0803/04-1 CD 0 to +70 ⋅C ADC0803/04-1 CN 0 to +70 ⋅C T Storage temperature -65 to +150 ⋅C STG TSOLD Lead soldering temperature (10 seconds) 300 ⋅C P Maximum power dissipation
dem Screenshot ziemlich gut erkennen kann Im Trace sieht man mehrere Gruppen von CAN-IDs: - `0C2h, 0C3h, 0C1h` - `102h, 103h, 101h` - `142h, 143h, 141h` - `182h, 183h, 181h` - `1C2h, 1C3h, 1C1h` - `382h, 383h, 381h` - `4C3h` - `6C1h, 6C2h, 6C3h` - `085h, 202h, 242h, 282h` Das sieht **sehr stark nach einem zyklischen Multi-Frame-Schema pro Batterie-String/Modul** aus: - Suffix `1/2/3` könnte auf **drei Slaves / drei Packs / drei Module** hindeuten. - Die Blöcke `0x100`, `0x140`, `0x180`, `0x1C0` scheinen je Pack unterschiedliche Signalgruppen zu übertragen
dieAkkuspannung >11,2V ist. DerAdapter sollte aber auf einem Kühlblech montiert werden) • ANKER USB C auf USB C Kabel, 240W USB C Kabel, USB C Ladekabel 90cm lang Hinweis: Das Oszi zieht kurzzeitig bis zu 45W, im normalen Betrieb 39W, nur bestimmte PD- Modi (z.B. 15V, 3A) - nicht jedes USB-C Gadget kann
/* Ledspiellib (c) 2025-2026 by Malte Marwedel SPDX-License-Identifier: BSD-3-Clause Some things to consider: g_matrixBuffer and g_lineDriver must be in SRAM1 or SRAM2, not in CCM RAM. The GPIOs are AHB1 peripherals -
eigene Stringlesefunktion, verwendet NICHT die Klasse String und hat dann als "Regelverstoß" Arduino einen Mischmasch aus C, C++ und Arduinoeigenheiten (weil klassischerweise ein char stringbuffer[maxlen] verwendet wird). Der Eventhandler liest immer nur
für Arduino immer größer > werden). Ähh.... Du hast eine rege Fantasie! Keiner sagt, dass du String verwenden musst. Du kannst durchaus deine heiß geliebten C-Strings verwenden. In Arduino kannst du alles verwenden, was in C/C++ ASM geht. Das schöne ist, dass String unendlich oft getestet
Über UART konnte ich herausfinden wo ihm der Schuh drückt. Das ist mein Gespräch mit ihm: [c] . Format: Log Type - Time(microsec) - Message - Optional Info Log Type: B - Since Boot(Power On Reset), D - Delta, S - Statistic S - QC_IMAGE_VERSION_STRING=AVM_BOOT.BF.3.1.1 S - IMAGE_VARIANT_STRING
14117 - boot_config_data_table_init, Delta - (419 Bytes) B - 503556 - clock_init, Start [/c] Wenn ich das richtig deute kann er den internen Takt nicht umschalten? Sehe ich das richtig?
den Quellcode zu betrachten und auch bedingte Kompilierung einzufügen und mehr Textausgaben und ein C-Buch, also suche welche Ports I2C und UART nutzen und stelle fest wer wann was verwendet und wer was verwenden kann! nur als Anregung zum selberlernen [c] #if defined(__AVR_ATmega1284P__)
resource/en/datasheet/stm32g070cb.pdf Auf Seite 36 bei PA9 und PA10 bei alternativen Funktionen: - I2C1_SCL - I2C1_SDA