KettlerBikeComm.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.IO.Ports;
  7. using System.Threading;
  8. namespace Fietsclient
  9. {
  10. class KettlerBikeComm
  11. {
  12. private string _portname;
  13. private int baudrate = 9600;
  14. private string _bufferOut;
  15. private string[] _bufferIn;
  16. private SerialPort ComPort;
  17. public KettlerBikeComm(string port)
  18. {
  19. this._portname = port;
  20. }
  21. public void initComm()
  22. {
  23. ComPort = new SerialPort(_portname, this.baudrate);
  24. ComPort.Open();
  25. Console.WriteLine("test");
  26. ComPort.WriteLine("RS");
  27. Console.Write(ComPort.ReadLine());
  28. Console.WriteLine("end of message");
  29. ComPort.DataReceived += new SerialDataReceivedEventHandler(ComPort_DataReceived);
  30. while(true)
  31. {
  32. Thread.Sleep(1000);
  33. ComPort.WriteLine("ST");
  34. }
  35. }
  36. private void ComPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
  37. {
  38. string buffer = ComPort.ReadLine();
  39. buffer = buffer.TrimEnd('\r');
  40. Console.WriteLine(buffer);
  41. _bufferIn = buffer.Split('\t');
  42. }
  43. }
  44. }