Go Down

Topic: Hiiiilfeeeee (Read 1 time) previous topic - next topic

Ben1306

ich habe hier den folgenden programmcode gefunden :

void loop() {
  while (gpsSerial.available()) {
    hauptZeile[hschlecht] = gpsSerial.read();
    if (hauptZeile[hschlecht++] == '\n') {
      hauptZeile[hschlecht-1] = '\0'; // Ende einer Zeile -> Ende des Strings
      if (hauptZeile[0] == '$' && hauptZeile[1] == 'G' && hauptZeile[2] == 'P' && hauptZeile[3] == 'R' && hauptZeile[4] == 'M' && hauptZeile[5] == 'C') {
        Serial.println(hauptZeile);// GPRMC..

und ich bin neu im gebiet programmieren ^^
da wollte ich mal wissen was genau die bedingung der zeile:

if (hauptZeile[hschlecht++] == '\n') {

bedeutet... kann mal nix mit dem '\n' anfangen
danke schonmal für die hilfe :)))

uwefed

Code: [Select]
if (hauptZeile[hschlecht++] == '\n') {
Da wird die das Arrayelement "hauptZeile[hschlecht]" verglichen ob es das Zeichen "\n" (return oder 13 oder 0X0A) ist und sofort nach dem vergleich der index "hschlecht" um 1 erhöht.
Grüße Uwe

Ben1306

hello :) i've this code :

void loop() {
  while (gpsSerial.available()) {
    hauptZeile[hschlecht] = gpsSerial.read();
    if (hauptZeile[hschlecht++] == '\n') {
      hauptZeile[hschlecht-1] = '\0'; // Ende einer Zeile -> Ende des Strings
      if (hauptZeile[0] == '$' && hauptZeile[1] == 'G' && hauptZeile[2] == 'P' && hauptZeile[3] == 'R' && hauptZeile[4] == 'M' && hauptZeile[5] == 'C') {
        Serial.println(hauptZeile);// GPRMC..

and i'm new in programming ^^
and i dont know what this means:

if (hauptZeile[hschlecht++] == '\n') {

another example:

if(string[i++]=='\n'

i dont know what the '\n' makes
could someone explain to me ??
thx 4 help

wildbill

\n is the way C represents the linefeed (LF) character. It is Ascii character 10

Ben1306

daaaanke für die schnelle antwort :)

ea123

Hello,
hauptZeile[] is an array of character and the code

Code: [Select]
if (hauptZeile[hschlecht++] == '\n')

simply checks if the character at index hschlecht is equal to the constant '\n' that is a newline. A character constant is specified between single quotation marks es. 'A', '2', 'b', etc. Special characters are indicated by using the escape sequence: '\n' is a new-line, '\t' is a tab, etc.
It seems that your code is reading characters from the serial port and detects the end of a sentence by  checking the new-line character.

Ben1306

thanks for the fast reply :)

helps much :)


Ben1306

hat mir sehr geholfen :)

AWOL

What is the German for "DO NOT CROSS-POST", please?
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

UweFederer

Ben1306
Es ist schlechtes Benehmen (Netikette) in einem Forum die gleiche Frage in verschiedenen Kategorien zu stellen.
Grüße Uwe Federer

AWOL

"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Ben1306

Das tut mir leid kommt nicht mehr vor ;) ist mein erstes forum in dem ich angemeldet bin ^^

sth77


Das tut mir leid kommt nicht mehr vor ;) ist mein erstes forum in dem ich angemeldet bin ^^

Dann gebe ich dir noch einen weiteren Tipp auf den Weg: Wähle als Titel etwas aussagekräftigeres als "Hiiiilfeeee".  Man soll hieran ja erkennen, worum es geht.
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy