HamBook – Diff between revs 1 and 3

Subversion Repositories:
Rev:
Show entire fileIgnore whitespace
Rev 1 Rev 3
Line 15... Line 15...
15 namespace HamBook.Radios.Yaesu.FT_891 15 namespace HamBook.Radios.Yaesu.FT_891
16 { 16 {
17 [Radio("Yaesu FT-891")] 17 [Radio("Yaesu FT-891")]
18 public class MD : Generic.CAT.MD 18 public class MD : Generic.CAT.MD
19 { 19 {
20 private static readonly Regex readRegex = new Regex(@"^MD0(?<mode>[1,2,3,4,5,6,7,8,9,A,B,C,D])$", RegexOptions.Compiled); 20 private static readonly Regex readRegex = new Regex(@"^MD0(?<mode>[123456789ABCD]){1}$", RegexOptions.Compiled);
Line 21... Line 21...
21   21  
22 public MD(SerialPort serialPort) : base(serialPort) 22 public MD(SerialPort serialPort) : base(serialPort)
23 { 23 {
Line 24... Line 24...
24 } 24 }
25   25  
26 public override void Set(RadioMode mode) -  
27 { -  
28 switch(mode) -  
29 { -  
30 case RadioMode.SSB_1: -  
31 SerialPort.Write($"{Name}01{EOT}"); -  
32 break; 26 public override void Set(RadioMode radioMode)
33 case RadioMode.SSB_2: -  
34 SerialPort.Write($"{Name}02{EOT}"); -  
35 break; -  
36 case RadioMode.AM: -  
37 SerialPort.Write($"{Name}05{EOT}"); -  
38 break; -  
39 case RadioMode.FM: -  
40 SerialPort.Write($"{Name}04{EOT}"); -  
41 break; -  
42 case RadioMode.CW: -  
43 SerialPort.Write($"{Name}03{EOT}"); -  
44 break; 27 {
Line 45... Line 28...
45 } 28 SerialPort.Write($"{Name}0{radioMode.Mode}{Generic.Constants.EOT}");
46 } 29 }
47   30  
48 public override RadioMode Read() 31 public override RadioMode Read()
49 { 32 {
50 SerialPort.Write($"{Name}0{EOT}"); 33 SerialPort.Write($"{Name}0{Generic.Constants.EOT}");
51 var result = SerialPort.ReadTo(EOT); -  
52 var match = readRegex.Match(result); -  
53 var value = char.Parse(match.Result("${mode}")); -  
54 switch(value) -  
55 { -  
56 case '1': -  
57 return RadioMode.SSB_1; -  
58 case '2': -  
59 return RadioMode.SSB_2; -  
60 case '5': -  
61 return RadioMode.AM; -  
62 case '4': -  
63 return RadioMode.FM; -  
64 case '3': -  
65 return RadioMode.CW; 34 var result = SerialPort.ReadTo(Generic.Constants.EOT);
66 } 35 var match = readRegex.Match(result);
67   36 var radioMode = char.Parse(match.Result("${mode}"));
68 return RadioMode.NONE; 37 return radioMode;