c语言一毫秒的延时程序

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

这个延时子程序能延时多久?一毫秒?(看问题补充)
这个要看你是在什么上面跑了,而且软延时不一定是准确的,会受到中断啥的影响,要获得准确的还得用定时器 ~~~C语言中大概是110*z步,算上出入函数大概在120*z左右,具体看下编译后的汇编代码 晶振算11M,机器周期为1\/11 一个指令周期=12个机器周期 按下计算器哈 ...

请问这段控制单片机时间的延时程序为何是1毫秒?不是应该晶振是11MHz...
1毫秒是大约数,当晶振为11.0592时约延时1毫秒。当为12M时,110改为120

C语言编写延时程序,反汇编怎么有400us
看你程序是想实现1us的延时,但是你有没有考虑过调用函数要有出栈入栈等操作,这些操作花的时间就远远大过1us了,所以你这样做是不对的。如果你想实现少于5us的延时,可以在主程序中用若干个空操作,比如说 NOP;NOP;就能实现2us的延时。如果你想实现少于50us的延时,可以在主程序中用for语句循环空...

单片机延时程序
这个程序是延时xms毫秒的子程序,for(z=110;z>0;z--)延时大概1毫秒左右,这是在晶振为11.0592MHz的情况下,如果是12M 那么110大概改为120,不是很精确,毕竟是C语言,不像汇编那样可以精确的做到微秒级的延时。

汇编语言延时程序
应该是这样简单的吧:mov c,p1.0 jnc next mov r1,#9 yanshi:djnz r1,yanshi nop next:...延时1+18+1=20us 1ms=1000us next是标号好不好,就是低电平跳过延时程序到这里,高电平延时后到这里

c语言中delay 10000是延迟几秒
看系统晶振和延迟函数参数 如 void delay1ms(unsigned char z)\/\/12M晶振 1毫秒延迟 { unsigned int x,y;for(x=z;x>0;x--)for(y=120;y>0;y--);}

为什么下面这个程序单片机延时程序当x=1时是延时1ms?不知道怎么算的
这种利用循环执行代码来产生延时的程序依赖于单片机的工作频率,可能就是晶振的频率或者晶振的频率除以12.假如每执行一条指令需要1uS,则循环执行100遍以后,需要100uS。具体的数值是通过试验确定的,因为C编译出来的程序具体执行的指令条数不好确定。如果非得找到可以用仿真器调试运行确定。

汇编语言延时程序,延时10毫秒的延时程序是什么?
首先明确机器执行一条指令耗时大概是1us那么延时10ms的程序如下:MOV AX,50L1:MOV BX,100L2:DEC BX JNZ L2DEC AXJNZ L1执行完之后时间大约为10ms多一点 根据具体问题类型,进行步骤拆解/原因原理分析/内容拓展等。具体步骤如下:/导致这种情况的原因主要是??

汇编延时程序
采用12M晶振,用51芯片处理。DELAY: MOV R7,#250;D1:MOV R6,#250;D2:DJNZ R6 ,D2;DJNZ R7,D1;RET 以上是一段延时0.125秒的程序。它计算的原理是:这段程序最终执行了250*250次,而DJNZ指令执行需要2个机器周期,一个机器周期需要1微秒的时间,所以以上延时程序就是250*250*2=0....

用c语言为单片机STC12C2052写一段简单的延时程序!
HERE:JBC TF0,NEXT1 SJMP HERE NEXT1:MOV TL0,#0B0H MOV TH0,#3CH DJNZ R7,HERE CLR TR0 ;定时器要软件清零 SETB EX0 RET C语言延时程序:10ms延时子程序(12MHZ)void delay10ms(void){ unsigned char i,j,k;for(i=5;i>0;i--)for(j=4;j>0;j--)f...

段干欧19618746085问: 怎么在C语言中使时间暂停几毫秒或者微秒 -
衢江区齐洛回答: 可以用usleep函数 单位是微妙 比如 usleep(1000); 这个是暂停一毫秒. usleep(10); 暂停10微秒

段干欧19618746085问: c语言的延迟函数 编写 -
衢江区齐洛回答: 延迟函数里执行的都是空语句,也就是说循环执行空语句来达到延迟的目的. 每执行一条语句,即使是空语句都要耗费电脑一些处理时间的,就是因为这个,在延迟函数里写一些无关紧要的东西,用来浪费电脑处理时间,从而延迟.

段干欧19618746085问: 怎么样用C语言实现精确延时 -
衢江区齐洛回答: 要自己构造, 步骤1,检查单片机的说明书,知道执行一条指令要多少时钟周期, 2, 12M的时钟频率就是一个始终周期83.3ns, 3,你要1毫秒,就是要延迟12000个时钟周期, 做一个For循环,在里面做4000次加法运算就可以了(假设你的单片机一个指令用一个时钟)

段干欧19618746085问: C语言中用什么函数来延时 谢谢 -
衢江区齐洛回答: 头文件里加上#include 函数是 ::Sleep(),注意前面有俩冒号,s大写,括号里填数字,表示毫秒

段干欧19618746085问: 求个c语言小代码,很简单的分钟倒计时程序 -
衢江区齐洛回答: //有很多种方法,我这里用的是其中一种:#include <stdio.h>#include <Windows.h> int main(void) { int minutes; printf("请输入分钟数:\n"); scanf("minutes"); for (; minutes >= 0; --minutes) { for (int i = 60; i >= 0; --i) { printf("还剩 %d 分钟 ...

段干欧19618746085问: c语言延时一秒响铃代码 -
衢江区齐洛回答: #include <stdio.h>#include <stdlib.h> int main() { Sleep(1000); //延迟1秒putchar('\a'); //响铃return 0; }请采纳.

段干欧19618746085问: 用C语言写一个KEILC51的延时1秒程序,急 -
衢江区齐洛回答: keilc51好像也是用C编程, 一般延迟程序就是增加系统负载比如: int i,j; yanchi() {for(i=0;i<1000;i++)for(j=0;j<1000;j++); } 这样就可以达到延迟的目的,具体参数你可以随便设.

段干欧19618746085问: 求 用C语言编的延时程序 多写几种 交流用 谢谢 -
衢江区齐洛回答: void delay() {unsigned char i,j;for(i=5;i>0;i--)for(j=14;j>0;j--); }void delay() {unsigned char i,j;for(i=0;i<5;i++)for(j=0;j<14;j++); }void delay1(int i) {while(i--); }

段干欧19618746085问: 标准C如何延时 -
衢江区齐洛回答: delay(time); time 是毫秒

段干欧19618746085问: C语言中怎么产生一个微秒级别的时间变量,非常感谢!! -
衢江区齐洛回答: BOOL QueryPerformanceCounter( LARGE_INTEGER * lpPerformanceCount );BOOL QueryPerformanceFrequency ( LARGE_INTEGER * lpFrequency );


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