单片机中延时子程序的作用是什么
比如说:
void delay ()
{
int x;
char y;
for(x=1000;x>0;x--)
{ for(y=100;y>0;y--)};
}
x每减一次,y减100次,x一共减少1000次
这个子程序的延时时间是:
1000*100=100ms(默认时间是us)
如果想更精确的话,可以用软件进行调试
for语句下面的{}还可以省略
有不清的可以多交流
你可以粗略这样看,在上面的指令中,执行次数最多的是DJNZ rn,那么可以延时就是DJNZ指令执行时间。这里运用了嵌套,所以要×。
它的顺序是先执行DJNZ R5,L3 ;10次,执行DJNZ R6,L2 250次
但是当R6减1那么就赋予R5初值10,所以R5又得运行10次,而每减一次1都要重复10次。同理,执行R7减一要重复前面的DJNZ指令10×250次,所以就有了
10×250×200×2us=1s
当然是起到延时的作用。
两个事件之间有的需要部分延时,就要调用延时子程序。
延时和等待的作用。。。可以是单纯的空操作,也可以是定时器进行延时。实现延时后的其他操作
一是为了某些时序逻辑器件的时序要求。二是为了单纯的等待,比如交通信号灯的控制,红灯绿灯黄灯都有时间控制,亮的长短就要由延时程序控制,或者CPU速度快于外设速度时,就需要用延时程序做等待!
听名字就知道意思···延时,程序运行需要时间的,延迟程序能够保证程序运行,不会出错
有关温度报警器的程序,有关DS18B20的程序已写好,求助有关蜂鸣器报警和温...
温度比较处理子程序、键盘处理子程序、显示子程序、报警子程序等部分组成。键盘显示及中断程序流程图如下图 8: 3、运算控制模块 图8 键盘、显示、中断 子程序流程图 该模块由标度转换、模糊控制算法,及其中用到的乘法子程序。 3.1 标度转换 16式中A 为二进制的温度值, A0 为 DS18B20 的数字信号线送回来的...
直流电动机控制转速和测速的程序是用显示屏的
其驱动电压为620V,直流电流总和为04A。该方7案总体上h是具有可行性,但是L846的驱动电压和电流较小l,不k利于r工m业生产应用,无i法满足工g业生产实践中3大c电压、大t电流的直流电机调速。 方3案三x:采用3701单片1机、IR2720功率驱动芯片8构成整个e系统的核心3实现对直流电机的调速。7600具有...
大意姐的哥什么意思
;寄存器间接寻址,把A里的数据传送到R0对应的地址RET ; 子程序返回END ;结束 问题九:英语好的哥哥姐姐进来下 帮我翻译下 谢谢 15分 我不想回碎布或在孔 和我们的瘀伤是未来 但是,我们决不倍 我是你的柳暗花明 由于传说 我是你的一线希望,但现在的IM金矿 hooray hooray的IM你柳暗花明 hooray ho...
闭券喘安: 延时程序的作用就是等待,以适应某些低速器件的要求,有时也可以作为纯粹的计时 如向液晶屏1602送数据,液晶屏是低速器件,单片机是高速器件,单片机每送完一个数据,过一小会儿液晶屏才能处理完,才能继续给它发数据,这期间单片...
会东县19716853958: 有谁可以帮我解释下这个单片机延时程序的意思和作用吗 谢谢了 - ?
闭券喘安: void delay(DelayTime)//延时子程序 { unsigned int i;for(;DelayTime>0;DelayTime--)//当你调用函数时括号中的数是此外循环的次数.每循环一次减1.直到Delay Time 为0.{for(i=0;i<250;i++);//外循环每执行一次,此内循环才执行250次.}} //如果你的Delay Time =X. 那么你的整个函数延时X*250机器周期.
会东县19716853958: 51单片机中的汇编代码延时有点搞不清楚,请详细解释下子这个延时子程序,谢谢啦~ - ?
闭券喘安: 程序在执行指令的时候是要占用时间的,DJNZ为双字节指令,晶振为12MHZ的单片机执行这一条指令为24个震荡周期,也就是2微秒,通过不断让它循环来达到延时的目的.
会东县19716853958: 单片机中延时程序有什么作用?如下段程序....( ACALL DELAY ;延时 MOV P1,#0FFH)这两句的作用是啥? - ?
闭券喘安: 调用延时 P1管脚八个口全部置1
会东县19716853958: 单片机时钟程序中为什么要延时 - ?
闭券喘安: 延时函数是所有单片机程序中不可缺少的,单片机的速度相对很多器件来说已经很高了,必须加延时才能匹配,如液晶屏1602,送一个字符或命令后,必须有ms级延时,才能送下一个字符 数码管扫描显示,每点亮一个数码管也要延时保持一会儿,还有一些短的延时,如模拟SPIJ时钟,只用2 个空操作语句就解决了
会东县19716853958: 单片机简易计算器中为何要用延时程序?
闭券喘安: 既然是计算器肯定有按键输入,按键输入程序是需要延时函数来滤波的.
会东县19716853958: 延时函数的作用是什么! - ?
闭券喘安: 延时的作用就是让数据正确处理.CPU速度来能多快取得I0口状态就多快取,而是CPU程序按指定时间间隔取值.比如CPU速度为1微妙可以处理一条语句,你刚取完当前10口状态,如果没有延时处理,在循环处理过程中立即又去取当前10口状...
会东县19716853958: 为什么用c语言编写单片机程序 好多子程序都要一直调用延时程序 比如 液晶显示屏子程序初始化时 等等 - ?
闭券喘安: 在中断程序中,不退出,又出现了本中断的申请,单片机,是不会再一次进入该中断程序的.只有高级的中断,才能中断本次中断.当退出本次中断后,回到主程序执行了一条指令,在处于主程序期间,单片机才会顾及已经出现的申请.但是,如果,该申请标志,已经消失,单片机就不会发生中断.这个过程,有些书,讲的很详细.有些书,就没有讲.
会东县19716853958: 单片机软件延时程序的优缺点是什么 - ?
闭券喘安: 优点:简单,很容易就能写出软件延时程序 缺点:延时时间不容易计算,C语言写的延时程序不能直接计算出延时时间,要看了反汇编代码才能计算出延时时间 因此,精密的延时最好是用定时器;或者用混合编译,C语言调用汇编延时函数;还可参考下面这个程序,我用C语言写的,精度也很高
会东县19716853958: 单片机怎么能延时执行不耽误正常运转 - ?
闭券喘安: 延时有两种方法,一种是用软件延时,即写延时子程序,这种方法是让单片机执行无用的指令,就是为了延时,延时期间就不能做其他事情了,很浪费单片机的时间.这种方法是在单片机不忙的情况下用,反正闲着也是闲着. 第二种方法就是你要求的,即能延时,又不耽误主程序的运行,用定时器T0或T1定时,设置定时时间后,定时器开始计时,主程序继续执行,不用管定时器,当定时时间到,定时器就会申请中断,单片机就响应中断,处理定时子程序需要完成的工作,完成后返回到主程序继续主程序的执行,这是最合理的方法,充分利用了单片机的资源,互不影响.