gps.h revision 1.5 1 1.5 christos /* $NetBSD: gps.h,v 1.5 2020/05/25 20:47:19 christos Exp $ */
2 1.1 kardel
3 1.1 kardel /****************************************************************************/
4 1.1 kardel /* gps.h */
5 1.1 kardel /* TrueTime GPS-VME and VME-SG */
6 1.1 kardel /* VME controller hardware commands and parameters. */
7 1.1 kardel /* created 010694 res */
8 1.1 kardel /* History: revised for 747i 3/94 */
9 1.1 kardel /****************************************************************************/
10 1.1 kardel
11 1.1 kardel
12 1.1 kardel #define GPS_VME "/dev/vme2" /* the device file for the GPS board */
13 1.1 kardel /* change it to whatever yours is */
14 1.1 kardel #define PRIO 120 /* set the realtime priority */
15 1.1 kardel #define NREGS 7 /* number of registers we will use */
16 1.1 kardel
17 1.1 kardel #define GFRZ1 0x0020 /* freeze cmd addr gen reg. 1 */
18 1.1 kardel #define GREG1A 0x0021 /* Gen reg. 1 Word A (units microsec to 0.001 sec) */
19 1.1 kardel #define GREG1B 0x0040 /* Gen reg. 1 Word B (units 0.01 sec to tens sec ) */
20 1.1 kardel #define GREG1C 0x0041 /* Gen reg 1 Word C (units mins and hours) */
21 1.1 kardel #define GREG1D 0x0042 /* Gen reg. 1 Word D (units days and status) */
22 1.1 kardel #define GREG1E 0x0043 /* Gen reg. 1 Word E (units Years ) */
23 1.1 kardel #define GUFRZ1 0x0022 /* unfreeze cmd addr gen reg 1 */
24 1.1 kardel
25 1.1 kardel #define MASKDAY 0x0FFF /* mask for units days */
26 1.1 kardel #define MASKHI 0xFF00
27 1.1 kardel #define MASKLO 0x00FF
28 1.1 kardel /* Use the following ASCII hex values: N(0x004e),S(0x0053),E(0x0045),
29 1.1 kardel W(0x0057), +(0x002B), - (0x002D) */
30 1.1 kardel
31 1.1 kardel #define LAT1 0x0048 /* Lat (degrees) */
32 1.1 kardel #define LAT2 0x0049 /* Lat (min, sec) */
33 1.1 kardel #define LAT3 0x004A /* Lat (N/S, tenths sec) */
34 1.1 kardel #define LON1 0x004B /* Lon (degrees) */
35 1.1 kardel #define LON2 0x004C /* Lon (min, sec) */
36 1.1 kardel #define LON3 0x004D /* Lon (E/W, tenths sec) */
37 1.1 kardel #define ELV1 0x004E /* Elev. (sign, 10,000 and 1000 ) */
38 1.1 kardel #define ELV2 0x004F /* Elev. (100, 10s, units, and .1) */
39 1.1 kardel
40 1.1 kardel #define CFREG1 0x0050 /* config. register 1 */
41 1.1 kardel #define CFREG2 0x00A0 /* config. register 2 */
42 1.1 kardel #define PMODE 0x00A4 /* Position mode */
43 1.1 kardel #define LOCAL 0x0051 /* Local hours offset */
44 1.1 kardel #define RATE 0x0054 /* Pulse rate output select */
45 1.1 kardel #define DAC 0x0055 /* OSC Control (DAC) select */
46 1.1 kardel
47 1.1 kardel #define PUMS 0x0056 /* Gen. preset register unit millisec */
48 1.1 kardel #define PMS 0x0057 /* Gen. preset register units hundreds and tens ms */
49 1.1 kardel #define PSEC 0x0058 /* Gen. preset register units tens and unit seconds */
50 1.1 kardel #define PMIN 0x0059 /* Gen. preset register units tens and unit minutes */
51 1.1 kardel #define PHRS 0x005A /* Gen. preset register units tens and unit hours */
52 1.1 kardel #define PDYS1 0x005B /* Gen. preset register units tens and unit days */
53 1.1 kardel #define PDYS2 0x005C /* Gen. preset register units hundreds days */
54 1.1 kardel #define PYRS1 0x005D /* Gen. preset register units tens and unit years */
55 1.1 kardel #define PYRS2 0x005E /* Gen. preset reg. units thousands and hundreds yrs */
56