打印

最高效率使用单片机,放弃程序中的延时函数(转)

[复制链接]
手机看帖
扫描二维码
随时随地手机跟帖
21
yuyuheqiu| | 2013-11-3 09:16 | 只看该作者 回帖奖励 |倒序浏览
路过,看看,RTOS是基础,自创的不好把握

使用特权

评论回复
22
sysdriver| | 2013-11-3 09:56 | 只看该作者
在不影响功能的情况下,就不用理它了,因为单片机的功能都是不复杂的,得不偿失。

使用特权

评论回复
23
kseeker| | 2013-11-3 10:25 | 只看该作者
大多数情况下,MCU的运算能力都是过剩的,怎么弄都要有大量的时间空等。

使用特权

评论回复
24
不起眼| | 2013-11-3 10:38 | 只看该作者
frlop 发表于 2013-11-2 22:09
在主程序里ms级别的延时不要用就好了,几个us级的实在没必要钻牛角尖了。
...

如果不需要,几ms也可以不理他。如果需要,几ns也要考虑。有些技术本来就是针尖对麦芒。

使用特权

评论回复
25
不起眼| | 2013-11-3 10:45 | 只看该作者
楼主说的跟OS有一根毛的关系,但也仅仅是一根毛的关系。他仅仅是从OS上取出一个基因而己。OS并不能解决任何技术问题。

使用特权

评论回复
26
不起眼| | 2013-11-3 10:51 | 只看该作者
楼主是否成功实现,我都未必成为他的粉丝,也未必成为他技术的粉丝,但会成他思维方法的粉丝。

使用特权

评论回复
27
McuPlayer| | 2013-11-3 15:09 | 只看该作者
支持楼主
收集CPU的空闲,然后这里可以根据实际情况,决定是休眠,还是如何处理。

另外,我不支持小项目使用多任务的方式,其实嵌入式OS并不仅仅是任务调度,还有资源管理,硬件HAL统一接口,等等,这些用在MCU上比裸奔多用不了太多内存。

使用特权

评论回复
28
ayb_ice| | 2013-11-3 15:52 | 只看该作者
不是放弃,是换个方法

使用特权

评论回复
29
bingmcu| | 2013-11-3 16:13 | 只看该作者
多做几个项目,就懂了。

使用特权

评论回复
30
z_no1| | 2013-11-3 17:07 | 只看该作者
不起眼 发表于 2013-11-3 10:38
如果不需要,几ms也可以不理他。如果需要,几ns也要考虑。有些技术本来就是针尖对麦芒。 ...

主要还是你实在做几个项目就会体会到了,多说也没意思。PC上编程和MCU上编程区别还是比较大的。

使用特权

评论回复
31
xuzhongjun138| | 2013-11-3 21:54 | 只看该作者
学习了

使用特权

评论回复
32
frlop| | 2013-11-4 10:18 | 只看该作者
本帖最后由 frlop 于 2013-11-4 10:25 编辑
不起眼 发表于 2013-11-3 10:38
如果不需要,几ms也可以不理他。如果需要,几ns也要考虑。有些技术本来就是针尖对麦芒。 ...

例如模拟时序的时候,经常使用nop来延时以匹配时序,是否在你看来也应该优化掉?

使用特权

评论回复
33
金融小数| | 2013-11-4 10:41 | 只看该作者
楼主是从PC上转过来的,没有实际开发产品的经验,属于愣头青:lol

当然使用 delay(unsigned char ms) 的代码的工程师那是很差的单片机工程师,你说90%的代码都是这样使用,我只能说:你看到的代码都是垃圾,你在垃圾中挑鱼刺,那是一抓一大把。

等你实际做过几次产品开发,看了很多真正有水平的工程师写的代码,你再来谈你的这个想法吧。

使用特权

评论回复
34
chnycdj| | 2013-11-4 11:36 | 只看该作者
mark,有时间看看

使用特权

评论回复
35
qqcaiyin| | 2013-11-4 16:29 | 只看该作者
金融小数 发表于 2013-11-4 10:41
楼主是从PC上转过来的,没有实际开发产品的经验,属于愣头青

当然使用 delay(unsigned char ms) 的代 ...

看不到有水平的工程师的代码,找不到啊,

使用特权

评论回复
36
NE5532| | 2013-11-4 17:18 | 只看该作者
看题目就是错的,开场白也是错的。不要以为搞PC的比搞嵌入式的“高人一等”,PC和嵌入式所面对的需求是大相径庭,连需求都没搞清楚,怎么做设计?出发点都是错的,那就是失之毫厘谬以千里了!

使用特权

评论回复
37
shcshc1234| | 2013-11-4 22:49 | 只看该作者
走极端该延时的时候就延时
资源不够了再开定时器分配时间块。。。

使用特权

评论回复
38
我叫荧火| | 2013-11-4 22:58 | 只看该作者
省着用是个好习惯,我同意楼主看法。

使用特权

评论回复
39
kx918| | 2013-11-5 00:11 | 只看该作者
有机会试试

使用特权

评论回复
40
z_no1| | 2013-11-6 09:19 | 只看该作者
不起眼 发表于 2013-11-2 20:53
1。LZ的內核是主动放弃当前任务,这种方式要保存的东西很少。
2。对,就是要利用这几十us的甚至几us时间 ...

那好,你想用它做什么事呢?切西瓜?神庙逃亡?还是打飞机?

使用特权

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

本版积分规则