[活动专区] 【AT-START-F407测评】六、ADC_LM35

[复制链接]
819|3
 楼主| lisingch 发表于 2021-2-1 22:34 | 显示全部楼层 |阅读模式
      本次实验利用LM35DZ温度传感器模块采集环境温度,温度数据通过ADC1_IN14采集处理,并利用AT-Link的虚拟串口将数据传至PC端,利用串口调试助手软件进行显示。
一、实验资源
1、AT-START-F407开发板;
2、keil v5.31.0.0;
3、BSP等相关资源;
4、LM35模块;
5、SSCOM串口软件;

二、相关知识学习
      AT32F407VGT7集成了12位逐次逼近型模拟数字转换器(ADC),支持16个外部通道、2个内部通道,可在单次、连续、扫描或间断模式下工作。使用中要注意的是ADC工作时钟不能大于28MHz。
2021-02-01_220114.png
2021-02-01_220313.png
2021-02-01_220337.png
2021-02-01_220455.png

三、硬件连接
      硬件连接比较简单,将LM35的“OUTPUT”端口与开发板上的PC4(ADC1_CH14)端口相连:
2021-02-01_220953.png
2021-02-01_221057.png

四、程序实现
      实验代码在“BSP”相关例程基础上修改而成。
  1. void ADC_Config(void)
  2. {
  3.         ADC_InitType ADC_InitStructure;

  4.         /* ADC1 configuration ------------------------------------------------------*/
  5.         ADC_StructInit(&ADC_InitStructure);
  6.         ADC_InitStructure.ADC_Mode              = ADC_Mode_Independent;
  7.         ADC_InitStructure.ADC_ScanMode          = DISABLE;
  8.         ADC_InitStructure.ADC_ContinuousMode    = ENABLE;
  9.         ADC_InitStructure.ADC_ExternalTrig      = ADC_ExternalTrig_None;
  10.         ADC_InitStructure.ADC_DataAlign         = ADC_DataAlign_Right;
  11.         ADC_InitStructure.ADC_NumOfChannel      = 1;
  12.         ADC_Init(ADC1, &ADC_InitStructure);
  13.        
  14.         /* ADC1 regular channels configuration */
  15.         ADC_RegularChannelConfig(ADC1, ADC_Channel_14, 1, ADC_SampleTime_28_5);

  16.         /* Enable ADC1 */
  17.         ADC_Ctrl(ADC1, ENABLE);

  18.         /* Enable ADC1 reset calibration register */   
  19.         ADC_RstCalibration(ADC1);
  1. int main(void)
  2. {
  3.         RCC_Config();
  4.         GPIO_Config();
  5.         ADC_Config();

  6.         Delay_init();
  7.        
  8.         UART_Print_Init(115200);
  9.        
  10.         while (1)
  11.         {
  12.                 ADCConvertedValue=ADC_GetConversionValue(ADC1);
  13.                 printf("Temp = %d",ADCConvertedValue);
  14.                 Delay_sec(1);
  15.         }
  16. }


五、实验结果
微信图片_20210201214222.jpg
2021-02-01_220711.png

六、总结
      本次实验对AT32F407VGT7微控制器的ADC模块进行了简单尝试,为ADC模块更深入地学习创造了良好开端。



baiguo 发表于 2021-2-4 15:14 | 显示全部楼层
你好, 结果精确吗
 楼主| lisingch 发表于 2021-2-4 18:22 | 显示全部楼层
baiguo 发表于 2021-2-4 15:14
你好, 结果精确吗

包括基准电压在内没有进行任何校准,实验过程只是对ADC模块的一次基础性尝试。
chenzuyan0359 发表于 2021-2-6 17:50 | 显示全部楼层
本帖最后由 chenzuyan0359 于 2021-2-6 17:57 编辑

66666666
97009601e663509487.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

99

主题

15007

帖子

19

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