[S3C2440] ADC采集数据花费时间和理论值不一致

[复制链接]
1854|5
 楼主| 小虾m米i 发表于 2015-12-22 09:51 | 显示全部楼层 |阅读模式
               大家好!我在使用TQ2440 ADC采集外部传感器数据时,设定预分频值为49,即0x31,理论上AD转换所花时间根据公式计算是5us(PCLK是50MHz,没改过)。我用四通道循环采数据,每通道采集1000个数据,那理论上需要20ms,但是实际上所花时间近4s这样,请问这是怎么回事?难道是底层驱动代码执行的时候花的时间比较长?底层是以中断的方式获取数据。希望大神为我解答,小弟分不多,先谢谢!
阿南 发表于 2015-12-22 14:07 | 显示全部楼层
一般理论值和实践都会有些误差。但误差不会太大,如果太大应该是计算有误,或者比如中断处理,采集后处理等执行时间没有计算进去。
fu563048951 发表于 2015-12-23 09:43 | 显示全部楼层
你时间是怎么计算的?AD转换完成是用什么方式读取的?
 楼主| 小虾m米i 发表于 2015-12-23 19:54 | 显示全部楼层
阿南 发表于 2015-12-22 14:07
一般理论值和实践都会有些误差。但误差不会太大,如果太大应该是计算有误,或者比如中断处理,采集后处理等 ...

AD转换完成的值是使用中断的方式来读取,这样耗费的时间相对来说是比较长的,但是现在的时间误差相差的实在是太大了,这样采样频率就太低了,不知道是不是这个原因。
 楼主| 小虾m米i 发表于 2015-12-23 19:55 | 显示全部楼层
fu563048951 发表于 2015-12-23 09:43
你时间是怎么计算的?AD转换完成是用什么方式读取的?

AD转换时间是按照手册的计算公式计算的。AD在转换完成后用中断的方式来读取数据。
阿南 发表于 2015-12-24 09:32 | 显示全部楼层
小虾m米i 发表于 2015-12-23 19:55
AD转换时间是按照手册的计算公式计算的。AD在转换完成后用中断的方式来读取数据。 ...

中断处理是很需要时间的。楼主可以测试一下:不启用AD,而只有中断,看需要多长时间
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

7

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部