eddiewwm 发表于 2018-4-16 23:19:58

8F328P-U 在 16MHz 和 32MHz 工作頻率中的速度比較

本帖最后由 eddiewwm 于 2020-3-23 18:05 编辑

8F328P-U 在 16MHz 和 32MHz 工作頻率中的速度比較:


   F_CPU =16000000 HzF_CPU =32000000 Hz
1/F_CPU =0.0625 us1/F_CPU = 0.0313 us
nop                     : 0.063 usnop                     : 0.031 us
digitalRead               : 4.588 usdigitalRead               : 2.293 us
digitalWrite            : 3.423 usdigitalWrite            : 1.715 us
pinMode                   : 4.335 uspinMode                   : 2.168 us
multiply byte             : 0.377 usmultiply byte             : 0.188 us
divide byte               : 4.900 usdivide byte               : 2.453 us
add byte                  : 0.379 usadd byte                  : 0.190 us
multiply integer          : 0.816 usmultiply integer          : 0.408 us
divide integer            : 13.315 usdivide integer            : 6.655 us
add integer               : 0.506 usadd integer               : 0.253 us
multiply long             : 3.705 usmultiply long             : 1.853 us
divide long               : 37.290 usdivide long               : 18.670 us
add long                  : 1.004 usadd long                  : 0.501 us
multiply float            : 5.343 usmultiply float            : 2.670 us
divide float            : 72.190 usdivide float            : 36.095 us
add float               : 7.720 usadd float               : 3.860 us
itoa()                  : 12.620 usitoa()                  : 6.315 us
ltoa()                  : 124.190 usltoa()                  : 62.095 us
dtostrf()               : 70.890 usdtostrf()               : 35.470 us
random()                  : 91.715 usrandom()                  : 45.845 us
y |= (1<<x)               : 0.314 usy |= (1<<x)               : 0.157 us
bitSet()                  : 0.314 usbitSet()                  : 0.157 us
analogReference()         : 1.636 usanalogReference()         : 0.818 us
analogRead()            : 172.040 usanalogRead()            : 85.995 us
analogWrite() PWM         : 7.410 usanalogWrite() PWM         : 3.705 us
delay(1)                  : 1004.490 usdelay(1)                  : 1001.995 us
delay(100)                : 100024.984 usdelay(100)                : 100024.992 us
delayMicroseconds(2)      : 1.133 usdelayMicroseconds(2)      : 0.849 us
delayMicroseconds(5)      : 3.393 usdelayMicroseconds(5)      : 2.261 us
delayMicroseconds(100)    : 74.990 usdelayMicroseconds(100)    : 46.995 us



wing 发表于 2018-4-17 10:34:06

原来这货还可以在32M下工作,我还是现在才知道呢,真是后知后觉了:L
基本上是翻倍的性能,LGT吸引我的亮点更加多了

eddiewwm 发表于 2018-4-16 23:29:44

測試程序:
https://gist.github.com/SyncChannel/1e509ae9e8a34cc1e56a

弘毅 发表于 2018-4-17 09:56:26

:o大腿,居然做了这么详细测试。

迷你强 发表于 2018-5-29 16:32:36

本帖最后由 迷你强 于 2018-5-29 16:36 编辑

:o话说。。。直接开32M,函数啥的正常工作么?不需要修改么?(目测就是微秒函数直接减半了。其他貌似没毛病啊。)
页: [1]
查看完整版本: 8F328P-U 在 16MHz 和 32MHz 工作頻率中的速度比較