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]
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 编辑 ]