为什么下面这个程序单片机延时程序当x=1时是延时1ms?不知道怎么算的

[复制链接]
查看11 | 回复4 | 2013-1-22 10:38:05 | 显示全部楼层 |阅读模式
这种利用循环执行代码来产生延时的程序依赖于单片机的工作频率,可能就是晶振的频率或者晶振的频率除以12.假如每执行一条指令需要1uS,则循环执行100遍以后,需要100uS。具体的数值是通过试验确定的,因为C编译出来的程序具体执行的指令条数不好确定。如果非得找到可以用仿真器调试运行确定。...
回复

使用道具 举报

千问 | 2013-1-22 10:38:05 | 显示全部楼层
for(t=120;t>0;t--) 这个运行完一遍的时间是1毫秒, 前提是单片机用的晶振是12兆赫的才行。...
回复

使用道具 举报

千问 | 2013-1-22 10:38:05 | 显示全部楼层
编译软件仿真一下就知道了...
回复

使用道具 举报

千问 | 2013-1-22 10:38:05 | 显示全部楼层
根据指令运行时间,还是进时钟频率算的...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行