引言:在进行ADC转换时,如果只采集一个IO的转换,那转换后的数据将会存储在数据寄存器,每转换一次,数据寄存器就被新来的数据覆盖,因此,只进行一个通道转换是没问题的。但如果是多通道转换呢?数据寄存器只会保存最后一个通道转换的数据,因为前面都被覆盖了,串口上所有通道显示的电压值也全是最后一个通道的AD转换数据。所以,DMA传输横空出世了,它的作用是在ADC第一个通道转换完成后第一时间将数据转运出来,防止被下一个通道转运的数据覆盖,把转运后的数据存在一个和通道数数目一样的数组里面就好了,这样,就能第一时间把所有通道数据保留在数组里面,然后用串口一一显示。
|