打印

PS2中延时100us是用定时器还是直接nop循环

[复制链接]
2030|8
手机看帖
扫描二维码
随时随地手机跟帖
沙发
sz_kd| | 2008-11-18 11:39 | 只看该作者

这么小用nop,超过500US用定时器好些

不过一般看你的程序,没有具体的规定

使用特权

评论回复
板凳
一级菜鸟| | 2008-11-18 11:50 | 只看该作者

不建议死延时,费时费事

参见数据手册内的ACKNOWLEDGE POLLING章节,写操作结束后,检测ACK来知道内部写操作是不是结束,可靠通用简单。

使用特权

评论回复
地板
AIRWILL| | 2008-11-18 20:42 | 只看该作者

建议死延时

不过那么多nop, 看着难受吧?
我就让它调用空函数(包括多层), 呵呵

使用特权

评论回复
5
ayb_ice| | 2008-11-18 20:50 | 只看该作者

怎么会延时100US

100US才10KHZ频率,IIC最低的都有100KHZ,应该延时10US吧

使用特权

评论回复
6
NE5532| | 2008-11-18 21:54 | 只看该作者

不建议死延时的,状态机会非常难写。

楼主不信,自己试下就知道了。
PS:那种开着定时器查询标志来等时间的就不要进来讨论了。

使用特权

评论回复
7
mymystery|  楼主 | 2008-11-19 09:23 | 只看该作者

回LS

搞错了,是PS2中起始的时候需要拉低时钟线至少100us 做这个延时 可以直接用定时器查询标志的方法么

使用特权

评论回复
8
mymystery|  楼主 | 2008-11-19 09:37 | 只看该作者

搞晕了

好像这地方是必须死延时吧。。因为等够100us才能继续执行咯~   那哪些地方不能死延时呢,好让单片机更有效的工作

使用特权

评论回复
9
NE5532| | 2008-11-19 20:54 | 只看该作者

死等定时器和NOP有啥区别?

使用特权

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

本版积分规则

22

主题

93

帖子

0

粉丝