[求助] 求助啊!!!!!!STM32的IO速度与指令执行速度的问题??

zxdplay   2012-7-7 22:36 楼主
72Mhz的STM32 ,PLCK2=72Mhz
用逻辑分析仪测试,得到的速度为0.24us/指令,理论上应该是0.14us/指令(模拟器验证)
请问这个速度为什么会这么慢72Mhz的STM32F103实际只有40Mhz左右

测试代码

          ldr r3, =GPIOG_BSRR
          mov r1, #0x00100000 //PG4 上升
          str r1, [r3]
          ALIGN   
         
          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010         
                                             
          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010

          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010

          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010

          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010         
          mov r1, #0x00000010
          mov r1, #0x00000010

          mov r1, #0x00000010 //PG4 下降
          str r1, [r3]

新建 Windows位图图像.JPG

IRQ/Debug 通道捕捉PG4

用分析仪测得PG4升降周期为0.8750us,分析仪带宽为24Mhz,有误差存在,但并不影响测速
(0.8750 - 0.25)/25 = 0.025us, 0.25为IO翻转耗时,8Mhz的翻转速度
代码是在flash中跑的,平均 0.025us/指令,大约40Mhz的频率

还有就是翻转速度为什么这么慢,不管我怎么设置都只有8Mhz的速度,理论上可以实现18Mhz

以上请教高手指点迷津!!

[ 本帖最后由 zxdplay 于 2012-7-8 17:16 编辑 ]

回复评论 (5)

楼主还有如用汇编编一个长一些的延时函数,并控制IO端口状态,然后测一下端口状态的变化时间或频率

你用的仪器是不是个虚拟的?如果是名牌产品,我就不怀疑了。
点赞  2012-7-8 14:02

回复 沙发 dontium 的帖子

长一些的延时算出来也是这个值
逻辑分析仪是虚拟的,是DIY的名牌产品
点赞  2012-7-8 16:53

继续研究

ldr r3, =PG7_BRR
          ldr r4, =PG7_BSRR
          mov r1, #0x1
          str r1, [r3]
          str r1, [r4]
          bx lr



很奇怪,用推挽输出能够达到18Mhz左右
开漏输出翻转周期始终在在 0.25us-0.33us左右,推挽可以达到83ns以下

点赞  2012-7-8 17:06
用延时函数(必须精确知道它的延时周期)控制端口翻转,再配合测量端口的频率,这样是可行的
点赞  2012-7-8 20:32
谢谢dontium这位兄弟,已经找到问题了,上拉电阻太大了,导致信号上升沿的延时
点赞  2012-7-8 23:06
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复