Example #1
0
/**
 * Timer callback for DC/DC negative feedback loop.
 * This is an internal function.
 */
static void Atomizer_TimerCallback(uint32_t unused) {
	if(Atomizer_curState == POWEROFF) {
		// Powered off, nothing to do
		return;
	}

	// Schedule conversion (on reserved slot, if needed)
	// We don't care if it fails, we'll call it again
	ADC_ReadAsyncEx(ADC_MODULE_VATM, Atomizer_NegativeFeedback, 0, 1);
}
Example #2
0
File: ADC.c Project: ploop/evic-sdk
uint16_t ADC_Read(uint32_t moduleNum) {
	volatile int32_t result = -1;

	// Keep trying until we get a slot
	while(!ADC_ReadAsyncEx(moduleNum, ADC_SyncCallback, (uint32_t) &result, 0));

	// Wait until conversion is complete
	while(result == -1);

	return result;
}
Example #3
0
File: ADC.c Project: ploop/evic-sdk
uint8_t ADC_ReadAsync(uint32_t moduleNum, ADC_Callback_t callback, uint32_t callbackData) {
	return ADC_ReadAsyncEx(moduleNum, callback, callbackData, 0);
}