设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
请问单片机延时怎么算?
返回列表
发新帖
请问单片机延时怎么算?
[复制链接]
11
|
4
|
2008-9-29 17:42:59
|
显示全部楼层
|
阅读模式
在看C51时用到延时程序时总会给一些循环语句。
例如:for(i=8;i>0;i--)
for(j=0;j<124;j++);
请问执行一条循环语句是多少时间?中间的数学换算公式应该是怎么样的?谢谢。
回复
使用道具
举报
千问
|
2008-9-29 17:42:59
|
显示全部楼层
语言的运行时间不好计算,你要用汇编的才能精确的计算时间。汇编的前提是没有开中断才能精确计算间间 如果汇编 WHILE (TIME--) 为2个机器周期 2M 可以认为延时时间 = TIME * 250 ns 12M 就是TIME * 250/6 ns 24M 就是TIME * 250/12 ns...
回复
使用道具
举报
千问
|
2008-9-29 17:42:59
|
显示全部楼层
6MHZ晶振延时X毫秒的子程序yanshi(uint x){uint i;uchar j;
for(i=0;i<x;i++){
for(j=0;j<124;j++) } }...
回复
使用道具
举报
千问
|
2008-9-29 17:42:59
|
显示全部楼层
keil c51 可以 软仿真 ,有跑表 ,可以看的呀v还有 ,可以看一下对应的汇编窗口,由C生成的ASM,一目了然...
回复
使用道具
举报
千问
|
2008-9-29 17:42:59
|
显示全部楼层
这种方法是软件延时方法,延时不精确。单片机内部一般都提供定时中断,这种方法是硬件延时的方法,具体延时多长时间要看单片机的晶振频率以及内部某些寄存器的设置,看看定时中断那章就明白了,不难,加油。。。...
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行