打印

关于stm32系统时钟的一些问题

[复制链接]
2607|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
无冕之王|  楼主 | 2010-6-30 10:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
关于系统时钟有几个疑问,想请教大家
1,一个系统的系统时钟的大小是由什么来决定的阿?比如我刚开始建系统时选择使用了最高频率72M,等到现在整个系统的功能写的差不多了,老板问我能不能将频率调低一点,减少功耗,我就有点焉了,不知道怎么算我的这个系统的最小能工作的频率是多少,所以想请教一下大家,这个要怎么算阿
2.就是就软体来说,是不是系统时钟越大越好阿?比如一个系统在36M频率下可以工作,那如果我将频率调成72M的话,系统是不是执行速度要快一倍阿?那将频率调低的话会使系统的执行变慢吗?
3.还有一个问题是关于I2C的速度的问题,STM32中I2C的最高速度是400K,我一开始就选择了最高速度,因为我们这个系统需要快速,可是发现400K时,I2C一直都读取数据的话,就会Hang住,后来我尝试将速度减小,发现100k时,就不会Hang住,一直读下去都没有问题,所以就特别奇怪,按理说100k时如果能正常工作的话,那400k不是更应该能正常工作吗,怎么会Hang住啊,在这里请教下大家是什么原因啊
沙发
hdp7891000| | 2010-11-2 14:06 | 只看该作者
1.我也不会算
2.是、快或许有一倍、会变慢
3.与你的外设速度有关

使用特权

评论回复
板凳
香水城| | 2010-11-2 17:24 | 只看该作者
1)理论计算很麻烦,最好通过实验方法找到最合适的配置。
2)CPU频率高,运算速度也快;反之频率低,运算速度也慢。
3)2楼说的在理。

使用特权

评论回复
地板
hdp7891000| | 2010-11-2 18:46 | 只看该作者
3# 香水城

得到斑竹的肯定很happy啊:lol

使用特权

评论回复
5
rockli| | 2010-11-2 21:23 | 只看该作者
从来不用stm32硬件i2c的路过。

使用特权

评论回复
6
McuPlayer| | 2010-11-2 22:43 | 只看该作者
I2C要想跑高速,除了主控MCU和目标Device的端口速度,上拉电阻是个重点
当然SCL和SDA的走线长度也有影响

Maxim有个I2C提速的IC,就是在不减小上拉电阻的前提下加快上升时间

使用特权

评论回复
7
xwj| | 2010-11-2 23:02 | 只看该作者
呵呵,LS说的对,400k时一般推荐2.2k的上拉电阻,必须要有

使用特权

评论回复
8
jgphu| | 2010-11-3 11:49 | 只看该作者
如果你的设备是电池供电的,你当然要考虑时钟频率,因为它是和功耗成正比的,要合理安排系统及各个外设的频率,以达到实现产品功能的需要。一个系统的时钟大小由什么定?由你的产品定,你想一下,如何用最低的时钟来完成你的产品,当然,时钟小一点,系统运行慢点,直到时钟小到你的系统运行有问题了,你才要考虑加大时钟频率来顺利实现产品正常工作。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:喜欢远行

160

主题

3331

帖子

0

粉丝