我在之前的微文中有提到基于MDK自带逻辑分析仪输出波形的信息。发现有人对使用MDK自带逻辑分析仪实现波形输出比较感兴趣。下面使用STM32F334的DAC模块,输出一任意波形,并通过ARM MDK IDE自带的逻辑分析仪将波形显示出来。我尽量就整个过程描述得详细点。
我这里使用TIM6的更新事件触发DMA,让DMA将我事先准备好的内存数据传输到DAC通道1数据保持寄存器【DAC1->DHR12R1】。然后,我在TIM6的中断里将DAC数据输出寄存器【DOR】的内容读到一个全局变量【DAC_Out】,将来作为逻辑分析仪里的一个模拟量并输出该信号。
同时,我将DAC的输出端接到ADC1模块的通道1作为其输入,将DAC过来的信号进行AD转换,并通过DMA将ADC结果存放到另一个内存空间。我利用TIM3更新事件周期性触发ADC,并在TIM3更新中断里将最新ADC数据赋给另一个全局变量【ADC_Res】,作为MDK_IDE逻辑分析仪的另外一路模拟量,也将输出其波形。
一、下面开始使用STM32CubeMx做图形化配置
1、DAC的配置如下。配置很