-
Thread
Led panel direkt ansteuern
Da ist ein 100V Elko drauf, kann ein Hochsetzsteller sein, LED String läuft also bei mehr als 19V. Wenn der Platinenteil von 16851847104786528712691841079671.jpg jetzt auch noch scharf wäre, dann könnte man vllt mehr sagen
auch die Spannungen von Pin 6 und 12, gegen GND. Uuuund dann auch noch die Spannung am Pluspol von C809. Das werden mehr als 19V sein. Da es ein 100V Typ ist sind das vielleicht so 60-80V. Edit: Also im Moment alle Spannungen jeweils gegen GND messen.
-
Thread
sscanf liest ersten parameter nicht
%u ist unsigned int. Für uint16_t brauchst du so etwas: [c]#include <inttypes.h> sscanf(&buffer[10], "%"PRIU16" %"PRIU16" %f", &...);[/c]
, ¶meter); } [/c] lässt man das h weg, dann schreibt sscanf Variablen auf dem Stack kaputt.
-
Thread
[S] Aktuelles Multimeter mit serieller Schnittstelle
vermute, dass Du damit meinst, dass das Multimeter seine Daten in Form eines menschenlesbaren ASCII-Strings über die serielle Schnittstelle schicken soll, also z.B. direkt als "-45.3 mV DC\n". Bei den allermeisten Multimetern mit PC-Schnittstelle ist das m.W.n. aber nicht so. Die sind von PC-Seite aus
seriellen Terminalprogramm. Aber sie senden ihre Daten nicht als unmittelbar menschenlesbaren ASCII-String, sondern als binär kodierte Daten, die daher erst noch kurz geparst werden müssen. Weit verbreitet ist dabei m.W.n. eine Kodierung, bei der jedes Segment des LCD-Displays als genau ein Bit übertragen
-
Thread
Wie werden dyn. Libraries eingebunden?
objects named in LIST as auditors --preload LIST preload objects named in LIST --argv0 STRING set argv[0] to STRING before running --list-tunables list all tunables with minimum and maximum values --list-diagnostics list diagnostics information --help
result); // Dynamische Bibliothek entladen dlclose(library_handle); return 0; } [/c]
-
Thread
Strings konkattinieren
& to_string(c_MyValue); wait; end process; [/vhdl]
World "; wait for 10 ns; v_MyString := v_MyString(to_string(c_MyValue)'Length + 1 to 1024) & to_string(c_MyValue); wait for 10 ns; report v_MyString; wait; end process;[/vhdl] Simuliert wunderprächtigst. Der String
-
Thread
/dev/ttyUSB0 oder doch 1 ?
Adapter handelt, geht unter Linux und auch beim Raspi dies: https://wiki.fhem.de/wiki/Mehrere_USB-Ger%C3%A4te_einbinden
If lsusb > " " Then port = "ttyUSB1" Endif End Public Sub testit_Click() Dim part1 As String Dim middle As String Dim rest As String Dim execute As String Dim lastt As String part1 = "/home/derboss/Dokumente/relais -d /dev/" middle = port rest = " -S" lastt = "Wait" execute = part1
-
Thread
RISC-V reset handler Probleme
Handler ist hier: https://github.com/openwch/ch32v307/blob/main/EVT/EXAM/SRC/Startup/startup_ch32v30x_D8C.S#L348-L358 Wenn ich Zeile 355 (sw t0, (a1)) auskommentiere, läuft die Applikation prinzipiell wieder (wenn auch nicht ganz korrekt. [c] 0x0000000020000000 PROVIDE (_data_vma =
[/c] Was macht das AT>FLASH (vor allem bei RAM)?
-
Thread
Zahl umdrehen?
, 0x88, 0x48, 0xC8, 0x28, 0xA8, 0x68, 0xE8, 0x18, 0x98, 0x58, 0xD8, 0x38, 0xB8, 0x78, 0xF8, 0x04, 0x84, 0x44, 0xC4, 0x24, 0xA4, 0x64, 0xE4, 0x14, 0x94, 0x54, 0xD4, 0x34, 0xB4, 0x74, 0xF4, 0x0C, 0x8C, 0x4C, 0xCC, 0x2C, 0xAC, 0x6C, 0xEC, 0x1C, 0x9C, 0x5C, 0xDC, 0x3C, 0xBC, 0x7C, 0xFC, 0x02, 0x82, 0x42, 0xC2, 0x22, 0xA2, 0x62, 0xE2, 0x12, 0x92, 0x52, 0xD2, 0x32, 0xB2, 0x72, 0xF2, 0x0A, 0x8A, 0x4A, 0xCA,
-
Thread
(Anfänger)probleme mit PlatformIO (mit VSC)
_t)': .pio/libdeps/generic_esp32c3/MySQL Connector Arduino/src/MySQL_Encrypt_Sha1.cpp:89:1: error: no return statement in function returning non-void [-Werror=return-type] } ^ .pio/libdeps/generic_esp32c3/MySQL Connector Arduino
schrieb im Beitrag #7416110: > output truncated before terminating nul copying 4 bytes > from a string of the same length [-Werror=stringop-truncation] > strncpy(str, "NULL", 4); Ist zwar ein Fehler, aber der Entwickler hat ihn in der darauf folgenden Zeile repariert: [c] strncpy(str,
-
Thread
CRC Prüfsumme für BMS
Steht doch in deiner PDF: Seite 4, Abschnitt 1.3 [c] Adopted CRC parameter model CRC-16/MODBUS Polynomial formula x16+x15+x2+1 Width 16 Polynomial 0x8005 Initial value 0xFFFF Result XOR value 0x0000 Input value inversion true Output value inversion true [/c] Getestet und wie im Bild zu sehen, tut.
-
Thread
AES 128 CBC FIPS 197 entschlüsseln
dass aesKey.getBytes(StandardCharsets.UTF_8) > korrekt sein kann: entweder ist der Key ein Hex-String, dann muß der > nach Binary konvertiert werden, oder er ist bereits Binary, dann ist das > UTF_8 verkehrt. Deine Aussage mit dem Chaining versüßt mir den Tag. U.a. habe ich auch in C++ die AES
0182086EB800C2086E340002FD170000 [/code] Du mußt in Deinem Java Code die richtige Repräsentation der Bytes beachten, z.B. der Hex-String "ABCD" ist etwas anderes als die beiden Bytes 0xAB 0xCD.
-
Thread
ESP32C3 Arduino Bluetooth keine Reaktion
Serial.print("Failed to find our characteristic UUID: "); Serial.println(NOTIFY_UUID.toString().c_str()); pClient->disconnect(); return false; } Serial.println(" - Found our characteristic"); /* Read the value of the characteristic */ if(pRemoteNotifyCharacteristic->canRead()) { std::string value = pRemoteNotifyCharacteristic->readValue(); Serial.print("The characteristic value was: "); Serial.println(value.c_str()); } if(pRemoteNotifyCharacteristic->canNotify())
-
Thread
ein Stück Code funktioniert nicht
display.update(); // hiermit wird die neue Display-konfiguration auf das Display geschrieben [/c]
); display.fillCircle(30, 98, 10, GxEPD_BLACK); } [/c] Edit: zu spät 😄
-
Thread
gcc (mingw) statisch kompilieren
Liebes Forum, ich nutze gcc (mingw) auf einem Windows-10-PC. Ich habe ein C-Programm mit #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <windows.h> #include <math.h> geschrieben. Das "exe" soll auf anderen Windows-PCs
Vielen Dank für die Antworten. Auch der Aufruf gcc -static-libgcc -static-libstdc++ blabla.c -o blabla.exe ändert nicht die Größe der Datei blabla.exe gegenüber gcc blabla.c -o blabla.exe Viele Grüße, Alexander
-
Thread
Solar LED Lichtkette mit H Schaltung?
leuchtet deutlich schwächer als eine neuere mit Netzteil. Die Schaltung mit dem Solar war sehr simpel, μC, Spule, Transistor oder H-Brücke weiß ich nicht mehr so genau, jedenfalls sehr wenig Teile. Der Akku wurde kaum geladen obwohl die Solarzelle 40 mA geliefert hat, da habe ich auf Versorgung durch Netzteil
hatte ich hier geklaut: https://www.hackster.io/daniel232/arduino-controlled-power-supply-for-led-string-lights-72ba6b Hat wunderbar funktioniert und ich wollte eigentlich noch eine Musiksteuerung mit dem Arduino realisieren (z.B. Wechselblinken im Takt). Ich habe dazu auch schon ein MSGEQ7-Modul gekauft
-
Thread
[AVR] Modulo funktioniert nicht richtig
uint8 count = toDigits(number, digits); for (uint8 i = count; i > 0; i--) { printf("%c", '0'+ digits[i-1]); } printf("\n"); }[/c]Die printf Ausgabe ist nur zu Kontrolle, auf einem µC versuche ich printf bzw. sprintf zu vermeiden.
Spaß, das Rad immer wieder neu zu erfinden, aber Umwandlung in Dezimalstring gibt's doch schon: [c] #include <stdint.h> #include <stdlib.h> void ausgabe_string (const char*); void ausgabe_u16 (uint16_t n) { static char str[6]; ausgabe_string (utoa (n, str, 10)); } int main (
-
Thread
Linux Mint 21.1: Rechter Klick nur noch umständlich möglich
gerade mal mit ›man xinput‹ versucht. Es ist wirklich erstaunlich was man da alles lesen kann: [c]When xinput should modify an existing driver property value, it is sufficient to provide the device name and property name as string, followed by the new value(s) of the property. For example:
gerade mal mit ›man xinput‹ versucht. > Es ist wirklich erstaunlich was man da alles lesen kann: > [c]When xinput should modify an existing driver property value, > it is sufficient to provide the device name and property name as string, > followed by the new value(s) of the property. For example
-
Thread
Python: pySerial Lese-Fehler unter Win10
hinbekommen muss ist die richtige Formatierung der Antwort. [c] result = s.ReadTo(b'\x06\x3b\x03'.decode()) time.sleep(0.1) s.Close() #result = result.encode('utf-8') print("Header:") print(result[:29])[/c] Dies ist ein Auszug vom Python-Skript. So
die Daten in eine Datei schreiben und bisher hat die Schreibe-Funktion ein Fehler geworfen, da der String irgendwelche nicht plausiblen Zeichen enthält. Z.B.: [code] newFile.write(image_data) File "C:\Program Files\Python310\lib\encodings\cp1252.py", line 19, in encode return codecs.charmap_encode
-
Thread
Suche Programmgerüst: USB-Kommunikation und Daten Ein/Ausgabe Windows
[/c] und schiebe die Daten in die Oberflaeche: [c] private delegate void LineReceivedEvent(string line); private void LineReceived(string line) { textBox1.AppendText(line + "\r\n"); } [/c] Wenn der Arduino/uC auch Daten bekommen soll: [c] private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { serialPort1.Write(e.KeyChar.ToString()); } [/c] Das war's. Noch
-
Thread
STM32 NUCLEO H743ZI - Ethernet / WebServer-Probleme
hey Frank, danke für die Rückmeldung! - das EK-TM4C1294XL klingt echt gut. Und sieht auch gut aus ;-) nuttx sagt u.a.: tm4c129e-launchpad:ostest tm4c129e-launchpad:nsh tm4c129e-launchpad:ipv6 Ich werde das mal ausprobieren. Verlöten
. Das ist ein TM4C129E, kein TM4C1294. Der 129E hat noch eine Cryptoeinheit. Dafür brauchst Du dann das passende Lauchpad EK-TM4C129EXL. https://www.ti.com/tool/EK-TM4C129EXL > Mit dem PICs hatte ich vor Jahren mal
-
Thread
STM32WB5MMG -* ADC wackelt um 10 digits
= ssd1306_WriteString("NTC1 = ", Font_7x10, White); retVal = ssd1306_WriteString(Testtext, Font_7x10, White); [/c]
im Beitrag #7402989: > Weiterhin kommt die Versorgungsspannung der NTC`s aus einem Ausgang des > uC. > Es soll halt alles möglichst wenig Strom verbrauchen, weshalb ich alles > abschalte und nur zeitweise prüfe. Wieviel Leitung ist denn zw. NTC und µC? Mache doch mal einen C an den ADC-Eingang
-
Thread
C - linux - raw-socket - recvfrom liefert daten wo keine sein sollten
interfaces. dabei war ich mir sicher, dass es mit "bind" schon mal funktioniert hatte beim testen. [c] #include <stdbool.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <stdio.h> #include <string.h> #include <sys/ioctl.h> #include <sys/socket.h> #include
dann wird auch wieder jedes interace geliefert. nun bin ich nur mal gespannt, ob das hier mit c-tags im posting funktioniert..... [C] #include <stdbool.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <stdio.h> #include <string.h> #include
-
Thread
Excel VBA - Wert in Hex mit führenden Nullen
zufriedenstellend wäre. 2) Wenn ich in dem Excel Dokument ohne VBA das versuche, kann ich das nutzen, z.B.: [c] =DEZINHEX(10;2) [/c] Das ergibt 2 Stellen. Geht das in der VBA Programmierung etwa nicht?
. Hab aber grad wohl was gefunden. Konvertierungsfunktionen heißen da wohl anders. z.B.: String -> HEX [c] Dim str As String Dim x As Byte str = Cells(3, zelle + 6).Value x = CByte("&H" & str) [/c] Aber nun läuft alles.
-
Thread
Einstellungen im Programm speichern
JSON machen, da es auch plattformübergreifend > (UTF-8) ist. Da gibt es bestimmt auch Libraries für C++ und Linux, > falls du mit Linux arbeitest. Mann muss dann einfach daran denken, dass man Binärdaten dann vorher z.B. base64 Kodiert / Dekodiert. Und in C kann man Strings mit beliebigen Byte folgen haben, z.B. [c] const char mymessage[] = "Hello\xFFWorld"; [/c] Wenn man das direkt als JSON String speichert, ist das \xFF kein gültiges Zeichen. Vielleicht ist der Encoder noch so clever, es wenigstens durch den
-
Thread
ESP8266 -> shelly3em Programmierhilfe?
delay(300000); // execute once every 5 minutes, don't flood remote service } wait = true; } [/c]
rumprobieren immerhin bis zu einer "Verbindung" gebracht, wobei mein größtes Hindernis die Syntax von "C" ist. Wie sieht denn deine Lösung aus? Gruß Helle
-
Thread
wxWidgets eigenes Event wird nicht behandelt
SetSizerAndFit(layoutMain); Bind(CUSTOMEVENT_SERIAL2, [this](wxCommandEvent& event) { std::string s("C998\n"); recv.send(s.c_str(), s.length()); }); Bind(wxEVT_BUTTON, &MainWindow::onButton, this); } void MainWindow::onButton(wxCommandEvent& event) { wxCommandEvent evt2(this
-
Thread
Nullen von float Wert ermitteln
Justin S. schrieb im Beitrag #7397411: > Und Wandlung in einen String ist ebenfalls "heftige Kost" Wenn aber (aus welchen nicht nachvollziehbaren Gründen auch immer) die Anzahl der Nullen in genau diesem String interessant ist z.B. weil da steht [c] printf("Die Zahl %f enthält %d Nullen", f, n); [/c] dann bleibt einem nichts andere übrig, als genau die Nullen in genau diesem String zu zählen...
-
Thread
Hilfestellung LCD Display
LCD registers to LE domain */ LCD_SyncStart(false, lcdLoadAddrNone); LCD_LoadBusyWait(); } [/c]
ist ja auch eine Ziffer Fang von hinten an. Belege Deinen Ausgangspuffer mit Space vor. [c] #define DIGITS 10 char lcdbuffer[DIGITS]; memset(lcdbuffer, ' ', DIGITS); [/c] Dann interiere von hinten nach vorne [c] int p=DIGITS-1; int d; while((val)&&(p>=0)) { d=val%10; val
-
Thread
ESP32 an Fritzbox von außen steuern. Möglich?
da. Kann ich mit Aufruf: https://kryptischesZeug.myfritz.netz/zeigedaten Serverhandle: [c] HTTPClient http; Serial.print("HTTP GET request to "); Serial.println(serverName); http.begin(serverName); String payload = http.getString(); if (payload.indexOf("zeigedaten
den Loop packt mit WifiServer Abfragen ist wumpe. ESPAsyncWebServer ist etwas komplizierter, weil C++ Strukturen verwendet werden aber eleganter. [c] #define PARAM_MESSAGE "zeigedaten" server.on("/get", HTTP_GET, [] (AsyncWebServerRequest *request) { String message; if
-
Thread
Serial.write durch Serial.print ersetzen. AVR Kompilierungsfehler function
HEX); digitalWrite(41, HIGH); } } addressCounter++; } [/c] In function 'void loop()': 49:33: error: no matching function for call to 'print(byte [1], int)' Serial.print(readWord, HEX); Print.h:66:12: note: candidate: size_t Print::print(const String
readWord ist ein array (warum?), daher: [c] Serial.print(readWord[0], HEX); [/c]
-
Thread
ATMEGA UART Empfang mit Verzögerung
ist { } UDR0 = Zeichen; // Zeichen senden. return 0; } void UART0_String_senden (char *String) { while (*String) // Bis String '\0' erreicht. { uart0_putc(*String); String++; _delay_ms(1); } } [/c
recht im RXC-Interrupt wird an der Datenrichtung des Tranceivers NICHT rumgefummelt! Etwa so. [c] void uart0_puts (char *String) { RS485_TX_EN; while (*String) { uart0_putc(*String); // String bis zum '\0' rausschreiben. String++; } UCSR0A = 1<<TCX0;
-
Thread
OpenAI als OCR-"Nachbrenner"? Kosten?
voneinander zu trennen. Oder wenn Du eine ausführbare Datei (Maschinencode) hast und aus diesem wieder C-Code generieren willst.
zu trennen. > Oder wenn Du eine ausführbare Datei (Maschinencode) hast und aus diesem > wieder C-Code generieren willst. ;-)
-
Thread
Neues USBTMC Digitalmultimeter via RS232 Terminalprg. noch lesbar, wie früher?
direkt oder via Virtual Com Port VCP auch über ein USB Kabel auslesen. Nur ein kleinen "SCPI" ASCII String via Terminalprogramm geschickt und schon kam die Antwort mit 115200 Baud. Mit jedem einfachem 8-bit Mikrocontroller mit UART oder via FTDI und Co ging das so auch ganz super. Aber mein neues hoch angepriesenes
Keysight 34461A) hat nun wohl nur noch dieses "USBTMC" und versperrt mir meine "alte Arbeitsweise" via µC oder Terminalprogramm. Fehlkauf ? oder gibt es die schöne einfache und billige VCP Schnittstelle noch irgendwo im Gerät doch noch und muss nur aktiviert werden. Wie kann man unkompliziert das neue DMM
-
Thread
[c] Suche Allocator, bei dem man den Anfang eines reservierten Bereichs ermitteln kann
Da deine Strings anscheinen zu C-Strings kompatibel sein sollen, kannst du eh nur Unterreferenzen auf Endbereiche des Originalstrings erstellen - echte Substrings (von-bis) gehen nicht, da denen die \0 fehlen würde
Wie schon gesagt, ich habe viele String typen. Wenn du in example.c im ersten Beitrag schaust (https://www.mikrocontroller.net/attachment/highlight/595363), dort habe ich ein struct für die Strings mit länge, pointer, (der auch nicht unbedingt