001 // Copyright (c) National Instruments 2009. All Rights Reserved.
002 // Do Not Edit... this file is generated!
003
004 package edu.wpi.first.wpilibj.fpga;
005
006 import com.ni.rio.*;
007
008 public class tAccumulator extends tSystem
009 {
010
011 public tAccumulator(final int sys_index)
012 {
013 super();
014 m_SystemIndex = sys_index;
015 if (status.isNotFatal() && m_SystemIndex >= kNumSystems)
016 {
017 status.setStatus(NiRioStatus.kRIOStatusBadSelector);
018 }
019
020 }
021
022 protected void finalize()
023 {
024 super.finalize();
025 }
026
027 public int getSystemIndex()
028 {
029 return m_SystemIndex;
030 }
031
032 public static final int kNumSystems = 2;
033 public final int m_SystemIndex;
034
035
036 public static class tOutput
037 {
038 public tOutput(int regValue1, int regValue2, int regValue3)
039 {
040 Value = (((long)regValue1) << 32) | regValue2;
041 Count = regValue3;
042 }
043 public final long Value;
044 public final int Count;
045 }
046
047
048
049
050 //////////////////////////////////////////////////////////////////////////////////////////////////
051 // Accessors for Output
052 //////////////////////////////////////////////////////////////////////////////////////////////////
053 private static final int kOutput_Value_BitfieldMask = 0x00000000;
054 private static final int kOutput_Value_BitfieldOffset = 32;
055 private static final int kOutput_Count_BitfieldMask = 0xFFFFFFFF;
056 private static final int kOutput_Count_BitfieldOffset = 0;
057 private static final int kAccumulator0_Output_Address = 0x8184;
058 private static final int kAccumulator1_Output_Address = 0x8194;
059 private static final int kOutput_Addresses [] =
060 {
061 kAccumulator0_Output_Address,
062 kAccumulator1_Output_Address,
063 };
064
065 public tOutput readOutput()
066 {
067
068 int result = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status);
069 int regValue = result ;
070 int result2 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status);
071 int regValue2 = result2 ;
072 int result3 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status);
073 int regValue3 = result3 ;
074 return new tOutput(regValue, regValue2, regValue3);
075 }
076 public long readOutput_Value()
077 {
078
079 int result = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status);
080 int regValue = result ;
081 int result2 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status);
082 int regValue2 = result2 ;
083 int result3 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status);
084 int regValue3 = result3 ;
085 tOutput val = new tOutput(regValue, regValue2, regValue3);
086 return val.Value;
087 }
088 public long readOutput_Count()
089 {
090
091 int result = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status);
092 int regValue = result ;
093 int result2 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status);
094 int regValue2 = result2 ;
095 int result3 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status);
096 int regValue3 = result3 ;
097 tOutput val = new tOutput(regValue, regValue2, regValue3);
098 return val.Count;
099 }
100
101 //////////////////////////////////////////////////////////////////////////////////////////////////
102 // Accessors for Center
103 //////////////////////////////////////////////////////////////////////////////////////////////////
104 private static final int kAccumulator0_Center_Address = 0x817C;
105 private static final int kAccumulator1_Center_Address = 0x818C;
106 private static final int kCenter_Addresses [] =
107 {
108 kAccumulator0_Center_Address,
109 kAccumulator1_Center_Address,
110 };
111
112 public void writeCenter(final int value)
113 {
114
115 NiFpga.writeU32(m_DeviceHandle, kCenter_Addresses[m_SystemIndex], value, status);
116 }
117 public int readCenter()
118 {
119
120 return (int)(NiFpga.readU32(m_DeviceHandle, kCenter_Addresses[m_SystemIndex], status));
121 }
122
123 //////////////////////////////////////////////////////////////////////////////////////////////////
124 // Accessors for Deadband
125 //////////////////////////////////////////////////////////////////////////////////////////////////
126 private static final int kAccumulator0_Deadband_Address = 0x8188;
127 private static final int kAccumulator1_Deadband_Address = 0x8198;
128 private static final int kDeadband_Addresses [] =
129 {
130 kAccumulator0_Deadband_Address,
131 kAccumulator1_Deadband_Address,
132 };
133
134 public void writeDeadband(final int value)
135 {
136
137 NiFpga.writeU32(m_DeviceHandle, kDeadband_Addresses[m_SystemIndex], value, status);
138 }
139 public int readDeadband()
140 {
141
142 return (int)(NiFpga.readU32(m_DeviceHandle, kDeadband_Addresses[m_SystemIndex], status));
143 }
144
145 //////////////////////////////////////////////////////////////////////////////////////////////////
146 // Accessors for Reset
147 //////////////////////////////////////////////////////////////////////////////////////////////////
148 private static final int kAccumulator0_Reset_Address = 0x8180;
149 private static final int kAccumulator1_Reset_Address = 0x8190;
150 private static final int kReset_Addresses [] =
151 {
152 kAccumulator0_Reset_Address,
153 kAccumulator1_Reset_Address,
154 };
155
156 public void strobeReset()
157 {
158
159 NiFpga.writeU32(m_DeviceHandle, kReset_Addresses[m_SystemIndex], 1, status);
160 }
161
162
163
164
165
166 }