-
Thread
25LC1024 gefälscht oder defekt?
EEPROM_readStatus() & _BV(EEPROM_WRITE_IN_PROGRESS)) {}; } if (page != 512) { sprintf(command_string, "EEPROM page error at page %d.", page); } else { sprintf(command_string, "EEPROM pages okay!"); } command_confirm(command_string); } [/c] Meine EEPROM-Routinen scheinen
EEPROM_readStatus() & _BV(EEPROM_WRITE_IN_PROGRESS)) {}; } if (page != 512) { sprintf(command_string, "EEPROM page error at page %d.", page); } else { sprintf(command_string, "EEPROM pages okay!"); } command_confirm(command_string); } [/c]
-
Thread
PART-DB RW 1.2 Gesperrt
das SMD package 0805 eintragen, aber die führende null war dann weg. in lib.php fand ich dann: [c] if (!is_numeric($value)) { $value = "'". mysql_escape_string($value) ."'";^ } [/c] Aber in der DB ist das Feld für den Namen des footprints vom Typ mediumtext. Also warum nicht immer als string
als String verarbeitet. Zusätzlich in fpmgr.php [c] if ( strcmp ($_REQUEST["action"], "a") == 0 ) { $query = "INSERT INTO footprints (name) VALUES (". smart_escape($_REQUEST["fpname
-
Thread
Mein if Anweisung geht nicht
== 2||izeile1 == 3){ // If 4 set_cursor(1,izeile4); lcd_string("4 STATUS"); //izeichen=izeichen+1; } //set_cursor(1,4); //lcd_string("ANLAGE AUS"); uebergabe(); _delay_ms(200); return 0; } [/c]
||izeile1 == 3){ set_cursor(1,izeile4); lcd_string("4 STATUS"); //izeichen=izeichen+1; } //set_cursor(1,4); //lcd_string("ANLAGE AUS"); uebergabe(); _delay_ms(200); return 0; } [/c]
-
Thread
Serial Port mit USB bitte helft mir
kennst, sollten die Setup - Funktionen egal sein. Die Setup Aufrufe brauchst du ja um den Device - String zu bekommen. Was mir jedoch aufgefallen ist: [code] Handle = CreateFile("\\?\usb#vid_091e&pid_0003#5&295c686&0&2#{2c9c45c2-8e7d-4c08-a12d-816bbae722c0}", 0, FILE_SHARE_READ Or FILE_SHARE_WRITE
"\\?\usb#vid_091e&pid_0003#5&295c686&0&2#{2c9c45c2-8e7d-4c08-a12d-816bbae722c0}" ist ein String im verwalteten Speicher und noch dazu ein VB-String! WinAPI Calls wollen Nullterminierte Strings! Schau dir mal http://www.vbarchiv.net
-
Thread
TimeoutException unter Visual C++ 2008
, aber wie? Über schnelle Hilfe würde ich mich freuen. Danke! Programmauschnitt: try { String ^ComPort=option->comboBox1->SelectedItem->ToString(); String ^BaudRate=option->comboBox2->SelectedItem->ToString(); BaudRate2=Convert::ToInt32(BaudRate); SerialPort^ serialPort = gcnew SerialPort
stehen dann gebe ich eine Fehlermeldung aus oder arbeite normal weiter. Sieht dann so aus. [c] string Ergebnis = Waage1->ReceiveData(); if(Waage1->GetLastError() == CE_OK) [/c] Viele Grüße Andreas
-
Thread
Integer zu String, aber (Speicher-)effizient.
da ich mit Pascal arbeite, kann ich (mal wieder) nur den Kopf schütteln ;-) C und Strings sind schon was tolles ;-) gib es in C wirklich keine "IntToString" (optimierte) Funktion die das FixFertig zurück liefert? also wenn man sich schon über sowas "rudimentäres" jedes
Danke für eure Mühen! Ich habe es jetzt wie folgt gelöst: [c] int n; n = fprintf(...); // so kann ich den Integer in einen String umwandeln und bekomme die Anzahl der Stellen zurück! [/c]
-
Thread
Für "Denker" suche nach einer funktion auch selbstgeschrieben
Wenn du keine C Strings sondern Pascal Strings verwendest, solltest du entweder einen Pascal Compiler verwenden oder dir die Funktion mit Hilfe der for oder while Schleife in C selbst schreiben.
Ein C-Compiler kann nur Stringfunktionen mit C-Strings. Im Klartext: das muss eine /0 hinter den Zeichen stehen ! Strings mit Längenangabe davor sind Pascal oder Delphi Strings und die kann ein C Compiler
-
Thread
Bosch BMA020 Zweierkomplement
dein string ist auch kein string sondern ein einfaches Zeichen ein String wäre ein char-array, also mit [groesse] hinterher ;)
Habe ein paar Fehler gefunden. [C]i2c_write (0x02); ... gx = (int16_t)(data[0]) >> 6; gy = (int16_t)(data[1]) >> 6; gz = (int16_t)(data[2]) >> 6; [/C] soll heißen [C]i2c_write(addr); ... gx = ((int16_t)data[0]) >> 6; gy =
-
Thread
[C] chararray zu uint64_t
> Wie kann ich das in C bewerkstelligen. Was bekommst Du denn? Einen C-String? man atoll. Rohdaten in der richtigen(tm) Endianness? man memcpy. Rohdaten in der falschen(tm) Endianness oder anderweitig total verwurstet? man
In den AVR-Tools mit AVR-LibC gibt es kein strtoull und auch kein atoull --> selber programmieren. Ist das char-Array denn ein String oder ist das schon das Binärformat des Stamps?
-
Thread
NumericUpDown C#
gehen müsste anstatt der NumericUpDown eine DomainUpDown zu verwende. Einfach die Zahl 1 in einen String umwandeln und eine zusätzlich 0 in den String kopieren ->und dann reindamit ins NumericUPDown
Basisklasse UpDownBase geerbte Eigenschaft Text zu überschreiben. Diese Eigenschaft legt fest, wie Strings im Control dargestellt werden. class ErweitertesNumericUpDown : NumericUpDown { // fügt Werten unter 10 eine führende 0 hinzu public override string Text {
-
Thread
C Zeichenketten und Speicher
Hallo, ich bin neu in der C-Programmierung, habe vorher nur in Java programmiert. Möchte gerne eine Datei zeilenweise auslesen und die Zeilen dann splitten. Mein bisheriger Code: [c] #include <stdio.h> #include <stdlib.h>
, ob ich dort "string" noch freigeben muss. strtok verändert "string" ja und liefert Zeiger aus selbigen zurück. Reicht es dann, wenn ich das jeweilige aktuelle Token freigebe und nicht "string" als Ganzes am Ende der Funktion
-
Thread
Sonderzeichen aus String entfernen
Ich schreibe gerade ein Programm, welches aus einer txt-Datei Zeilenweise einen eingelesenen String (Namen) vergleicht und dann ausgibt, ob der Name existiert oder nicht. Hier mein Code: [c] #include <stdio.h> #include <string.h> #include <stdlib.h> #include <limits.h> int main(void)
Danke für die schnelle Antwort! Ich habe den Fehler schon gefunden statt [c] fgets(content, 255, fp); sscanf(name, "%s", name2); [/c] sollte stehen [c] fgets(content, 255, fp); sscanf(content, "%s", name2); [/c] Der String-Compare Befehl filtert sozusagen ja schon
-
Thread
Size von Vektor mit Zeigern auf char-arrays ermitteln
Eigentlich könntest du doch deine Befehle durchnummerieren und per ID-Nummer identifizieren. Ganz ohne String und strcmp(...). Nur C (und wahrscheinlich kritikwürdig ;-) [c] #include <stdio.h> #include <stdbool.h> typedef enum{OFF, ON, LEFT, RIGTH, TOP, DOWN, END} command_t; bool is_legal_command
commands[i++])==0) return i; > } while (strcmp(END,commands[i])!=0); > return 0; > > } > [/c] Das ist eine Verschlimmbesserung, weil: 1) für das Sentinel mehr Platz (ein ganzer String) verbraucht wird als nötig 2) je Iteration 2x strcmp() 3) nicht idiomatisch C. 4) im eigentlichen Sinne
-
Thread
QString s("Hallo") oder QString s="Hallo" ?
Ausgabe: [code]MyString s("Hallo"); -> c'tor with char * parameter called MyString s = "Hallo"; -> c'tor with char * parameter called MyString s; s = "Hallo"; -> c'tor w/o parameter called -> operator= with char
Dirk K. schrieb im Beitrag #6168569: > MyString s("Hallo"); > -> c'tor with char * parameter called > > MyString s = "Hallo"; > -> c'tor with char * parameter called Es gibt einen wichtigen Unterschied zwischen diesen beiden, aber laut gcc
-
Thread
I²C EEprom communication (reading/writing)
just saw there's a french elektor site www.elektor.fr. Search for "I2C" in the R8C/13-forum. Maybe the M16C has hardware-based I²C? The R8C/13 uses Software I²C. By the way: The R8C/13 has 4KByte of user accessible ROM. So often an external EEPROM is not necessary. It's
I will add somen I²C temperatures sensors : a AD5161 and a AD5252 In order to display the data from the sensors to the LCD, I have to convert Data into a char string. I think I will procede like this : Binary
-
Thread
Welcher C-Compiler ist für Anfänger ?
meinen Kommilitonen konnte ich auch sehen, dass C oder C++ keine besonders gute Sprache für den Anfang ist (zu technisch). C#, Python oder auch Pascal ist da besser. C kann man danach noch lernen.
Aus einem anderen Thread, an dem ich zufällig grade drann bin [c] if( wert ) lcd_string( "1" ); else lcd_string( "0" ); [/c] siehst du da irgendwo ein {? Also ich nicht. Ist auch nicht weiter verwunderlich. Die Syntax für if lautet in EBNF
-
Thread
Buch über C++
bestimmte Libraries oder ähnliches. Windows? Ich wette du hast vergessen, dass ein \ in einem String als \\ geschrieben werden muss. Die Datei test.txt im Verzeichnis temp, welches auf der Platte C direkt unter dem Wurzelverzeichnis liegt, hat unter Windows den vollständigen Namen in Form eines C-Strings "C:\\temp\\test.txt" (Dies deshalb, weil \ in C und auch in C++ eine Sonderrolle hat. \n bezeichnet den Line Feed Character \t bezeichnet den Tabulator Character \b bezeichnet
-
Thread
Display Ansteuerung - 16 x 4 DotMatrix LCD
Ah Port C Ist die JTAG Fuse aus? ;)
PD7); PORTD |= (1 << PD7); lcd_init(); lcd_clear(); lcd_setcursor(0, 0); lcd_string("Hello World"); while(1) { //TODO:: Please write your application code } }[/c] Das ist unsere momentanes LCD Programm zum testen. Also kommends sind teils falsch
-
Thread
Zweidimensionales Array. Funktioniert das so zuverlaessig?
Schulter schauen kann. > Damit ich es das naechste Mal besser > machen kann. Auf einem µC kann man auch so vorgehen: Es gibt in jedem Programm Teile, die sind in keinster Weise vom µC selber abhängig. Eine String-Verwaltung und String Austausch in einer Datenstruktur ist nicht davon abhängig
Aufwand bedeutet, diese > AEnderung aber auf der anderen Seite unverzichtbar macht. Welches? [c]char* Commands[5][/c] ??? Das kein zweidimensonales Array, sondern schlicht ein Array von char*. Die einzelnen Pointer können frei irgendwo in den Speicher zeigen, wo auch immer der zugehörige String
-
Thread
Konstanten-Deklaration
Was würde denn eine nicht-static-Konstante in einer Funktion anderes machen? Anstelle von [c]static const char* string="Test";[/c] solltest Du [c]static const char* const string="Test";[/c] verwenden. Ersteres verbietet nur [c]string[0] = 'A';[/c] letzteres verbietet auch [c]string = "bla";[/c]
-
Thread
Strings zusammenfügen
einen String ein Zeichen anfügen Zeichen ist nicht gleich String ! Für Strings könnte dir das weiter helfen http://www.mikrocontroller.net/articles/FAQ#Wie_funktioniert_String-Verarbeitung_in_C.3F Um
() { LastCharInBuffer = 0; return Buffer; } [/C]
-
Thread
UART Protokoll für µC
ziemlich lange nach einer Lib oder einem Standard für die serielle (UART) Kommunikation zwischen µC und PC bzw. µC und µC. Anwendungsfall wäre üblicherweise folgender: Ich hab irgendein Gerät mit einem (relativ kleinen) µC (Atmega o.Ä.) der per UART (+ FTDI, CP2102) an einem PC hängt. Jetzt
point Protokolle aus dem Ethernet Bereich sind irgendwie viel zu mächtig und groß für den kleinen µC. Btw. ich hab jetzt nicht das Problem ein Array per UART zu übertragen oder so. Da gibt es ja je nach µC Libs zu. Wie löst ihr sowas? Gruß!
-
Thread
C# Hex String 2 Bytes tauschen und in Dez. ausgeben
Moin, wenn es wirklich um C# geht und die Länge deines String immer 6 ist, dann würd ich das als ersten Schuß so machen [code] string foo = "7F355E"; string bar = foo.Substring(4, 2) + foo.Substring(2, 2) + foo.Substring
Es wurden ja schon einige Ansätze genannt; hier mal eine andere Idee: [c] using System; using System.Globalization; using System.Net; // ... int Foo(string hex) { if (hex.Length != 6) throw new ArgumentException(); int dec = int.Parse(hex + "00
-
Thread
optimierung und itoa
schreiben muss ("9" => "10") MAch mal ein paar bytes mehr platz im Ram, z.B. duch kürzen des Strings [c] lcd_text( (u8*) "Ex Interval:"); [/c] in "ExI" o.Ä. Saubere Lösung: pgmspace.h, PSTR, lcd_text_P.
schreiben muss > ("9" => "10") > > MAch mal ein paar bytes mehr platz im Ram, z.B. duch kürzen des Strings > [c] > lcd_text( (u8*) "Ex Interval:"); > [/c] > in > "ExI" o.Ä. > > Saubere Lösung: pgmspace.h, PSTR, lcd_text_P. genau, PROGMEM für diese Konstanten verwenden, dann landen die im Flash
-
Thread
C#: Alternative zu List<Tuple<.>>
in einer Anwendung werden Daten in eine Liste, immer wieder aktualisiert bzw. gespeichert. [c] List<Tuple<string, long, int, long>> _Table = new List<Tuple<string, long, int, long>>(); [/c] Nun ist es so, dass wenn eine Wert neu abgelegt werden soll zunächst alle Werte in eine Zwischenvariable
Liste _Table die Werte übergeben werden. Es ist nicht möglich einzelne Werte zu ändern. Gibt es in C# eine Alternative hierfür? [c] string v1 = _Table[i].Item1; long v2 = _Table[i].Item2; int v3 = _Table[i].Item3; long v4 = _Table[i].Item3; _Table[i] = Tuple.Create(v1, v2, v3, v4); [/c]
-
Thread
raw data per json
werden. Ist erstmal nicht meine Baustelle, aber betrachtet Java bzw. Javascript nicht alles als string ? In so fern ist es wurst, nur mit C etc. muss man den string wieder umwandeln. Das hatte ich schon längst auch ohne diesen Hinweis schon gebacken... was glaubst du wie viele Kuchen ich schon gebacken
kennst. Wenn alles String wäre könnte man nie damit rechnen. > In so fern ist es wurst, nur mit C etc. muss > man den string wieder umwandeln. Wenn du ein Textformat wie JSON nutzt musst du parsen. Ja. Liegt in der
-
Thread
String als Konstante definieren
Hallo, -hier eine Frage zu einer String Definition : dieser Codeabschnitt : [vhdl] architecture Verhalten of Test1 is signal c_str : STRING(1 to 16):="abcdefghijklmnop"; signal v_chr : character; signal chr_pos : integer
Zeichen im String !! [vhdl] architecture Verhalten of Test1 is constant c_str : STRING(1 to 16):="abcdefghijklmnop"; signal v_chr : character; signal chr_pos : integer range c_str'range := c_str'left;
-
Thread
Arduino Serielle Schnittstelle PC --> Arduino
Nachricht, damit du weißt das fertig ist. Du würdest dann z.B. "1_ON\n" senden. > Und wie werte ich den String dann eben aus? Bei deinem Beispiel würde ich es so machen: [c] uint8_t pin_nr = string[0] - '0' if(!strcmp(string + 1, "_ON")) digitalWrite(pin_nr, HIGH); else if(!strcmp(string + 1, "_OFF"
ich weiß nicht genau wie ich das > so in meinen Code einbauen soll. Indem du erst mal einen STring zusammenbaust. Ein String ist eine Abfolge von Zeichen, die mit einem '\0' endet. Das Ende der Übertragung erkennst du daran, dass ein \n eintrifft. Dann ist dein String komplett. [c] int nrChars
-
Thread
UDP-Netzwerke(l)n mit kleinen Mikrocontrollern und WizNet W5100/W5500
waitKey() { while (!Serial.available()) { /* block */ } return (char)Serial.read(); } String readLine() { String s; while (true) { while (!Serial.available()) { /* block */ } char c = (char)Serial.read(); if (c == '\r') continue; if (c == '\n') break; s += c;
for (int i=0;i<4;i++) outIp[i] = (byte)parts[i]; return true; } bool parseHexByte(const String& t, byte &b) { if (t.length() == 0 || t.length() > 2) return false; char *endptr = nullptr; long v = strtol(t.c_str(), &endptr, 16); if (endptr == t.c_str() || *endptr != '\0') return false
-
Thread
Hilfe bei #Define
Denk immer daran: Der Präprozesser ist eine reine Textverarbeitungs- maschinerie. Den kümmern C Anweisungen oder deren Grenzen oder Klammern oder ; herzlich wenig. Das Einzige ist: Aus Strings hält er sich raus: #define ABC 123 int main() { printf( "ABC" ); } das druckt wirklich
Hallo Karl Heinz, ich habe nun diese Hilfsfunktion eingebaut: void TxStringSenden( char * String ) { while( *String ) TxDatenSenden( *String++ ); } und in main() dann #if ANZAHL_LEDS == 16 TxStringSenden( "NV16S/W\r\n" ); #elif ANZAHL_LEDS == 32 TxStringSenden
-
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
Fehlermeldung: near initialization for
Testzeile 3"), FSTR(" 1 Testzeile 3"), FSTR(" 1 Testzeile 4")} ,1 ,1 ,eingabe_betrieb}, }; [/c] Ich kann die Strings mit [c] show_display_lines(main_menu[index].text.text_zeile); [/c] aufrufen und anzeigen. show_display_lines macht folgendes: [c] void show_display_lines(const __flash
mischen. [c] void lcd_puts_p(const char *progmem_s) // print string from program memory on lcd (no auto linefeed) { register char c; while ( (c = pgm_read_byte(progmem_s++)) ) { lcd_putc(
-
Thread
Konvertierung von Typen
, ankunft.Value.Minute); string[] split = date1.Split(new char[] {':'}); string str_stunden = split[0]; string str_minuten = split[1]; [/c] Das hat super funktioniert danke! Jetzt habe ich noch eine Frage. Ich habe jetzt
{':'}); string str_stunden = split[0]; string str_minuten = split[1]; [/c] sich von einem DateTime Objekt die Zeit als String zu holen, nur um dann den String in Stunden und Minuten zu zerlegen. So ein DateTime
-
Thread
Lazarus + Synaser
] Ich wollte einfach mal wissen, warum ich in mein Edit2feld keinen Text bekomme. Der µC ist mit Bascom gecoded, hier benutze ich den Print befehl ohne ';' dahinter (Das hat zur Folge das nach jedem String durch PRINT automatisch ein CRLF gesendet wird...) Bitte helft mir, hab noch
o.a. Buch wird auch mit einem Timer gearbeitet. Für Dein Programm angepaßt sieht das dann so aus: [c]procedure TForm1.Timer1Timer(Sender: TObject); var signal : string; begin if not connected then exit; signal := serv.Recvstring(Timer1.Interval div 2); if serv.LastError <> 0 then exit
-
Thread
C# Buchstaben aus Array zählen und Häufigkeit bestimmen
malloc,...) und Zeiger werden zum Lösen der Aufgabe nicht benötigt. Mein Ansatz sieht so aus: [c] #include <stdio.h> #include <string.h> #include <stdlib.h> #define aufg2 int main(void) { #ifdef aufg2 char stringkette[81]={0}; //Feld zum einlesen der Zeichenkette char auswertung
[c]if(c >= 'a' && c <= 'z')[/c] da?
-
Thread
Variablen vergleichen
102) { writeString_P("Schwenkarm wieder nach unten\n"); PORTC |=(1<<1); mSleep(1); PORTC &=~ (1<<1); mSleep(19); n==0; p++;} [/c]
Programm dauerhaft in der Schleife Welchen Wert hat p jetzt? Wenn p<100 ist, ist da was faul... > [c]while(p<102) > { > writeString_P("Schwenkarm wieder nach unten\n"); > PORTC |=(1<<1); > mSleep(1); > PORTC &=~ (1<<1); > mSleep(19); > n==0; > p++;} > [/c]
-
Thread
Serial-to-Ethernet: Welche Daten für URL senden?
an ein paar Stellen modifiziert. Nach dem Booten kommt ein "D" und nach dem Connecten nun auch ein "C", wie es sein soll. [c] void xport_connect(void) { unsigned int uiAnzahlBytes; strcpy(web.caHTML_string, "C192.168.178.53/80\n"); uiAnzahlBytes = strlen(web.caHTML_string); HAL_UART_Transmit_IT(&huart2, web.caHTML_string, uiAnzahlBytes); } [/c] Auch das Senden des HTTP-Requests geht nun: [c] { unsigned int uiAnzahlBytes; strcpy(caString, "GET /login.htm HTTP/1.1\r\n"); strcat(caString, "Host: 192.168.178.53
-
Thread
C oder C++ für ATMega
bewusst, dass viele Dinge in C++ (zb Strings) massiv auf dynamischer Speicherverwaltung beruhen, die du so auf deinem Mega nicht haben willst. Das schränkt natürlich die Vorteile von C++ schon etwas ein, obgleich noch einiges übrig
Karl heinz Buchegger schrieb im Beitrag #2015261: > Sei dir bewusst, dass viele Dinge in C++ (zb Strings) ... Wenn man sich sowas nicht selbst baut, gibt es die beim avr-gcc gar nicht, auch nicht für C++-Programme.
-
Thread
ATMega8: Kommunikation über RS232 mit C#-Programm
{ serialPort1.Write(TBText.Text+"\r\n"); // Senden des Textboxinhaltes an den µC } private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e) { string inputData = serialPort1.ReadLine(); // Empfangen des zurückgesendeten
> Beim Empfang öffnen sich zwei Messageboxes nacheinander statt einer, Du sendest hier zwei Strings, die beide mit einem Zeilenende(CRLF) abgeschlosen werden: Herbert G. schrieb im Beitrag #2609169: > Print "Antwort: " ; Empfangen 'Antwort des µC Die werden dann hier nacheinander abgearbeitet
-
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
Firmware entschlüsseln, Updateprogramm als Hilfe?
sogar die interne Menüstruktur des Funkgerät! Laut den leuten in der Gruppe suchen wir nach dem String "404B4C00" innerhalb der Firmware. Angeblich könnten die Jungs dann eine Firmware schreiben die RTX von 18-1300MHz schafft, natürlich trotzdem mit der Lücke bei 600-850MHz. Nochmal vielen lieben
aneignen! Rein theoretisch, laut dem was bei der K5 Firmware bekannt ist, suche ich nach dem String 404B4C00 in der Firmware. Der muss zum ändern der Frequenzbereiche editiert werden. Da dieser für beide Geräte theoretisch gleich sein soll/muss... So wird's behauptet.
-
Thread
Suche uC Programmierer
Hallo, ich suche einen uC Programmierer welcher mir über dieses Wochenende, ein kleines Projekt erstellen kann. Es handelt sich hierbei um nichts schwieriges. Die grobe Funktionsweise besteht darin, das ein uC über eine PS2
Lass mich mal zusammenfassen: - Einlesen eines Barcode-Scanners (String) vom PS2 - Zuordnen des Strings zu einer Nummer - Auf PC entsprechend der Zuordnung Aktion ausführen Wieso schließt du den Barcodescanner nicht direkt an den PC an und machst die Zuordnung in
-
Thread
Eingänge am ADC wechseln
LCD ausgeben char BufferT[20]; itoa( temperature, BufferT, 10 ); lcd_clear(); lcd_string("Innentemp.: "); lcd_string(BufferT); lcd_string("C"); //Spannung auf dem LCD ausgeben char BufferV[20]; itoa( spannungsmessung, BufferV, 10 ); lcd_setcursor(0,2); lcd_string
* 5 / 255 ); lcd_setcursor( 0, 2 ); lcd_string( Buffer ); } } [/C] ist dir das zu einfach, oder was?
-
Thread
AVR: fprintf_P String im Progmem
Walter T. schrieb im Beitrag #4447437: > Allerdings gilt der Aufruf [c]printf(string);[/c] > heutzutage als schlechter Stil, da für zahlreiche Sicherheitslücken > verantwortlich. Stattdessen ist [c]printf("%s",string);[/c] > empfohlen. Bitte was? Wo hast du das denn
ein harmloses %s auswerten. In [c]printf (string);[/c] muss sie einen möglicherweise langen komplizierten string auswerten und nach "%" suchen, auch wenn gar keine drin sind.
-
Thread
Formatierungs-Flag in C
Hallo zusammen, ich möchte in meinem C-Programm eine Zahl vom Typ "double" in einen ASCII-String umwandeln. Zur Zeit mache ich dies wie folgt: double zahl; char[20] string; sprintf(string,"%f",zahl); Das funktioniert zwar, aber
mit sprintf(string,"%.1f",zahl); geht das. mehr dazu unter http://cppreference.com/stdio/printf.html
-
Thread
Client Server Programm
> Wie soll man da Beispielcode geben? Da hast du vollkommen Recht :-) embedded Modul: TMS320C2000 Controller: F28035 Programmiersprache: C
continue; static SerialPort^ _serialPort; public: static void Main() { String^ name; String^ message; StringComparer^ stringComparer = StringComparer::OrdinalIgnoreCase; Thread^ readThread = gcnew Thread(gcnew ThreadStart(PortChat::Read));
-
Thread
Fehlermeldung in C#
Und zwar möchte ich vier Zeichen von einer textBox in ein Array ablegen. Die Initialisierung sieht bei mir so aus: public string baudrate_user=""; string[] baudrate_array = new string[4]; ++++++++++++++++++++++++++++++++++++++++++++ private void baudrate_reg_value_TextChanged(object sender, System.EventArgs e) { baudrate_user = baudrate_reg_value.Text.ToString(); baudrate_array[0] = baudrate_user.Substring(0,1); baudrate_array[1] = baudrate_user.Substring(1,1); baudrate_array[2] = baudrate_user.Substring(2,1); baudrate_array[3] = baudrate_user.Substring
-
Thread
const prog_char in AVR Studio 6.2
Pointer-Tabelle auf die Strings auf diese Art: [c] PGM_P string_table[] PROGMEM = { string_1, string_2, string_3, string_4, string_5 }; [/c] Wobei das Maktro PGM_P eine Ersatzschreibweise für "const char *" ist.
string+i); } } [/c] Aufrufmöglichkeit für entweder den PROGMEM-String direkt, mit Casten des String-Pointers zu einem int: [c] printOnLcd((int)string_2); [/c] Oder über den Index in der String-Tabelle
-
Thread
C - Pointer Arithmethik auf Strukturen?
} while( *pointer++ ); //printf("Name: %s - Punkte: %d\n", pointer->name, pointer->score); [/c] Wenn ich das genau mache, wie beim String, spuckt der Compiler natürlich den Fehler raus, dass das nur bei Skalaren Variablen geht. Die Datei hat momentan zwei Einträge. Eine komische Sache
. Jedoch wenn ich in Beispiel2 in der Funktion die "Test1" Ausgabe auskommentiere [c] //printf("Test1 %s - %d\n", entry[i].owner, entry[i].score); [/c] Bekomme ich folgende Seltsame Ausgabe: [c] Test2 ɲa - 111111 [/c] Wieso kriegt er den String nicht mehr korrekt dargestellt
-
Thread
LCD I2C ATmega32 initialisieren
(); unsigned char string[] = "Hi World"; lcd_print(string); lcd_command(LCD_DISPLAYON | LCD_CURSORON | LCD_BLINKINGON); // Display Hintergrundbeleuchtung ein i2c_start_wait(LCD_I2C_DEVICE+I2C_WRITE); i2c_write
Welche Belegung hat dieser Adapter? Siehe dazu: https://arduino-info.wikispaces.com/LCD-Blue-I2C Marcus M. schrieb im Beitrag #4909963: > Versuche ich einen String auszugeben ("Hi World"), geht die > Hintergrundbeleuchtung aus. Ein klares Indiz dafür, dass die Belegung anders ist, als