//下面的AD_GetValue()函数变化为可改变通道的:uint16_tAD_GetValue(uint8_tADC_Channel){ADC_RegularChannelConfig(ADC1,ADC_Channel,1,ADC_SampleTime_55Cycles5);//通道可改ADC_SoftwareStartConvCmd(ADC1,ENABLE);//软件触发,ADC开始转换while(ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC)==RESET);//ADC转换需...
float ADC_Value(uchar Channel) { float AD_Value; uint i; for(i=0;i《10;i++) //采样10次取平均值 AD_Value+=ADC_Get(Channel); //转换100次求平均值(提高精度) AD_Value/=10; AD_Value=(AD_Value*5)/1024;//ADRJ=0,取10位转换结果ADC_RES+ADC_RESL=1024*Vin/Vcc return AD_Value; }...
uint16_t adc_get_value(void) {returnADC1 ->DR; } 进过多次调试,最终的解决方式如下: 1.修改ADC时钟频率 RCC_ADCCLKConfig(RCC_PCLK2_Div8); 2.修改ADC启动转换函数 voidadc_start_convert(uint8_t ch) { ADC_RegularChannelConfig(ADC1, ch,1, ADC_SampleTime_13Cycles5);//ADC1->SMPR2 = (ADC...
1//首先调用2HAL_ADC_Start_IT(&hadc1);3HAL_TIM_Base_Start(&htim8);45//编写AD转换完成处理函数6voidHAL_ADC_ConvCpltCallback(ADC_HandleTypeDef*AdcHandle)7{8printf("%d\r\n",HAL_ADC_GetValue(&hadc1));9}
val = GetADCValue(0); //获取ADC通道0的转换值 ValueToString(str, val); //转为字符串格式的电压值 LcdShowStr(0, 1, str); //显示到液晶上 //显示通道1的电压 val = GetADCValue(1); ValueToString(str, val); LcdShowStr(6, 1, str); ...
3. 读取ADC值函数 uint16_t Read_ADC0(void) { HAL_ADC_Start(&hadc1); // 启动转换 if (HAL_ADC_PollForConversion(&hadc1, 10) == HAL_OK) // 等待转换完成 { return HAL_ADC_GetValue(&hadc1); // 返回12位转换结果 } return 0; ...
对于main函数如下: int main(void) { USART3_Config(); ADC1_Init(); printf("输入ADC值"); while(1) { ADC_ConvertedValueLocal =(float)ADC_ConvertedValue/4096*3.3; //读取ADC转换的值 printf("\r\n the current AD value = 0x%04X \r\n",ADC_ConvertedValue); ...
let value; const img = this._ctx.getImageData(x * this._devicePixelRatio, y * this._devicePixelRatio, 1, 1); let data = img.data[3]; value = (Math.abs(this.maxValue - this.minValue) * (data / 255)) >> 0; return value; } _tMousemove() { if (this._eventType == 'onm...
); //等待转换结束 return ADC1_GetConversionValue(); //返回ADC结果 } //这个初始化代码很重要,不能省,每次切换通道都要初始化一次!在main函数中直接调用即可:TempADC=Get_ADCCH_Value(ADC1_CHANNEL_1); //获取AD转化值 WetADC=Get_ADCCH_Value(ADC1_CHANNEL_3; //获取AD转化值 ...
在绑定属性时,如果我们直接把属性暴露出去,虽然写起来很简单,但是,没办法检查参数,导致可以把成绩随便改。这样显然是不行的,那么在函数中,我们往往如何提高程序的鲁棒性呢? class Student(object): def get_score(self): return self._score def set_score(self, value): ...