ADC使能与校准的顺序问题

[复制链接]
2291|2
 楼主| st316 发表于 2012-11-17 14:57 | 显示全部楼层 |阅读模式
今天看手册,看到了下面一段话,说是在对AD校准前,ADC必须处于断电状态超过2个ADC时钟周期,如下图(RM0008 第215页) 2012-11-17 14-50-12.png


可是STM32F10x_StdPeriph_Lib_V3.5.0的官方例程里面,却是先给ADC上电,再校准。如下:(STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\ADC\RegSimul_DualMode\main.c 第114行)
  1.   /* Enable ADC1 */
  2.   ADC_Cmd(ADC1, ENABLE);
  3.   /* Enable Vrefint channel17 */
  4.   ADC_TempSensorVrefintCmd(ENABLE);

  5.   /* Enable ADC1 reset calibration register */   
  6.   ADC_ResetCalibration(ADC1);
  7.   /* Check the end of ADC1 reset calibration register */
  8.   while(ADC_GetResetCalibrationStatus(ADC1));

  9.   /* Start ADC1 calibration */
  10.   ADC_StartCalibration(ADC1);
  11.   /* Check the end of ADC1 calibration */
  12.   while(ADC_GetCalibrationStatus(ADC1));



为什么例程与手册里的顺序不一样,是我哪儿理解有误吗?
airwill 发表于 2012-11-19 10:34 | 显示全部楼层
是理解有误.
校准操作当然是要 ADCON 后. 否则 ADC 系统不能工作, 又如何校准.
在对AD校准前,ADC必须处于断电状态超过2个ADC时钟周期
这也就是说, 在 ADON 之前, 要有个关闭 ADC 的过程 (关闭时间不少于2个ADC时钟周期)

评论

在ad这里可以发现您的身影~  发表于 2013-10-15 14:55
figo20042005 发表于 2012-11-19 10:56 | 显示全部楼层
学习了,LS说的很精辟
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

167

帖子

3

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