打印

STC1T在单总线通信时的一点疑问

[复制链接]
1702|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
小弟目前在琢磨一段单总线代码在例程中看到:
sbit WSD_DATE=P1^0;uchar a;
a=2;
while((WSD_DATE==1)&&a++);//判断从机是否响应50us高电平
if(a==1)
       break;


其中红字部分a++是为了判断是否超时

现在小弟欲用stc1T 芯片,12M 晶振


不知a的初值该设成多少才能保证超时阀值仍为50us,是否需要把uint a?


若有路过高手不吝赐教,小弟将非常感谢

相关帖子

沙发
阿南| | 2012-9-26 15:18 | 只看该作者
如果想准确计算,最好汇编下看while下占用几个机器周期。

使用特权

评论回复
板凳
InTo_JuMp|  楼主 | 2012-9-26 19:20 | 只看该作者

我把这段代码反汇编出来
求教一下,是不是把81段下面的几行汇编时间全部算出来再乘以255,
就是while循环的总时间?

使用特权

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

本版积分规则

0

主题

9

帖子

0

粉丝