static void printTPSInfo(void) { #if EFI_PROD_CODE GPIO_TypeDef* port = getAdcChannelPort(engineConfiguration->tpsAdcChannel); int pin = getAdcChannelPin(engineConfiguration->tpsAdcChannel); scheduleMsg(&logger, "tps min %d/max %d v=%f @%s%d", engineConfiguration->tpsMin, engineConfiguration->tpsMax, getTPSVoltage(), portname(port), pin); #endif scheduleMsg(&logger, "current 10bit=%d value=%f rate=%f", getTPS10bitAdc(), getTPS(), getTpsRateOfChange()); }
char * getPinNameByAdcChannel(const char *msg, adc_channel_e hwChannel, char *buffer) { #if HAL_USE_ADC || defined(__DOXYGEN__) if (hwChannel == EFI_ADC_NONE) { strcpy(buffer, "NONE"); } else { strcpy((char*) buffer, portname(getAdcChannelPort(msg, hwChannel))); itoa10(&buffer[2], getAdcChannelPin(hwChannel)); } #else strcpy(buffer, "NONE"); #endif return (char*) buffer; }
static void printTPSInfo(void) { #if (EFI_PROD_CODE && HAL_USE_ADC) || defined(__DOXYGEN__) if (!engineConfiguration->hasTpsSensor) { scheduleMsg(&logger, "NO TPS SENSOR"); return; } GPIO_TypeDef* port = getAdcChannelPort(engineConfiguration->tpsAdcChannel); int pin = getAdcChannelPin(engineConfiguration->tpsAdcChannel); scheduleMsg(&logger, "tps min %d/max %d v=%f @%s%d", engineConfiguration->tpsMin, engineConfiguration->tpsMax, getTPSVoltage(PASS_ENGINE_PARAMETER_F), portname(port), pin); #endif scheduleMsg(&logger, "current 10bit=%d value=%f rate=%f", getTPS10bitAdc(), getTPS(PASS_ENGINE_PARAMETER_F), getTpsRateOfChange()); }
static void printFullAdcReport(void) { for (int index = 0; index < EFI_ADC_SLOW_CHANNELS_COUNT; index++) { appendMsgPrefix(&logger); int hwIndex = getAdcHardwareIndexByInternalIndex(index); GPIO_TypeDef* port = getAdcChannelPort(hwIndex); int pin = getAdcChannelPin(hwIndex); int adcValue = getAdcValueByIndex(index); appendPrintf(&logger, " ch%d %s%d", index, portname(port), pin); appendPrintf(&logger, " ADC%d 12bit=%d", hwIndex, adcValue); float volts = adcToVolts(adcValue); appendPrintf(&logger, " v=%f", volts); appendMsgPostfix(&logger); scheduleLogging(&logger); } }
static void printFullAdcReport(void) { scheduleMsg(&logger, "fast %d slow %d", fastAdc.conversionCount, slowAdc.conversionCount); for (int index = 0; index < slowAdc.size(); index++) { appendMsgPrefix(&logger); adc_channel_e hwIndex = slowAdc.getAdcHardwareIndexByInternalIndex(index); GPIO_TypeDef* port = getAdcChannelPort(hwIndex); int pin = getAdcChannelPin(hwIndex); int adcValue = slowAdc.getAdcValueByIndex(index); appendPrintf(&logger, " ch%d %s%d", index, portname(port), pin); appendPrintf(&logger, " ADC%d 12bit=%d", hwIndex, adcValue); float volts = adcToVolts(adcValue); appendPrintf(&logger, " v=%f", volts); appendMsgPostfix(&logger); scheduleLogging(&logger); } }
static void processAdcPin(AdcConfiguration *adc, int index, const char *prefix) { adc_channel_e hwIndex = adc->getAdcHardwareIndexByInternalIndex(index); GPIO_TypeDef* port = getAdcChannelPort(hwIndex); int pin = getAdcChannelPin(hwIndex); int copy = stepCoutner; int c = 0; while (!isTimeForNextStep(copy)) { print("%s ch%d hwIndex=%d %s%d\r\n", prefix, index, hwIndex, portname(port), pin); int adcValue = adc->getAdcValueByIndex(index); // print("ADC%d val= %d%s", hwIndex, value, DELIMETER); float volts = adcToVolts(adcValue) * 2; print("v=%f adc=%d c=%d (hit 'n'<ENTER> for next step\r\n", volts, adcValue, c++); chThdSleepMilliseconds(300); } }
static void printFullAdcReport(Logging *logger) { scheduleMsg(logger, "fast %d slow %d", fastAdc.conversionCount, slowAdc.conversionCount); for (int index = 0; index < slowAdc.size(); index++) { appendMsgPrefix(logger); adc_channel_e hwIndex = slowAdc.getAdcHardwareIndexByInternalIndex(index); if(hwIndex != EFI_ADC_NONE && hwIndex != EFI_ADC_ERROR) { ioportid_t port = getAdcChannelPort("print", hwIndex); int pin = getAdcChannelPin(hwIndex); int adcValue = slowAdc.getAdcValueByIndex(index); appendPrintf(logger, " ch%d %s%d", index, portname(port), pin); appendPrintf(logger, " ADC%d 12bit=%d", hwIndex, adcValue); float volts = adcToVolts(adcValue); appendPrintf(logger, " v=%.2f", volts); appendMsgPostfix(logger); scheduleLogging(logger); } } }
static void initAdcHwChannel(adc_channel_e hwChannel) { GPIO_TypeDef* port = getAdcChannelPort(hwChannel); int pin = getAdcChannelPin(hwChannel); initAdcPin(port, pin, "hw"); }
static void initAdcHwChannel(adc_channel_e hwChannel) { ioportid_t port = getAdcChannelPort(hwChannel); int pin = getAdcChannelPin(hwChannel); initAdcPin(port, pin, "hw"); }