Forum: Mikrocontroller und Digitale Elektronik Befehl an GPS Modul senden


von Tim F. (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

kann mir bitte jemand erklären wie ich die Updatefrequenz des NL-507ETTL 
von 1 auf 4 Hz erhöhen kann?

Im Datenblatt findet man auf Seite 7 folgendes um die Updatefrequenz auf 
4 Hz zu erhöhen;
1
unsigned char DiableGLL [] = {"$PUBX,40,GLL,0,0,0,0*5C\x0D\x0A"};
2
unsigned char DiableGSV [] = {"$PUBX,40,GSV,0,0,0,0*59\x0D\x0A"};
3
unsigned char DiableVTG [] = {"$PUBX,40,VTG,0,0,0,0*5E\x0D\x0A"};
4
unsigned char DiableZDA [] = {"$PUBX,40,ZDA,0,0,0,0*44\x0D\x0A"};
5
6
unsigned char Rate 4Hz[] =
7
{0xB5,0x62,0x06,0x08,0x06,0x00,0xFA,0x00,0x01,0x00,0x00,0x00,
8
0x0F,0x94};


Ich habe jetzt versucht die Daten einfach an das GPS Modul zu senden, 
also
1
USART_Transmit_String("$PUBX,40,GLL,0,0,0,0*5C\x0D\x0A");
usw....


An der Updatefrequenz hat sich nichts getan. Auch die GLL, GSV... werden 
weiterhin vom Modul gesendet. Hat jemand eine Idee?

Danke.

von Aehh (Gast)


Lesenswert?

Die einzelnen bytes sind alles unsigned char zwischen den kommas... also
$,P,U,B,X,40,G,L,L,0,0,0,0x5C,13,10

von Tim F. (Gast)


Lesenswert?

Hallo, danke für die Hilfe.

Wenn ich es als String versende macht er ja nichts anderes als ein Byte 
nach dem anderen zu versenden.

[c]void USART_Transmit_String(char *str)
{
  int8_t i=0;
  while(str[i])
  {
    USART_Transmit(str[i]);
    i++;
  }
}


void USART_Transmit( unsigned char data )
{
  /* Wait for empty transmit buffer */
  while ( !( UCSRA & (1<<UDRE)) );
  /* Put data into buffer, sends the data */
  UDR = data;
}


void USART_Init( unsigned int baud )
{
  /* Set baud rate */
  baud = F_CPU/((int32_t)16*baud)-1;
  UBRRH = (unsigned char)(baud>>8);
  UBRRL = (unsigned char)baud;
  /* Enable receiver and transmitter */
  UCSRB = (1<<RXEN)|(1<<TXEN);
  /* Set frame format: 8data, 1stop bit */
  UCSRC = (1<<URSEL)|(3<<UCSZ0);
}[/]


Es ändert sich leider nichts. Muss ich vor jeder Nachricht eine Art 
Header mitschicken? Im Datenblatt steht dazu nichts.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.