STM32L152 ADC使用总结

来源:互联网 发布:施工日记的软件 编辑:程序博客网 时间:2024/05/20 16:13
使用了STM32L152的ADC:图片          
STM32L152的ADC总结:
      在单通道单一转换模式下,使用ADC中断,未使用DMA。ADC中断向量的配置在库函数中的 msic.c 文件中,中断入口函数在 stm32l1xx_it.c 文件中。
      ADC配置:
                    (0)配置ADC的GPIO为模拟输入;
                    (1)使能HSI时钟,要等待HSI时钟开启;
                    (2)使能ADC时钟;
                    (3)配置ADC相关参数(转换精度,转换模式,字节对齐);
                    (4)配置ADC通道和采样时钟;
                    (5)配置ADC采样频率(预分频参数);
                    (6)配置ADC中断向量相关参数;
                    (7)开启ADC的EOC中断;
                    (8)给ADC上电,并检测ADC是否准备好;

                    (9)软件开启ADC;

      ADC中断函数的处理:
                                (1)判断EOC(End of conversion)标志位,因为在ADC配置中开启的是EOC中断;
                                (2)对EOC清零;
                                (3)对转换数值处理;
                                (4)再次给ADC上电;
                                (5)检测ADONS标志位,等待ADC准备好;
                                (6)开启软件打开方式转换;  
    STM32L1XX系列ADC能自动进入低功耗模式:
图片

STM32L1XX的ADC为内部3V基准电压,计算公式为:
图片
 
待解决问题:
(1) 得到的ADC测量值末位数字会跳变,FLUKE 15B测量末位数值也会跳变,供电电压不稳是肯定的,不知道换了电池供电是否会好点?是否需要软件滤波?
(2)STM32L1XX驱动LCD1602时,端口必须接上拉电阻,否则无显示 
(3)ADC四通道采样,DMA方式。。。。待测 。。。。。。。。。。。。
0 0