-
Thread
Arduino Mega2560 mit externem RAM: linker flag für .data section geht nicht
Beispiel von EAF, arrays die als Größe eine constexpr > haben Hmm, nee scheint nicht zu stimmen [c]uint32_t someInt; uint32_t someOtherInt = 213;[/c] landen im internen Speicher [c]char err_str[] = "Your program has died a horrible death!";[/c] auch nicht, obschon das das Beispiel von https
Ach so, noch vergessen: Wenn du das mit C-Buch durch hast, informier dich mal über AVR und Strings im Flash. Es könnte sein, daß du danach dein externes Ram gar nicht mehr brauchst. Oliver
-
Thread
Thermoducker - Density einstellen
Hermann Kokoschka schrieb im Beitrag #6923440: > Wurde hier eigentlich schon die String-Terminierung diskutiert? Wer redet denn von Strings? Wir sind bei einzelnen Bytes.
uint8_t density, uint8_t breakTime) { writeBytes(ASCII_DC2, '#', (density << 5) | breakTime); }[/c] und Aufruf: [c]setPrintDensity(uint8_t density=10, uint8_t breakTime=2)[/c] Verwirrend: density=10 --> 50% +(10 x 5%), soweit ok, aber dann schieben die einen uint8 mit Dezimalwert 10, b1010 um
-
Thread
Software Interrupt mit STM32
dafür zu doof, da muß man in Assembler mit einem Wrapper nachhelfen. Hier nur mal als Beispiel: [c] __swi(38) void V24_StrOut (char* P); /* String auf UART ausgeben */ [/c] Das geht beim Keil. Beim GCC braucht es etwa sowas: [c] .thumb_func .global V24_StrOut V24
W.S. schrieb im Beitrag #6922416: > Beim GCC braucht es etwa sowas: Oder sowas: [c] #define SWI(n) asm volatile ("svc %0" :: "i"(n)) [/c]
-
Thread
PAL-Röhren TV auf NTSC umbauen
27512 EPROM mit MCS51 Software kein Zuckerschlecken ist. Mein altes E-Auto hat das im Carcontroller (80C535) und das einzige, was man da recht bequem erkennt, sind die ASCII Strings. Ansonsten muss man sich mit DIS51 oder ähnlichem Werkzeug tagelang da durchquälen - und dann übersteigt der Aufwand schnell
3.810731125000000,I2C,0xC7 + NAK ... 3.810914812500000,I2C,Setup Read to [0x8B] + ACK 3.811104812500000,I2C,0x50 + ACK <--- POR (D7) == 0 (OK!) 3.811247500000000,I2C,0xC4 + ACK 3.811390250000000,I2C,0xC7 + NAK [/code
-
Thread
String über Serial Port senden bei falschem Passwort?
wenn man den PC startet) ein falsches Passwort eingibt, sendet der PC über einen Serial-Port einen String. Ist so etwas machbar? Bei einem "open source" Betriebssystem geht das sicher, aber ich meine bei Windows 10.
erwähnen sollen dass ich ein ziemlicher Anfänger bin was "PC Programmierung" angeht. Ich habe ein wenig C++ Erfahrung (einfache "Konsolen Anwendungen", ein bisschen GUI Zeugs mit dem Qt-Framework).
-
Thread
arduino esp32 32bit/64bit-problem
ja auch die "Projektdatei" der Arduino-IDE. Nein, das ist die Haupt Quelltext-Datei. Sie enthält C++ code.
Was das Debuggen auf einen Arduino angeht, da suche ich mir die Stelle und schreibe "log ("Wert a_string = "& A_string) . Starte das ganze und lese dann im Seriell-Monitor wenn das Prg an der Stelle ist a_string = "das ist ein Text" So einfach ist das. Und mehr als eine Variablen-Überwachung
-
Thread
Wie bestimmt ihr die Anforderungen eurer Projekte?
und Umsatz im vorherigen Monat. Das Dateiformat wird CSV sein, Spalten durch Komma getrennt, Strings in doppelte Anführungsstriche, Zeilenumbrüche im Unix Format. Der Dateiname ist "report_<yyyymmss>_<hhmmss>.csv", wobei der Zeitstempel angibt, wann die Datei erstellt wurde. Die Datei wird auf
Labornetzteil" würde das heißen dass man sich das "empfindlichste" Bauteil das man versorgen will raussucht (µC, FPGA, ...) und das Netzteil dann für die maximal zulässigen Werte anpasst.
-
Thread
ITOA ohne Division/Modulo
Hallo, ist es möglich eine Zahl (egal ob uint8,16,32) in einen ASCII-String zu wandeln ohne Division oder Modulo? Hintergrund, viele uC besitzen keinen dividierer und müssen das durch Zeitaufwendige Tricksereien bereitstellen. LG
} } *s++=j+(uint8_t)zahl; // letzte Stelle immer ausgeben *s = '\0'; // string abschliessen [/pre] weder zeitaufwändig noch getrickst, nur programmieren muss man können hier in C.
-
Thread
Interrupt TIMER1_CAPT wird nicht ausgelöst
{ cli(); percentage = (result / 1000.0) * 100; sprintf((char*)IntToString, "%d", percentage); for(int i = 0; DutyCycle[i] != '\0'; i++) USART_Transmit(DutyCycle[i]); for(int i = 0; IntToString[i] != '\0'; i++) USART_Transmit(IntToString[i]); USART_Transmit('%'); USART_Transmit('\r'); USART_Transmit('\n'); sei(); ready = 0; } //_delay_ms(500); } }[/c]
-
Thread
[C++] Was passiert mit globalen Variablen nach Programmausführung?
c) welches gute Buch liest man stattdessen?
https://en.cppreference.com/w/cpp/chrono/c/ctime
-
Thread
MSP430 Linker Error Segment CSTACK is too long
Wert DATA memory im linkerscript kleiner wird. Müsste doch eigentlich dann kleiner werden oder? [c] #pragma constseg = CONSTDATA __persistent struct data_t data; __persistent char buffer[100]; #pragma constseg = default [/c] [c] #pragma dataseg = DATASEGDATA __no_init struct data_t data; __no_init char buffer[200]; #pragma dataseg = default [/c]
-
Thread
Störungen der Übertragung bei 250kBaud durch zu kleine Bandbreite?
Hier mal ein Überblick über einen ganzen String
dem Spannungsregler des ESP8266 ... die 220µF sind also NACH dem MP2307DN. Der hat nur einen SMD-C unmittelbar am Ausgang, und der ESP-01 hat direkt am ESP8266EX einen SMD-C. Es gibt aber noch einen 220µF-Elko im Abstand von ca. 3cm.
-
Thread
Datenstrom auf Zeichenkette untersuchen
ich quasi permanent empfangen (aktuell ist mein Buffer 100 Byte groß) und dann in dem Buffer den String ZHE suchen. So stelle ich sicher das ich den Start-Punkt kenne und kann dann die Bytes 4-10 auswerten. Wie suche ich einen String in einem größerem String?
> Wie suche ich einen String in einem größerem String? Garnicht. Mach in deiner Empfangsroutine eine Statemachine: Wenn State=Anfang: If Zeichen=Z State=State2 Wenn State=State: If Zeichen=H State=State3 else State=Anfang
-
Thread
GPS LED Bargraph Monitor $GPGSV MTK3339 ATmega8 Assembler
verwenden. 200m, 100m, 20m, 2m, Und die vielleicht logarithmisch darstellen. Ich wuerde auch nicht die Strings in ein Datenfeld schreiben, sondern die Strings waehrend des Empfangs mit einer Zustandsmaschine auseinander nehmen. Aber eben... wo liegt das Problem ?
Pause übertragen werden. Purzel H. schrieb im Beitrag #6910617: > Ich wuerde auch nicht die Strings in ein Datenfeld schreiben, sondern > die Strings waehrend des Empfangs mit einer Zustandsmaschine auseinander > nehmen. Kann man machen. Allerdings muss man den Kram wegen der Checksummen-Überprüfung
-
Thread
USB 3.0 Stick Geschwindigkeit Problem
durften USB Sticks mal etwas warm werden, aber das sollte lange vorbei sein - und schon gar nicht mit 60°C.
space character was für eine Schlamperei. Die Spec erlaubt keine führenden Lehrzeichen bei den Strings. Der erste String sollte den Vendor angeben. Der Hersteller ist ja nicht " USB". > Language 0x0409 : "01014f300d361ac4902fdba ...." Der Seriennummer ist viel zu lang. Die MSC Spec begrenzt
-
Thread
smtplib? Mit Python Mail versenden
Daten server.starttls() server.login(senderEmail, "xJpPMUfWwOY") # Das Passwort text = msg.as_string() server.sendmail(senderEmail, empfangsEmail, text) server.quit() [/c] Das Prinzip funktioniert aber leider kommen die beim Cc die Mails nicht an. Es wird immder Bcc versand obwohl ich nicht
(a bare string will be treated as a list with > 1 address), and a message string.
-
Thread
(VB.net) Eigene Anwendung abstürzen lassen
Erkennung soll ja genau das Gemeine sein. Aber: Darum geht es nicht. Ab jetzt ist die Voraussetzung C#. Stack kann nicht überschrieben werden, weil es Assembler in C# nur mit Tricks und Adminrechten spielt.
ja genau das Gemeine sein. > > Aber: Darum geht es nicht. > > Ab jetzt ist die Voraussetzung C#. > > Stack kann nicht überschrieben werden, weil es Assembler in C# nur mit > Tricks und Adminrechten spielt. Wie schaut bei dir der C# Code aus um einen Debugger zu erkennen?
-
Thread
VS zeigt seltsames Verhalten auf unterschiedlichen Maschinen
eine Ausnahme verursacht. Quelle = xxx Stapelüberwachung: bei xxx.Funktionen.GetDatatable(String SQLstring) in C:\Users\xxx\source\repos\Project1\xxx\Funktionen.vb: Zeile119 bei xxx.FormUsr.ButtonOK_Click(Object sender, EventArgs e) in C:\Users\xxx\source\repos\Project1\V2013\FormUsr.vb: Zeile17
C. W. schrieb im Beitrag #6908041: > C:\Users\xxx\source\repos\Project1\xxx\Funktionen.vb: Zeile119 > bei xxx.FormUsr.ButtonOK_Click(Object sender, EventArgs e) in > C:\Users\xxx\source\repos\Project1
-
Thread
Schwachstelle in Java-Software (Bibliothek Log4j)
Beitrag #6908152: > Neben Minecraft ist auch Blender betroffen. Recht unwahrscheinlich, das ist C und Python.
aufgelistet bei (Github) SwitHak/20211210-TLP-WHITE_LOG4J.md: https://gist.github.com/SwitHak/b66db3a06c2955a9cb71a8718970c592
-
Thread
IR Empfänger mit Attiny85/45 funktioniert nie
soon */ Serial.print(F("A=0x")); Serial.print(aAddress, HEX); Serial.print(F(" C=0x")); Serial.print(aCommand, HEX); Serial.print(F(" R=")); Serial.print(isRepeat); Serial.println(); } [/c]
6 [/c] Und Takt 8MHz eingestellt, hat wieder nichts gebracht
-
Thread
Guten Logic-Analyzer für digitale Signale bis 75MHz
Oberwelle und so, entspricht aber dem, was die Kabel durchlassen). Zur Auswahl stehen: ZeroPLus LAP-C 16128 - 32 x 200Msps / Bandbreite ? kein Analog ? - Massenhaft Protokolle LA5032 (China ?) - 32 x 500Msps / 80 MHz Bandbreite - kein Analog ? Saleae Logic Pro 8 - 8 Kanäle mit 500Msps / 50
decodierten Daten geschehen soll. Falls damit was angefangen werden soll... wer will denn schon decodierte Strings, resp Zahlenfolgen mit 25MHz daherkommend anschauen ? Allenfalls ein FPGA vorsehen. Damit kann man alles machen, inklusive in Musik wandeln. Zaehlen, Histogramme, Min/Max, ..
-
Thread
Hardware Programmierung mit Python
nicht zu sein, denn Python erfreut sich trotzdem sehr großer Beliebtheit. Btw: [code] $ python3 -c "from __future__ import braces" File "<string>", line 1 SyntaxError: not a chance [/code]
: wie sehen 'multiple return values', > 'Positional and Keyword Arguments' und andere Features in C aus? Mehrere Return-Werte lassen sich zwar nicht in C, aber zumindest in C++ inzwischen gut handhaben. [c] #include <iostream> #include <tuple> #include <string> std::tuple<int, std::string
-
Thread
Bestimmten Char aus String entfernen (C)
C, kein C++ oder sonstwas. Danke schonmal. [c] int clean_string(char *buf, int len, char c) { int i, j; for (i = 0, j = 0; i < len; i++) { if (buf[i] != c) buf[j++] = buf[i];
[c] int clean_string(char *buf, int len, char c) { char *src=buf; while(len-->0 && *src!=c) src++; char *dst=src++; while(len-->0) { if(*src!=c) *dst++=*src; src++
-
Thread
C Construct an unnamed object in-place?
In C gar nicht, aber in C++ schon:: [c]child* cp = new child { 1, 2, 3};[/c] Danach muss man die Instanz wieder mit "delete" löschen. Besser geht das mit std::unique_ptr: [c]auto cp = std::make_unique
Der Compiler meckert nicht! [c] #include <stdint.h> struct inRAM{ int16_t variable; const struct inFLASH __flash * ptr; }; struct inFLASH{ const int16_t constant; const char __flash * string; }; struct
-
Thread
C Teile einer Struktur im Flash (const __flash)
nicht als const __flash deklarieren. Als member schon? Aber die Initialisierung mag er nicht... [c] struct inRAM{ int16_t variable; const struct inFLASH __flash * ptr; }; struct inFLASH{ const int16_t constant; const char * string; }; struct inRAM array[] = { {123
nett und verrate doch, was der Fehler ist. Mit Pointer auf separates Arrayelement geht es: [c] #include <stdint.h> struct inRAM{ int16_t variable; const struct inFLASH __flash * ptr; }; struct inFLASH{ const int16_t constant; const char __flash * string; }; const
-
Thread
lichterkette ca. 100 LED's wie brücken?
modulieren konnte es sie aber) dann wäre nur die Frage, wie die gleichgerichteten 230V auf die LED-Strings verteilt werden müssen. 200V stehen zur Verfügung, evntuell ist dies aufgeteilt in 2 x 100V/ String...?
100nF X2 parallel zum Brückengleichrichter. Maximale mögliche Spannung mit passendem C = 230 x Wurzel 2.
-
Thread
Frage/Problem Datentyp Arduino Nano
ist > lieber, wenn man direkt sehen kann, was da passiert. Das ist doch kein echtes Argument. [c] const char *kette = "Eierkuchen"; String feld[3]; feld[0] = (String)kette; feld[1] = String(kette); feld[2] = kette; for(auto &s:feld) Serial.println(s); [/c] Es bleibt
bekommen. Seit dem benutze ich die String Klasse dort nicht mehr. Mit den c Zeichenketten bin ich besser vertraut.
-
Thread
struct list_head Funktionalität auf Cortex-M4 nutzen
registrieren, dafür besitzt das CLI Modul ein struct Array in dem die Callback Funktionen und der String abgelegt wird. [c] #define CLI_MAX_CMD_LENGTH 15 #define CLI_MAX_CMD_COUNT 50 typedef struct { char cmd[CLI_MAX_CMD_LENGTH]; cli_func func; } cli_cmd_t; static cli_cmd_t cli_cmd
;[/c] module_io.h: [c]extern const Module moduleIO;[/c] module_io.c: [c]static const moduleIO_Functions [] = { { "set", &moduleIO_set }, { "get", &moduleIO_get } }; const Module moduleIO {
-
Thread
Ungewollte Pfade in S19-datei
53 debug -rwxr-xr-x 1 bx bx 13720 Dec 2 12:53 nodebug -rw-r--r-- 1 bx bx 71 Dec 2 12:53 test.c [/c] Gehe ich nun mit "strings" über die beiden binaries kommt da einiges bei raus, zuviel zum direkten pasten. Ist ja auch nur ein Beispiel und nicht die Lösung. [c] $ strings debug $ strings nodebug [/c]
-
Thread
GPS MTK3339 jittert ev. der 1 Sekunden Ausgangsimpuls ?
kurzzeitig um 100ms Versuchsaufbau: Oszi mit 2 Kanälen. Kanal 1 am PPS Ausgang Kanal 2 am µC mit 10MHz Takt im CTC-Modus Bernhard
Bernhard S. schrieb im Beitrag #6897005: > Oszi mit 2 Kanälen. > Kanal 1 am PPS Ausgang > Kanal 2 am µC mit 10MHz Takt im CTC-Modus Du triggerst worauf? Was läuft auf dem "µC mit 10MHz Takt im CTC-Modus"? Foto vom Aufbau/Messergebnis?
-
Thread
Größe eines #define String mit sizeof ermitteln
string literal dagegen die bis zur letzten. Beispiele: [c] strlen("test"); // 4 sizeof("test"); // 5 strlen("test\0test"); // 4 sizeof("test\0test"); // 10 char *test = "test"; strlen(test); /
[c] #include <avr/io.h> #include <string.h> #define VERS_PROGRAMVERSION "V01.00.00" /* Programmversion */ int main() { PORTB = strlen(VERS_PROGRAMVERSION); return 0; } [/c] erzeugt
-
Thread
ILDA Dateien auslesen in C#
freundlich, Dir das sogar alles aufzuschreiben. Für ersteres: wie immer: was hast Du denn schon in (C#) codiert? und wo klemmt's genau...?
char future; // 32 Reserved for future use }; }; } ILDA_Header_t; [/c]