项目场景:
使用STM32内部ADC做多通道ADC采集,为减小CPU开销,使用DMA模式。
cubemx操作步骤
1.手动输入STM32F103CBT6/STM32F103CBU6,选高速晶振,方便第二栏的时钟配置Clock Configuration
System Core-->RCC -->High Speed Clock(HSE)-->Crystal/Ceramic Resonator
2.配置下载SW模式
System Core-->SYS-->Dedug-->Serial Wire
添加DMA接受
3.配置串口1参数,添加DMA接受
Connectivity-->USART1-->Mode-->Asynchronous
Connectivity-->USART1-->Parameter Settings-->115200 8 N 1
Connectivity-->USART1-->DMA settings-->add 仅添加接受即可,通道自动分配,默认即可
5.配置FREERTOS
Middleware and Solft-->FREERTOS-->interface-->CMSIS_V1
Middleware and Solft-->FREERTOS-->Tasks and Queues-->Add 加两个任务即可
6.配置输出的参数,按如图配置即可
!注意路径不要出现中文
软件修改
注释ADC DMA的中断使能
打开main.c 添加变量(另加一个adc校准)
debug调试可以看到变量的值在跳动。