|
这项测试原来认为比较简单,按照原来的设置后来减少为ADC1的通道1、通道6、通道7.通道4,5 留给DAC使用。 因此修改STM32CubeMX为,见图24_2_1~4的选设。导出工程文件。 现在自定义变量区,定义一下变量: uint16_t ADC_Result[4],adcx[4],adcNum=16; 在自定义程序区添加函数声明,如果函数在main前边,可以不用声明。 void adcTest(void); 主函数main里添加: MX_ADC1_Init(); 在循环体中将刚才的printf函数改成: printf("ADC1=%4d ADC2=%4d ADC3=%4d \n\r", adcx[0],adcx[1],adcx[2]); 在主函数后边添加: //ADC Test void adcTest(void){ int i; adcx[0]=adcx[1]=adcx[2]=0; for(i=0;i<adcNum;i++){ HAL_ADCEx_Calibration_Start(&hadc1);//PA_1,6,7 HAL_ADC_Start_DMA(&hadc1,(uint32_t*)&ADC_Result,ADC_NUMOFCHANNEL); adcx[0]+=ADC_Result[1]; adcx[1]+=ADC_Result[2]; adcx[2]+=ADC_Result[3]; } adcx[0]=adcx[0]/adcNum;adcx[1]=adcx[1]/adcNum;adcx[2]=adcx[2]/adcNum; } 次函数的作用是调用测试一轮ADC 的3个输入通道,测试次数由adcNum的只值决定,本例为16次平均。 结果见截图23_2_5。 |
23-5
23-5
23-5
23-5
23-5
谢谢分享 |
STM32
超强工具——STM32CubeMX 你会用吗?
集结出发! STM32全国研讨会系列之一:ST智能门铃中国首秀
关于STM32启动文件的几个小问题
【银杏科技ARM+FPGA双核心应用】STM32H7系列35——USB_VCP_FS
【银杏科技ARM+FPGA双核心应用】STM32H7系列28——USB_HID
粉丝分享 | 图说CRC原理应用及STM32硬件CRC外设
STM32L151进入低功耗,并由RTC唤醒的故事
[转]stm32控制NFC模块(PN532)源码(P2P,模拟卡,读写卡等
STM32G070RB+LVGL移植
微信公众号
手机版