主时钟频率与for循环延时的每次延时关系计算

2019-07-20 08:15发布

我现在正在做ads1256的AD采集,想问大家几个问题。
(1)我用的是stm32f429固件库,初始化时钟是180MHZ:
      Stm32_Clock_Init(360,25,2,8);
      delay_init(180);
为什么我在system_stm32f4xx.c中看见的主时钟频率是16MHZ:uint32_t SystemCoreClock = 16000000;
请问这两者有问题吗?     
(2)for循环延时是怎么计算的,它和主时钟是什么关系?      
static void ADS1256_DelaySCLK(void)
{
        uint16_t i;
        for (i = 0; i <80; i++);
}
希望有识之士能够帮帮忙解答,谢谢!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
正点原子
1楼-- · 2019-07-20 10:17
1,通过PLL倍频的,库函数那是晶振频率,不是系统运行频率。
2,无法计算,你可以加代码统计,但是无法直接计算运行时间。
简单的旅行
2楼-- · 2019-07-20 12:16
自己顶一下
szczyb1314
3楼-- · 2019-07-20 14:36
 精彩回答 2  元偷偷看……
简单的旅行
4楼-- · 2019-07-20 18:12
 精彩回答 2  元偷偷看……
简单的旅行
5楼-- · 2019-07-20 18:32
正点原子 发表于 2018-5-9 10:38
1,通过PLL倍频的,库函数那是晶振频率,不是系统运行频率。
2,无法计算,你可以加代码统计,但是无法直 ...

谢谢原子哥的解答,请问SystemCoreClock是干什么的,它的值可以改吗?

一周热门 更多>