打印
[牛人杂谈]

PC编程与嵌入式编程的差别

[复制链接]
638|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
598330983|  楼主 | 2016-8-29 20:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这是一个很重要的概念!

1.printf()的时间

在PC编程中,你可以用printf()这个函数来看变量值,而忽略它所占用的时间,(相对于3GHZ的CPU来说可以忽略),但是在嵌入式编程中,用printf()在超级终端中看变量值的时候,它的开销你要计算进去,尤其是程序对信号的捕捉到了毫秒,微秒级别的时候!

笔者曾经干过这样一件事情,用定时器函数来delay()9毫秒时间,过0.9毫秒,让里面的变量i加一,结果i等于9的时候跳出循环,而在里面多加了一句printf(),i加到了6就跳出了循环,害的我以为我的算法错了,希望大家不要走同样的弯路!
沙发
dongnanxibei| | 2016-8-31 18:30 | 只看该作者
不同的平台,肯定考虑的方面是不同的,比如PC,硬盘空间大,你程序不讲究,单片机不同。

使用特权

评论回复
板凳
734774645| | 2016-8-31 18:49 | 只看该作者
说到底这个是平台之前的差别,而我们写程序时候,尽量代码上的统一。

使用特权

评论回复
地板
zhuomuniao110| | 2016-8-31 21:10 | 只看该作者
在延时函数上我一般用定时器的,在定时器里定义一个变量,当调用延时函数时候,读取这个变量的值然后与新获取的值做差比较。
当然如果这个值刚好在边界的话,要另外考虑了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

246

主题

5384

帖子

22

粉丝