社区
汇编语言
帖子详情
怎么计算延时时间?
tyhope
2009-12-02 11:49:27
DEL:MOV R7,#200
DEL1:MOV R6,#125
DEL2:DJNZ R6,DEL2
DJNZ R7,DEL1
RET
怎么计算延时时间,希望有详细过程。
...全文
335
7
打赏
收藏
怎么计算延时时间?
DEL:MOV R7,#200 DEL1:MOV R6,#125 DEL2:DJNZ R6,DEL2 DJNZ R7,DEL1 RET 怎么计算延时时间,希望有详细过程。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liuajuan871207
2009-12-04
打赏
举报
回复
[Quote=引用 4 楼 pingminglang 的回复:]
查了表,好像有两个机器周期的指令弄错了,修正一下
DEL:MOV R7,#200 // 1个机器周期 执行1次 时间:1×1
DEL1:MOV R6,#125 //1个机器周期 执行200次 时间:1×200
DEL2:DJNZ R6,DEL2 //2个机器周期 执行200×125次 时间:2×200×125
DJNZ R7,DEL1 //2个机器周期 执行200次 时间:2×200
RET
总的延时时间:(1×1+1×200+2×200×125+2×200)×2us=50601×2us=101.202ms
[/Quote]题目没有给出是在多少晶振下,如果是在12M的话一个机器周期就是1us,上述是在6M晶振下的延时
pingminglang
2009-12-03
打赏
举报
回复
查了表,好像有两个机器周期的指令弄错了,修正一下
DEL:MOV R7,#200 // 1个机器周期 执行1次 时间:1×1
DEL1:MOV R6,#125 //1个机器周期 执行200次 时间:1×200
DEL2:DJNZ R6,DEL2 //2个机器周期 执行200×125次 时间:2×200×125
DJNZ R7,DEL1 //2个机器周期 执行200次 时间:2×200
RET
总的延时时间:(1×1+1×200+2×200×125+2×200)×2us=50601×2us=101.202ms
pingminglang
2009-12-03
打赏
举报
回复
计算延时时间必须结合你所用的晶振的震荡频率,这里假设你所用的晶振的震荡频率是 12MHZ,那么在C51系列的单片机上一个机器周期就是 1us.
接下来你再查表得到每个指令执行所用的机器周期:
DEL:MOV R7,#200 // 2个机器周期 执行1次 时间:2×1
DEL1:MOV R6,#125 //2个机器周期 执行200次 时间:2×200
DEL2:DJNZ R6,DEL2 //2个机器周期 执行200×125次 时间:2×200×125
DJNZ R7,DEL1 //2个机器周期 执行200次 时间:2×200
RET
总的延时时间:(2×1+2×200+2×200×125+2×200)×2us=50802×2us=101.604ms
具体的结果不一定计算的对,反正是按着这么一个思路去做就是。
大熊猫侯佩
2009-12-03
打赏
举报
回复
不同hz的cpu不同,有时需要手动调整。
dbx12358
2009-12-03
打赏
举报
回复
要看每条指令的执行时间。都算进去。
tyhope
2009-12-02
打赏
举报
回复
不知楼上可以再说的详细吗?
能否把每一步的延时时间都写出,谢谢!
cnzdgs
2009-12-02
打赏
举报
回复
内层循环时间乘以循环次数再乘以外层循环次数,外层循环中其它代码的执行时间忽略不计。
CSRF跨站请求伪造漏洞原理及代码审计
课程声明:该课程是教学使用,视频内涉及漏洞利用方法,请勿在互联网环境中使用;维护互联网网络安全,人人有责... 如果有以上困惑赶紧学习吧,Margin老师工作日一般都是30分钟就能为你解答疑惑,沟通无
延时
、无障碍。
手机wifi延迟测试软件,如何测试无线投屏
延时
值?同屏
延时
怎么测? 四画面
延时
多少?同屏
延时
传屏器
延时
电脑投屏...
无线投屏的
延时
值,就是指无线投屏发射端显示视屏开始计时,并发出视频流给接收端,进而接收端解码视频流,显示在屏幕上的总
时间
,这个数值就是无线投屏的
延时
值。在讨论无线投屏的
延时
值之前,首先说明一下什么是...
关于RC
延时
电路的
时间
常数 和 到达某电压的
延时
时间
计算
二、如何
计算
RC
延时
电路的
延时
时间
? 设,V0 为电容上的初始电压值,V1 为电容最终可充到或放到的电压值,Vt为t时刻电容上的电压值。 则:Vt=V0+(V1-V0)* [1-exp(-t/RC)];或:t=RC * ln[(V1-V0)/(V1-Vt)]。 ...
51单片机的
延时
计算
51单片机的
延时
计算
前言正文首先是时钟周期的算法:时钟周期(T)=1(秒)/晶振频率。(比如:上面代码的时钟周期为1/12M(秒))。其次是机器周期:机器周期是由时钟周期组成的,机器周期是单片机完成一个基本操作...
51单片机
延时
程序的
延时
时间
计算
关于51单片机使用软件
延时
怎么
计算
延时
时间
的问题,采用12MHz晶振,使用do while 实现精确
延时
汇编语言
21,459
社区成员
41,601
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章