单片机和云计算机算力比较,51单片机 运算能力 测试

本文通过测试展示了STC12C5A60S2单片机进行浮点运算的能力,平均速度为25047.8 fps。与一台Intel Core i5 2.30GHz的笔记本电脑相比,笔记本的运算速度大约是单片机的33387.7倍。测试突出了单片机与PC在浮点运算性能上的显著差距。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原标题:51单片机 运算能力 测试

几天前在做51循迹小车程序的时候,为了能用得上PID算法,在程序中用了很多 运算。大家都知道 是8位 ,而浮点数是32位的,当时我就在想,浮点运算用多了会不会影响到小车程序的反应速度和性能呢,当时为了完工,没有多想,只是想着——反正我在程序里也用不到多少,应该不会有太大的影响。

今天一想,为何不来做个测试呢,说做就做,程序很快调通了,测试结果也出来了。

首先说一下我所用的51单片机配置:

STC12C5A60S2增强型51单片机, 11.0592M晶振, 1T模式(1个时钟周期执行1条指令,大部分51单片机是12T的,单片机这点和PC不同)。

测试原理:

1.用片上定时器/计数器0实现了一个计时器;

2.记录一定量浮点数计算(加法)运算的总时间,并记录浮点运算测试过程中其他运算操作的时间;

3.利用以上记录的两个时间之差和运行前指定的运算次数即可算出每秒浮点运算次数(暂时用fps表示);

先来看看测试结果:

测试总时间:407s

平均速度:25047.8 fps

最快速度:33559.5 fps

最慢速度:22932.8 fps

再来看看我们的测试主体部分吧:

// 先指定浮点运算次数: n = 10000; send_str("t0\tt1\tt2\tfps\ips\r\n"); while(1) { t0 = t_cur; // float t_cur 为当前时间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值