-
Thread
Mjpeg multipart streaming. Wie geht das?
mit den funktionen machen: [code] void send(int code, const char* content_type = NULL, const String& content = String("")); void send(int code, char* content_type, const String& content); void send(int code, const String& content_type, const String& content); void send(int code, const char
char* content); void setContentLength(const size_t contentLength); void sendHeader(const String& name, const String& value, bool first = false); void sendContent(const String& content); void sendContent(const char* content, size_t contentLength); [/code] Grund is httpd erlaubt mir keine
-
Thread
unsigned int zu ASCII mit weniger als 18 div or mod or mul
} } *s++=j+(uint8_t)zahl; // letzte Stelle immer ausgeben *s = '\0'; // string abschliessen } [/c] Aus https://dse-faq.elektronik-kompendium.de/dse-faq.htm
schrieb im Beitrag #7624123: > Aber da dieses vermutlich Jahrzehnte alte Problem schon längst in C > gelöst zu schein scheint Der erfahrene C-Progger nimmt dafür itoa, sprintf usw.. Sich selber was basteln macht man nur als Programmieranfänger. Hier mal was aus meinen Anfängen: [c] u8 valout
-
Thread
Arduino, Serial und 'spezial Tasten', wie?
{ uint8_t char_counter = 1; uint8_t c; for (;;) { while (Serial.available() > 0) { Serial.print("Daten verfügbar : "); c = Serial.read(); Serial.println("[ 0x" + String(c, HEX) + String(" ], d") + String(c) + String(", ") + String((char)c)); } } } [/c] Kleine Bemerkung: Ich möchte nicht 'Serial' neu programmieren (ISR usw.). Danke für Tipps und Hinweise.
-
Thread
Atmel Studio 7 keine Strings??
das Programm einfach nicht kompilieren. String, string, std::string sind alle keine gültigen Datentypen, obwohl ich [c]#include <string.h>[/c] nutze. Ich sitze schon etwas länger an dem Fehler und habe in der Zwischenzeit recht viel aus anderen Foren und Threads probiert. Auch [c]#include <string>[/c] funktioniert nicht. Die Library wird nicht gefunden, was ich erst einmal komisch finde, da string.h ja eigentlich eine c Library ist. Ich habe die alte toolchain auch schon durch
-
Thread
intel I210at auf einem SBC flashen.
hab echt schon ne menge versucht und komm einfach nicht weiter. Das tool läuft finde die IC. [c] NIC Bus Dev Fun Vendor-Device Branding string === === === === ============= ================================================= 1 1 00 00 8086-1531 Intel(R) I210 Blank NVM Device [/c]
meckert schon bei der 1 :D. Ist jetzt das Format das falsche? die hex datei sieht so aus: [c] 16E80002 00001541 038D0002 0B403C21 402F1411 34003611 1C605011 157B1A11 05844211 02804811 73431E19 0000001A 08100241 16D10002 00FF00A8 16D00002 5E000090 [/c] Alle INVM die ich so finden konnte
-
Thread
Problem mit ser. Monitor in for-Schleife
(DS18B20_Address, 1); Serial.print("\n\rSensor " + String(i+1)); Serial.print(":\t"); print_8bit_Array(DS18B20_Address); // i. Adresse Serial.print("\tSensorID:\t" + String(DS18B20.getUserData(DS18B20_Address))); // i. ID /* DS18B20
wenn, welche Alternative? Beschäftige Dich erst einmal mit den allereinfachsten Grundlagen von C/C++, bevor Du hier solch einen Schrottcode hinrotzt und selbst bei einem direkten Hinweis auf einen schweren Fehler völlig ahnungslos tust.
-
Thread
Empfehlung NAS
wurde neulich in einer c't uplink Folge besprochen. vielleicht gibt dir das paar Denkanstöße und Hilfen https://www.heise.de/news/Netzwerkspeicher-NAS-Kiste-vs-Selbstbauserver-c-t-uplink-9615949.html
unterschiedliche SSDs von unterschiedlichen Herstellern als RaidZ2 verschaltet. Offline Backups über USB-C sind sowieso Pflicht... 73
-
Thread
Widerstände und Voltmeter (Physikolympiade)
nicht mehr als die Grundrechenarten aus der Grundschule. Ob DU das kannst, scheint zweifelhaft, uC.net ist kein Hausaufgabenforum.
rechenzeitintensive Division kommt im Code übrigens gar nicht vor. oder in meinem Fall eben _geteilt durch_ 16 [c]drain+=cur*vbat; power=drain>>4;[/c] mit dieser "Erkenntis" nun einfach mal Post #1 lesen: https://www.mikrocontroller.net/topic/565250 Wie gesagt alles Off-topic in diesem Thread, daher werde
-
Thread
Mit Wire.h über I2C auf LCD-Display 1602 zugreifen
[c] #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C address 0x27, 16 column and 2 rows void setup() { lcd.init(); // initialize the lcd lcd.backlight(); } [/c]
> String Version = "V 2015-11-13 01"; LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); lcd.begin(16,2); // initialize the lcd // Cursor Position: CHAR, LINE) start at 0 lcd.setCursor(
-
Thread
ATtiny85 I²C Slave übernimmt empfangenen Wert nicht.
data in the buffer on stop. */ TinyWireS_stop_check(); analogWrite(1, pwm); } [/c] ESP : [c] int pwm = 0; void setup() { Serial.begin(115200); /* begin serial for debug */ Wire.begin(); /* join i2c bus with SDA=D1 and SCL=D2 of NodeMCU */ } void loop() { if(pwm
es sein, dass hier der erwartete pwm-Wert verschluckt wird? Das läuft mit attiny85 problemlos: [c] #include <Wire.h> ... void receiveEvent(int howMany) { if (howMany == 0) return; char c = Wire.read(); if (c == 'S') ... [/c]
-
Thread
Alte 6502/Z80-Systeme:Ohne CPU betreibbar zum Batterie-RAM Auslesen?
bloß 1024 halbe Bytes sind, die man zur Not mit 10 Kippschaltern und 4 LED auslesen kann. Aus den C64-Heften früher haben wir längere Hex-Listings abgetippt. :)
Datenblatt zu dem RAM µPD444: https://www.datasheetarchive.com/datasheet?id=1073198b21e4073cc0c21c3b93d95c162a3ed6&type=M&term=upd4441 Hat die Batterie noch genug Spannung? Das ist zum Glück kein NVRAM. So eines habe ich mal aufgefräst und eine externe Batterie angelötet. Das war in einer SMD-Lötstation
-
Thread
Frage zu time_t usw.
Arbeite die Anfängerübungen in Deinem C Buch für struct durch, dann lernst Du wie auf die Elemente von struct tm zugegriffen werden kann.
nicht Der Sinn von Doku besteht darin, diesem Zustand abzuhelfen. https://www.tutorialspoint.com/c_standard_library/c_function_localtime.htm
-
Thread
STM32 USARt3 DMA Rx kopiert keine Daten
aber nur '\0' zu sehen. Ein Zeichen klassisch ohne DMA zu lesen mittels folgendem funktioniert: [c] while (!(oConfig.oUSART->SR & USART_SR_RXNE)); return oConfig.oUSART->DR; [/c] Hier ein paar Code Ausschnitte: USART Initialisierung: [c] memset(buf_rx, 0, BUFFER_SIZE); DMA1->
enable(oHardware.oPort[0].getEnable() ? false : true); t.StartMs(1000); String s = "ADC: "; s += oHardware.oPort[0].getVoltage(); s += "mV\r\n"; oHardware.oPort[0].send(s.c_str()); } } [/c]
-
Thread
ESP8266_PC817C_RaspberryPi
verbinden. Dies klappt so mal gar nicht. - die zweite Schaltung D1 und GND auf Pin1 und Pin2 des 817C, GND RPi und RUN RPi auf Pin3 und Pin4 des 817C. ESP, 817C und RPi sind natürlich alle mit der gleichen 5V und GND Schiene verbunden. Funktioniert ebenfalls nicht. Der Tipp mit dem Optokoppler
auch Deinen Aufbau, aber so dass man etwas erkennen kann. > D1 und GND auf Pin1 und Pin2 des 817C, GND RPi und RUN RPi auf > Pin3 und Pin4 des 817C. Der PC817C benötigt einen Vorwiderstand auf der Eingangsseite. Der „Ausgang“ des PC817 liefert keine Spannung, das fehlt scheinbar ein Pullup
-
Thread
NodeMCU ESP8266 PWM-Signal Motor
3fffff00: 40202cf1 00000001 00000020 40100a10 18:04:58.894 -> 3fffff10: 40203038 00000001 0000001c 40202f5e 18:04:58.894 -> 3fffff20: 3fffff70 40c846c0 00000004 bcc8c000 18:04:58.894 -> 3fffff30: 40105e05 00003e9f 2faecded af060000 18:04:58.894 -> 3fffff40: 40105eb2 3ffee458 00003e9f 00000000
core/timeouts.c line 241 0x40201047: updatePWM() at C:\Users\alex\Documents\Arduino\OhneFehler/OhneFehler.ino line 54 0x402014f4: Ticker::_static_callback() at C:\Users\alex\AppData\Local\Arduino15\packages\esp8266
-
Thread
Rückgabewerte von va_list auf einem Arduino Mega2560
4711); Warum schreibst Du nicht einfach C++: [c] String str = (String) "MOD RangeErr in " + ZeilenNr + ": " + MOD_ix + " " + 4711; Serial.write(str); // oder irgendeine andere Ausgabefunktion [/c] Du kannst auch auf die Variable str
vom Gleichheitszeichen direkt Deiner Ausgabefunktion übergeben - vorausgesetzt, sie kann mit einem C++-String als Argument umgehen. Notfalls, wenn Du wirklich noch mit "char *" arbeitest, musst Du den C++-String in einen C-String zurückwandeln.
-
Thread
KiCad 8 - Released
Wenn du dir sicher bist, dass du nichts neues verwendest, kannst du einfach im file-header einen String anpassen, dann geht's mit v7 wieder auf. 73
auf OS/2 nutzt und meine Libreoffice Sachen nicht lesen kann? Was ist mit denen die noch auf einen C64 schwören? Wer sich Updates verweigert ob HW oder SW, muß mit den Konsequenzen leben. Seine Entscheidung, nicht mein Problem.
-
Thread
Nil slice in golang
stellen. Heute hat ein Kollege einen Bug in meinem Code gefunden, den man so reproduzieren kann: [c] package main import "fmt" func main() { productData := []string{"A", "B", "C"} oldData := &productData productData = nil fmt.Printf("productData=%v, oldData=%v \n", productData,
string{"A", "B", "C"} oldData := &productData productData = nil [/c] wird productData leer gemacht (auf den Wert des leeren nil slice gesetzt). Ich werde mich daran gewöhnen.
-
Thread
jpeg mit html und buttons
Habe das so gemacht: [code] String act_ip; // in setup act_ip = WiFi.localIP().toString().c_str(); // commandhandler out += "<img src=\"http://" + act_ip + ":81/stream\">\n"; [/code] Ich hab ein gefährt dass sich über http
benutzen habe ich so ein Snippet: [code] var ip = location.host; [/code] Ich hab [code] String act_ip; act_ip = WiFi.localIP().toString().c_str(); Serial.println(act_ip); [/code] deins ist einfacher, TY.
-
Thread
exFAT mit "-t msdos" mounten?
do something ... end [/code] FName ist der aus dem Filesystem ausgelesene Dateiname. Für C sind mir derartige Funktionen nicht bekannt, da muß man wohl selbst Hand ananlegen und sich was Eigenes schreiben. Ein Lösungsansatz wäre hier https://stackoverflow.com/questions/5820810/case-insensitive-string-comparison-in-c
} else { unix[u1] = *vfat; } } unix[u1] = '\0'; return unix; }[/c]
-
Thread
C Frage zu Array Initialisierung mit Festtext
fast ausschließlich auf dem C++ Schiffchen fahre.
gehen, glaube ich, zumindest ab C++20: [code] struct sub_t { uint8_t a : 5 = 0; uint8_t b : 3 = 0; }; [/code] Kann sein, dass du dafür -std=c++20 mitgeben musst.
-
Thread
USB DJ Controller (MIDI + AudioInterface)
2 verschiedene Geräte. z.B. ich hab hier ein DJ-Controller von Numark liegen, darauf ist ein CY8C3246LTI-uC verbaut und dazu zwei PCM5101A Aktuell trete ich ein wenig auf der Stelle zu Option 2. - Umsetzbar mit moderatem Zeitaufwand Ja/Nein? - welcher Controller könnte Sinn machen? (STM?) -
Danke für dein Antwort. Naja, was UART per USB übersteigt ist Neuland für mich. Die uC-Frage kam in erster Linie, da ich bisher nur die klassischen ATMega's und den RP2040 nutze. Und die scheiden ja wegen fehlendem I2S aus. => Heißt eigentlich ist es egal. Im Idealfall ist die IDE kostenlos
-
Thread
SATA Hotplugging auf Linux Mint 21
Nein: [pre] description: Desktop Computer product: Z690 AORUS ELITE DDR4 (Default string) vendor: Gigabyte Technology Co., Ltd. version: Default string serial: Default string width: 64 bits capabilities: smbios-3.5.0 dmi-3.5.0 smp vsyscall32 configuration: boot=normal chassis=desktop family=Z690 MB sku=Default string uuid=035e02d8-04d3-0532-8106-670700080009 description: CPU product: 12th Gen Intel(R) Core(TM) i5-12600T vendor: Intel Corp. physical id: 4e
-
Thread
Empfehlung Controllerboard mit Ethernet für MQTT/Modbus IP auf CAN/RS485
Leistungswerte werden aus einem JSON Objekt geparst. Wobei ich hier die einfache Variante mache, JSON to String, und dann nochmal einen Teilstring (Die Stelle wo die Leistungsdaten stehen) extrahieren. Ich arbeite also nicht wirklich mit dem Objekt. Dann werden die extrahierten Daten fortlaufend im Klartext
Verbindungen wie über's IP-Netz übertragen werden. Daneben gibt es auch noch diverse Alternativen, wie I2C, I2S, SPI, OneWire, M-Bus, E-Bus, Seriell-Analog, Seriell Synchron, usw, usw. Lora, RF433, InfraRot. Der Punkt ist immer, dass es auch das passende Gegenstück (Sender/Empfänger) braucht. Bei CAN würde
-
Artikel
Und noch 'ne Nixie-Uhr
bietet (FTDI, CP210x, PL2303). Ich habe ein PL2303-Modul genommen. Real Time Clock. Das RTC-Modul, „I2C RTC DS1307 AT24C32 Real Time Clock Modul“, ist die eigentliche Uhr. Der Chip darauf ist der DS1307 von Dallas Semiconductor, er hat Uhrzeit, Datum und 56 Byte RAM. Als Zugabe ist auf dem Modul noch ein EEPROM AT24C32 mit 32K Byte. Der DS1307 wird mit einer Batterie gepuffert, womit die Uhr bei Spannungsausfall weiter läuft. Das Modul wird über die I2C-Schnittstelle angesprochen. Die für die I2C-Schnittstelle notwendigen
-
Thread
Gute 3D CAD-Software für Privatanwender gesucht
schrieb im Beitrag #7600632: > OpenSCAD Kann ich damit die erstellten Modelle ind DXF, STP oder C4D exportieren?
/ und hat ein super Forum .... https://forum.freecad.org/viewforum.php?f=13&sid=f39009bf9602247c2cbc4519f4ebaf5c meine Sicht der Dinge ;-)
-
Thread
Raspi Pi Pico schnell genug um 4Mhz Z80 zu sniffen?
https://www.amazon.de/FREENOVE-Breakout-Raspberry-Terminal-Shield/dp/B0BFB53Y2N/ref=sr_1_2?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=2GT6U15SYQ77K&keywords=Breakout+Board+f%C3%BCr+Raspberry+Pi+Pico&qid=1707560588&sprefix=breakout+board+f%C3%BCr+raspberry+pi+pico%2Caps%2C77&sr=8-2
dort nicht in C, sondern in Asm passieren. Nur ist es dort halt das Asm der PIOs, nicht AVR-Asm. Merke: C ist nicht dafür gedacht, exakte Timings zu generieren. Das war nie der Plan.
-
Thread
Unbekannte Zahl in AT+ Antwort lesen und konvertieren
[c] int val; char str[64]; strcpy(str, usart1_buffer); val = atoi(str); [/c]
Ich kann zwar jetzt kein C, aber von der Logik her ist das doch einfach : - die Größe des Array abfragen - in einer Schleife bis zum vorletzten iterieren (letztes ist ja "\r") - in einem String aneinanderpappen Basic: s
-
Thread
Gebrauchte Festplatten kaufen.
> Bleche mit nem Heissluftgebläse erwärmen Neodymmagnete sollen bei Temperaturen > 80 oder 100 °C bereits irreversiblen Schaden nehmen.
Dergute W. schrieb im Beitrag #7605043: > cat /dev/sdd | strings -n 50 | less Useless use of cat. SCNR ;)