Esempio n. 1
0
/*
 * Class:     edu_wpi_first_wpilibj_hal_AnalogJNI
 * Method:    setAnalogSampleRate
 * Signature: (DLjava/nio/IntBuffer;)V
 */
JNIEXPORT void JNICALL Java_edu_wpi_first_wpilibj_hal_AnalogJNI_setAnalogSampleRate
  (JNIEnv * env, jclass, jdouble value, jobject status)
{
	ANALOGJNI_LOG(logDEBUG) << "SampleRate = " << value;
	jint * statusPtr = (jint*)env->GetDirectBufferAddress(status);
	setAnalogSampleRate( value, statusPtr );
	ANALOGJNI_LOG(logDEBUG) << "Status = " << *statusPtr;
}
Esempio n. 2
0
/**
 * Initialize the analog System.
 */
void initializeAnalog(int32_t *status) {
  std::lock_guard<priority_recursive_mutex> sync(analogRegisterWindowMutex);
  if (analogSystemInitialized) return;
  analogInputSystem = tAI::create(status);
  analogOutputSystem = tAO::create(status);
  setAnalogNumChannelsToActivate(kAnalogInputPins);
  setAnalogSampleRate(kDefaultSampleRate, status);
  analogSystemInitialized = true;
}
Esempio n. 3
0
// Doubles
void setAnalogSampleRateIntHack(int samplesPerSecond, int32_t *status) {
  setAnalogSampleRate(intToFloat(samplesPerSecond), status);
}
Esempio n. 4
0
/**
 * Set the sample rate per channel for all analog channels.
 * The maximum rate is 500kS/s divided by the number of channels in use.
 * This is 62500 samples/s per channel.
 * @param samplesPerSecond The number of samples per second.
 */
void AnalogInput::SetSampleRate(float samplesPerSecond) {
    int32_t status = 0;
    setAnalogSampleRate(samplesPerSecond, &status);
    wpi_setGlobalErrorWithContext(status, getHALErrorMessage(status));
}