阿波罗STM32 资料盘中的 程序源码 ADC 例程

2019-07-20 15:10发布


程序源码:
             每次获取值时 取20次然后去平均值:
              Get_Adc_Average(ADC_CHANNEL_5,20);
             每取一次值要延迟5ms:

              u16 Get_Adc_Average(u32 ch,u8 times)
             {
                  u32 temp_val=0;
                 u8 t;
                 for(t=0;t<times;t++)
                 {
                   temp_val+=Get_Adc(ch);
                   delay_ms(5);         //延迟5ms
               }
             return temp_val/times;
          }

           如果将次数改为一次那么获取的值就或在 0和1023 直接跳(PA5什么都不接)
          那么问题来了:
                                  ADC 频率在27M情况下,480个周期 ,分辨率12位,这个值不觉得很奇怪吗?  @八度空间 @yklstudent @Huangshuqian
                            难道每次AD 转换都要连续采多个数据,然后取平均值,每次取还要延迟一段时间?
                            如果需要1ms 采100次呢?

           





友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
whyviking
1楼-- · 2019-07-20 16:53
 精彩回答 2  元偷偷看……
xieyoub
2楼-- · 2019-07-20 19:48
使用的板子是STM32 F767  HAL源码库
bg8wj
3楼-- · 2019-07-20 22:33
什么都不接不跳的话,你的stm32一定坏了。
xieyoub
4楼-- · 2019-07-21 02:19
 精彩回答 2  元偷偷看……

一周热门 更多>