c51延时函数

作者&投稿:书阅 (若有异议请与网页底部的电邮联系)

51单片机通常延时函数在前还是主函数在前?
延时函数在主函数前面和后面没有关系的,延时函数在主函数前面不用申明,在主函数后面就要申明。你上面的延时函数放在后面应这样申明就可以了。include <reg52.h> include <intrins.h> typedef unsigned int u16;typedef unsigned char u8;void delay(u16 t);void main(){ u8 temp;temp=0xfe;while...

在51编程delayms什么意思
delay:是延时的意思,ms:毫秒。delayms:就是指毫秒级的延时程序 以下是本人编写的循环体延时程序。时钟晶振为8MHz。\/\/ \/\/函数名:Delay_us\/ms()\/\/描 述:延时函数。\/\/ define Delay_1us() asm("nop");asm("nop");asm("nop");asm("nop");asm("nop");asm("nop")void Delay_us(...

51单片机中怎么得到精确延时?
51单片机的几种精确延时实现延时通常有两种方法:一种是硬件延时,要用到定时器\/计数器,这种方法可以提高CPU的工作效率,也能做到精确延时;另一种是软件延时,这种方法主要采用循环体进行。 \\x0d\\x0a\\x0d\\x0a1 使用定时器\/计数器实现精确延时 \\x0d\\x0a\\x0d\\x0a 单片机系统一般常选用11.059 2 MHz、12 MHz...

单片机延时函数的设计
对于51单片机,两个参数决定了MAIN_Fosc的数值,1】系统板的晶振。2】有否单片机的时钟分频。如果没有设置时钟分频,而晶振是X MHz=X*1000000Hz,那么X*1000000=13000*850;X=13000*850\/1000000=11.05; 值此可以推断,这个延时函数是基于晶振11.0592MHz的。废话说了这么多,主要想提醒楼主注意,通过...

C51单片机延时程序,需要不精确延时2小时,请问大神怎么写延时代码,谢 ...
可以有很多办法,一是调整参数,使其延时5分钟或6分钟,循环24次或20次。二是将延时函数的形参改为长整型(32位)延时时间扩大65536倍。三是使用定时器,每次定时50mS,累计144000次,便是2小时,使用定时器(中断)的好处是在延时期间还可以干许多事情,例如显示剩余时间,检测设备工作状态或者调整延时...

51单片机延时函数声明和调用
声明很简单,例如延时 delay( x); 这是调用的,声明就在这个前面加void delay( unsigned char x);

51单片机 让数码管自动显示0至9的C程序。有没有比这个更简单的...
可以通过代码优化的方式来简化代码。一、设置延时函数 延时函数在单片机中有着让现实延时的能力,本程序中可以通过采用for循环方式进行延时,具体代码如下:void delay(){ uinti,j;for(i=100;i>0;i--)for(j=1000;j>0;j--);} 二、设置数码管显示数组 数组定义简单,而且访问很方便。所有...

求51单片机流水灯延时函数,控制时间那种,比如:1灯1秒亮,2灯就要0.9秒...
include<reg52.h> \/\/ 仿真 试试 define uchar unsigned char define uint unsigned int uchar i,t;uchar code tabled[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; \/\/ 发光二极管 可以有很多方法 void delay(uint z) \/\/ 延时程序 { uint x,y;for(x=z;x>0;x--)for...

51单片机中 怎么得到精确延时?
2 软件延时与时间计算 在很多情况下,定时器\/计数器经常被用作其他用途,这时候就只能用软件方法延时。下面介绍几种软件延时的方法。2.1 短暂延时 可以在C文件中通过使用带_NOP_( )语句的函数实现,定义一系列不同的延时函数,如Delay10us( )、Delay25us( )、Delay40us( )等存放在一个自定义...

51单片机 delay延时函数的问题
如果在程序中X=10(你写程序时肯定会给他赋一个值,在这里假定是10),即在程序的某处会有delay(10)这样的语句。相当于循环了600*X=600*10=6000次。可以根据自己的需要来定。你说得对,可以写一个就行。但是有些芯片,你在控制他时,时序要求非常严格,如果延时太长或延时太短,都不会运行出...

集竖13733849148问: 单片机 c51编程,求准确的延时函数. -
如东县先强回答: void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=123;y>0;y--); } 要延迟的地方直接写 delay(数据);比如,delay(5);

集竖13733849148问: 怎么用C51编写单片机延时函数 -
如东县先强回答: 软件延时的话建议直接用单片机精灵或STC-ISP等软件计算生成的代码.用定时器的话,设置定时器基本定时时间,再增加标志判断定时器工作了几轮,基本时间*标志就是延时的时间了;如果要用时间很短的精准延时就需要计算该给TLx和THx的值了

集竖13733849148问: [C51单片机C语言]:能否根据晶振和要延时时间定义一个通用的延时函数? -
如东县先强回答: 原则上是可以的,用12除以晶振频率得到单指令周期指令的时间,然后根据这个时间计算循环次数.但是,这些计算是要花时间的,而且时间不定.如果延时时间长,这个时间或可以忽略,但是微秒级的延时,影响就很大了,所以,虽然可以,但是不实用. 估计这也是为什么没人这么用的原因.

集竖13733849148问: 请各位好心人帮忙解释一下下面的延时C51函数,逐步分析一下. -
如东县先强回答: void delayms(uint j) { uchar i; for(;j>0;j--) //for内程序循环J次 {i=250; while(--i); //while循环i-1次 i=249; while(--i); } 简单的说就是:用无实际操作的循环一直在占用cpu(占用时间为:delayms(j);),过这么长时间后,继续让cpu干活,从而达到延时的效果. 不懂继续追问,希望能帮到你~

集竖13733849148问: 简单的单片机C51语言延时程序voiddelay1(unsing
如东县先强回答: 你第二个for语句后还差个分号吧.个人建议在初学的时候还是不要省的太多了,有时自己都看不懂了.延时函数简单点说就是不断在运行你的for函数,一共运行200*i次,而第二个for函数里面有没有什么语句,这样的话CPU这段时间就什么都不处理,就在这浪费时间,也就是起到延时的效果了.

集竖13733849148问: 求一个C51单片机上的20秒延时子程序!用汇编语言 -
如东县先强回答: 1、软件延时方法:DELAY:MOV R7,#0BFH DL1: MOV R6,#0D1H DL0: MOV R5,#0F9H DJNZ R5,$ DJNZ R6,DL0 DJNZ R7,DL1 MOV R5,#02H DJNZ R5,$ RET2、定时器方法: ORG 0000H LJMP START ORG 000BH LJMP Timer0Interrupt ...

集竖13733849148问: C51单片机延时问题,使用delay函数这个延时时间是如何计算?
如东县先强回答: 1.你可以通过keil仿真,多试几次找出这个值.仿真可以看时间.2.还可以把程序下到板子上,比如运行1分钟.通过多次试验,也能找出这个值.3.也可以理论计算,51有机器周期、指令周期,考虑晶振,看一个for要多少指令,最后也能算出来.不同单片机不一样,有的没有机器周期,有的指令周期也不一样,晶振也不一样.推荐前两种方法.

集竖13733849148问: (51单片机)那个大佬给讲解一下这个延时函数 -
如东县先强回答: u16 i,这是定义一个16位整型的形参变量 i ,其实,u16 并不是C51的变量类型,而是在程序的前面用#define u16 unsigned int 宏定义的. 延时就是利用循环体while(i--); 来实现的,变量x先减1,判断不是0,继续循环,继续减1,判断,直到x=0,结束循环,延时结束.

集竖13733849148问: C51单片机延时函数的计算 -
如东县先强回答: 软件延时都是不精确延时,精确延时需要用到定时器中断.软件延时的计算可以反汇编,汇编指令有对应的执行机器周期,机器周期=时钟周期*12,时钟周期就是晶振频率的倒数.这些都可以通过“单片机小精灵”这个软件实现,本来就不是精确延时,没必要深究,而且不同的51单片机运行速度不一样,延时的时间也不一样.

集竖13733849148问: 单片机C51延时时间怎样计算? -
如东县先强回答: 去百度文库,查看完整内容>内容来自用户:云海寻峰C程序中可使用不同类型的变量来进行延时设计.经实验测试,使用unsigned char类型具有比unsigned int更优化的代码,在使用时应该使用unsigned char作为延时变量.以某晶振为12MHz...


本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网