2020-01-23 14:33发布
takashiki 发表于 2014-7-3 08:55 你用的时钟频率多高?那个帖子说他的是24M的,我都是基于他的前提分析的。你不要弄个32M的和我这个比较。 ...
煮酒fu 发表于 2014-7-3 09:55 我的22.1184.
takashiki 发表于 2014-7-3 06:08 测IO翻转不是这么测得,你这个也太瞧不起51了。 应该是用CPL P0.0填满整个ROM,不用循环指令,因为循环指 ...
最多设置5个标签!
我的22.1184.
22.1184M的理论最大IO翻转速率(仅对STC的负责,其他的有快有慢,但计算方法是一样的):
12T:22.1184/12/2=0.9216MHz(直接对IO位取反)
6T:22.1184/6/2=1.8432MHz(直接对IO位取反)
1T:22.1184/3/2=3.6864MHz(对整个IO端口赋值,位操作要慢不少)
测量IO翻转不能有循环不能有中断,因为这些都会打断IO翻转的流程白白消耗CPU时间,从而使得输出变慢。
是的,不用循环的确快。但是执行到rom末尾咋办,会自己跑到ooooh吗?我估计pc会从o到64k的最大地址,然后pc翻转为o接着执行。如果用的单片机rom小于64k就会出现出现超出的执行nop指令,无法连续输出。对于擦除了的标准51单片机通电后CPU在干嘛这个的确是个问题,经过实验除了P0端口其它的基都高电平没啥变化。P0每一个脚有不同的连续波形出现。
假设对I5处理器直接编程输出方波估计GPIO的速度达不到要求。这就是考验内核性能与IO性能的问题。以前是晶振太快,于是有了12T的51单片机,现在工艺牛逼了,出现了6T 1T单片机。说不定那天就上锁相环倍频了。
一周热门 更多>