[技术问答] HC32F460 ADC转换速度比预计的慢一倍,是怎么回事呢?

[复制链接]
1620|13
 楼主| ddb_21ic 发表于 2022-2-24 17:25 | 显示全部楼层 |阅读模式
    /* Set bus clk div. */
    stcSysClkCfg.enHclkDiv = ClkSysclkDiv1;     //200M, Max 200MHz CPU DMA Flash SRAM
    stcSysClkCfg.enExclkDiv = ClkSysclkDiv2;    //100M, Max 100MHz SDIO CAN
    stcSysClkCfg.enPclk0Div = ClkSysclkDiv1;    //200M, Max 200MHz Timer6
    stcSysClkCfg.enPclk1Div = ClkSysclkDiv2;    //100M, Max 100MHz USARTx TIM SPI
    stcSysClkCfg.enPclk2Div = ClkSysclkDiv4;    // 50M, Max  60MHz ADC
    stcSysClkCfg.enPclk3Div = ClkSysclkDiv4;    // 50M, Max  50MHz RTC I2C CMP WDT
    stcSysClkCfg.enPclk4Div = ClkSysclkDiv2;    //100M, Max 100MHz ADC TRNG
    CLK_SysClkConfig(&stcSysClkCfg);

//ADC Clock set, PCLK2=50MHz PCLK4=100MHz
//Select PCLK2 as adc analog clok, PCLK4 as adc digital clock.
    CLK_SetPeriClkSource(ClkPeriSrcPclk);

//ADCCLK=50MHz -> 200Ksps, Tsamp + Tconv_13clk = 250clk
//实际使用中,400sps用了4ms, 改成112+13速度恢复正常
    uint8_t au8Adc1SaSampTime[1] = {112};  
tpgf 发表于 2022-3-3 11:10 | 显示全部楼层
有其他功能代码吗
guanjiaer 发表于 2022-3-3 11:22 | 显示全部楼层
这个时间是如何检测到的呢
heimaojingzhang 发表于 2022-3-3 11:29 | 显示全部楼层
全速跑起来也是慢吗
keaibukelian 发表于 2022-3-3 11:36 | 显示全部楼层
最大采样率能达到多少啊
labasi 发表于 2022-3-3 11:42 | 显示全部楼层
在什么情况下有可能拖慢呢
paotangsan 发表于 2022-3-3 11:50 | 显示全部楼层
改成其他倍数关系呢
match007 发表于 2022-3-8 17:55 | 显示全部楼层
请问,怎么预计、预估呢
chenqianqian 发表于 2022-3-9 08:18 来自手机 | 显示全部楼层
你是怎么觉得它慢了
 楼主| ddb_21ic 发表于 2022-3-15 11:36 | 显示全部楼层
guanjiaer 发表于 2022-3-3 11:22
这个时间是如何检测到的呢

ADC->DMA->中断->GPIO
 楼主| ddb_21ic 发表于 2022-3-15 11:38 | 显示全部楼层
chenqianqian 发表于 2022-3-9 08:18
你是怎么觉得它慢了

计算需要250clk采样时间,示波器测量转换速度
 楼主| ddb_21ic 发表于 2022-3-15 11:39 | 显示全部楼层
paotangsan 发表于 2022-3-3 11:50
改成其他倍数关系呢

修改采样时间,就达到目标转换速度了
豌豆爹 发表于 2022-3-16 09:38 | 显示全部楼层
时间是怎么检测到的了
martinhu 发表于 2022-3-17 15:12 | 显示全部楼层
之前测试过2.5M的采样率时间正常的,你看看是不是其他地方还有分频
您需要登录后才可以回帖 登录 | 注册

本版积分规则

107

主题

1124

帖子

3

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