关于AD采样时间、转换时间、间隔延时时间的疑问

2019-07-21 04:33发布

1、STM32F4的ADC有两个参数什么意思不太明白,特来此请教原子哥。
分别是
1)ADC_SampleTime_480Cycles
2)ADC_TwoSamplingDelay_5Cycles
还有转换时间Tconv,转换时间Tconv=ADC_SampleTime_480Cycles +120Cycles + ADC_TwoSamplingDelay_5Cycles;//是否正确?
2、看到原子哥在一个帖子里这样说:你这是要求ADC连续不停的转换,以达到你所谓的200Hz的采样频率。
我想问的是,ADC_SampleTime_480Cycles,即采样时间内CPU能不能干其他的事?
3、我设置了ADC的DMA,DMA_BufferSize = 4096;开启了DMA传输完成中断,是不是通过DMA将4096字节的数据传送到相应地址之后,就会产生DMA中断?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
正点原子
1楼-- · 2019-07-21 07:27
 精彩回答 2  元偷偷看……
正点原子
2楼-- · 2019-07-21 12:59
回复【3楼】傲娇的放牛娃:
---------------------------------
看你创建的文件是什么格式了?
如果是txt,必须是string啊。
如果是bin,那可以直接写数值,但是你电脑有不能直接看.bin,所以,还是txt方便。

至于转换时间,你只能去自己优化代码了,呵呵。或者不用sprintf,自己写个函数实现。
傲娇的放牛娃
3楼-- · 2019-07-21 13:35
回复【2楼】正点原子:
---------------------------------
谢谢原子哥,还有个问题。
就是移植FATFS的SD卡写入--浮点型--数据只能先转换为字符,再写进去么?
直接写数字的话,打开会成乱码。但是转换为字符的话,太耗时间了,我是用的是sprintf(&textFileBuffer[20+j*8+i*512],"%07.2f",ADC3ConvertedVoltage);
转换12K到96K的字符的数据竟然花了1秒。还是F4的板子。
我该怎么办呢?
傲娇的放牛娃
4楼-- · 2019-07-21 19:13
回复【4楼】正点原子:
---------------------------------
我在看看。谢谢原子哥

一周热门 更多>