kopia lustrzana https://github.com/Hamlib/Hamlib
Add serialnum parser for MDS rig
rodzic
fd24547386
commit
d1dccffd6b
|
@ -0,0 +1,114 @@
|
|||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
/* DB25 Pins
|
||||
1 - GND
|
||||
2 - TXD
|
||||
3 - RXD
|
||||
4 - RTS
|
||||
5 - CTS
|
||||
6 - DSR
|
||||
7 - Signal ground (tied to 1?)
|
||||
8 - DCD
|
||||
9 - Tx Audio 600Ohm - Pin 7 is gnd
|
||||
10 - RUS Receiver Unsquelched Sensor
|
||||
11 - Rx Audio 600Ohm - Pin 7 is gnd
|
||||
12 - Radio Inhibit (Sleep).
|
||||
13 - Reserved
|
||||
14 - PTT +5V
|
||||
|
||||
|
||||
void serial_num(char *s)
|
||||
{
|
||||
char model[16];
|
||||
char *operation;
|
||||
char *modem;
|
||||
char *rxfreq, *txfreq;
|
||||
char *bandwidth;
|
||||
char *diagnostics;
|
||||
char *agency;
|
||||
|
||||
memcpy(model, s, 5);
|
||||
model[5] = 0;
|
||||
|
||||
if (s[5] == 'B') { operation = "Base"; }
|
||||
else { operation = "Remote"; }
|
||||
|
||||
if (s[8] == 'B') { modem = "9600"; }
|
||||
else { modem = "19200"; }
|
||||
|
||||
if (s[9] == '0')
|
||||
diagnostics = "None";
|
||||
else
|
||||
diagnostics = "Non-Intrusive";
|
||||
if (s[10] == '1') { bandwidth = "12.5KHz"; }
|
||||
else { bandwidth = "25KHz"; }
|
||||
|
||||
if (s[14] == 'N')
|
||||
agency = "N/A";
|
||||
else
|
||||
agency = "FCC/IC";
|
||||
|
||||
/*
|
||||
/ 01234567890123456
|
||||
9710AXN1B11C00FFA
|
||||
5 = X/N Base/Remote
|
||||
6 = N Non-redundant
|
||||
7 = Input voltage (1=10.5 to 16VDC)
|
||||
8 = Modem (B=9600 C=19200)
|
||||
9 = Diagnostics (0=None, 1=Non-Intrusive)
|
||||
10 = Bandwidth (1=12.5 2=25)
|
||||
11 = Rx Freq (A=800-860, B=860-900, C=900-960)
|
||||
12 = Tx Freq (1=800-880, 2=880-960)
|
||||
13 = 0 = Full
|
||||
14 = Agency (N=N/A F=FCC/IC)
|
||||
*/
|
||||
|
||||
if (s[0] == '9')
|
||||
{
|
||||
switch (s[11])
|
||||
{
|
||||
case 'A':
|
||||
rxfreq = "800-850MHz";
|
||||
break;
|
||||
|
||||
case 'B':
|
||||
rxfreq = "860-899MHz";
|
||||
break;
|
||||
|
||||
case 'C':
|
||||
rxfreq = "900-960MHz";
|
||||
break;
|
||||
|
||||
default:
|
||||
rxfreq = "Unknown!!";
|
||||
}
|
||||
|
||||
switch (s[12])
|
||||
{
|
||||
case '1':
|
||||
txfreq = "800-880MHz";
|
||||
break;
|
||||
|
||||
case '2':
|
||||
txfreq = "880-960MHz";
|
||||
break;
|
||||
|
||||
default:
|
||||
txfreq = "Unknown!!";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
printf("Model %s %s Modem(%s) Rx(%s) Tx(%s) Bandwidth(%s) Agency=%s Diagnostics=%s\n",
|
||||
model, operation,
|
||||
modem, rxfreq, txfreq, bandwidth, agency, diagnostics);
|
||||
}
|
||||
|
||||
int
|
||||
main()
|
||||
{
|
||||
serial_num("9710BXN1B11C9ONFA");
|
||||
serial_num("9710AXN1B11C00FFA");
|
||||
return 0;
|
||||
}
|
Ładowanie…
Reference in New Issue