Pobieranie koordynatów z modułu GPS

Własne projekty oraz implementacje.

Moderator: xxSlayeRxx

Pobieranie koordynatów z modułu GPS

Sponsor

Sponsor
 

Pobieranie koordynatów z modułu GPS

Postprzez bor1904 » N cze 10, 2012 9:42 pm

Witam,
Z jednej strony chcę się podzielić prostym ale użytecznym kodem który najpewniej z dowolnego modułu GPS pobierze koordynaty w formacie XXXX -- XXXX odpowiednio N i E , następnie zapisze je do pliku date.txt na dysku c.



Chciałbym jednak, żeby ta czynność była wykonywana po starcie systemu, a następnie co 5min.

Czy ktoś pokaże jak wykorzystać jakoś klase Timer ? czy dla 5-10 min to się zawsze korzysta z Harmonogramu windows ?

Można skorzystać ze sleep'a ale to mega dużo zasobów zżera i jest mało profesjonalne.




Oto kod:
Kod: Zaznacz cały
using System;
using System.IO.Ports;
using System.Threading;

using System.IO;


public class PortChat
{
   static bool _continue;
   static SerialPort _serialPort;

   public static void Main()
   {

      
      Thread readThread = new Thread(Read);


      _serialPort = new SerialPort();


      _serialPort.PortName = "COM22";
      _serialPort.BaudRate = 9600;
      _serialPort.Parity = Parity.None;
      _serialPort.DataBits = 8;
      _serialPort.StopBits = StopBits.One;
      _serialPort.Handshake = Handshake.None;


      _serialPort.ReadTimeout = 800;
      _serialPort.WriteTimeout = 500;

      _serialPort.Open();      
      readThread.Start();
      readThread.Join();
      _serialPort.Close();
   }

   public static void Read()
   {
      TextWriter tw = new StreamWriter(@"c:\date.txt");
      
      while (true)
      {   
         try
         {
            string message = _serialPort.ReadLine();
            if(message.Contains("GPGGA,"))
            {
               
               char[] delimiterChars = { ',' };
               string[] wiersz1 = message.Split(delimiterChars);
               if(wiersz1[2].Length > 6){
                  tw.WriteLine( wiersz1[2] + " -- " + wiersz1[4] );
                  
                  Console.WriteLine( " " + wiersz1[2] + " -- " + wiersz1[4] );
                  
                  break;
               }
            }
         }
         catch (TimeoutException) { }
      }
      tw.Close();      
   }

}
bor1904
New member
 
Posty: 6
Dołączył(a): Pn mar 21, 2011 8:00 am

Pobieranie koordynatów z modułu GPS

Sponsors

Sponsor
 

Powrót do Projekty i kody źródłowe

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości