99问答网
所有问题
找一个单片机汇编语言编写的延时1ms的子程序
80c51,12m晶振
举报该问题
推荐答案 推荐于2017-09-19
多简单的小程序呀:
TIME1MS:
MOV R6, #2
TIME1:
;延时498uS
MOV R7, #248
DJNZ R7, $ ;R7的为0时,程序向下运行,否则继续减
;
DJNZ R6, TIME1 ;加上此命令后,每个小周期时间为500uS
;运行两周为1MS,再加上最前面的MOV R6那条指令,就是1.002MS
RET
此程序实现的是1.002MS的定时,当然这当中不算主程序调用此延时程序时现场保护的时间,即压栈和出栈的时间
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/We7B7tXOW.html
其他回答
第1个回答 2019-02-16
void
delay(unsigned
int
x)
//延时
x
ms
{
unsigned
int
i,j;
for(i=x;i>0;i--)
for(j=110;j>0;j--);
}
延时1ms
即为使x=1;
这程序延时约1ms(x=1时用keil测出来约
0.96831272ms,近似1ms),用c语言很难做到准确的1ms。注意晶振为11.0592mhz的时候用~
第2个回答 2010-04-11
老兄,你的单片机是哪个型号的,晶振是多少呀?
相似回答
...在51系列
单片机
系统中,
编写一个延时1ms的子程序
。谢谢。。
答:
2、然后添加c文件,接下来输入
代码
,先输入一个头文件命令。3、然后,进行宏定义,代码如图所示。4、然后声明P1口,如下图所示。5、最后,将延时语句全部添加进去,代码按照图中所示的直接敲入即可。6、最后,点击编译,生成HEX文件就可以了,这样51
单片机延时
语句就完成了。
单片机编写一个
能
延时
1秒
的子程序
答:
所以 R5=07H+1=08H ; R6=0A1H+1=0A2H ; R7=20Hloop: DJNZ R7,$ ;
延时
时间≈2×[(R5-1)×256+R6-1]×256+R7 DJNZ R6,loop ; 当R5、R6等于0,相当于256参与运算 DJNZ R5,loop ; 当R5、R6等于0,相当于256参与运算 RET ...
单片机
1秒钟定时
汇编语言
怎么编?
答:
DELAY: MOV R3,#10;
延时子程序
,延时1秒 D1: MOV R4,#200 D2: MOV R5,#250 D3: DJNZ R5,D3 DJNZ R4,D2 DJNZ R3,D1 RET END 第二种方法:用定时器的方法实现 ———MOV R1,#20 ———DLY: MOV TMOD,#00000001B;延时子程序,设定定时器的工作方式 D1: SETB ...
...
写一个
大概
延时1MS的子程序
,应该怎样写?(用C
语言
)
答:
void delay(uint n){ uint i,j;for(i=n;i>0;i--){ for(j=110;j>0;j--);} } 当n=1是
延时
大约是
1ms
,就是说n等于都少就延时多少ms,当然n的值不超过uint的最大值。头文件下请定义宏 define uchar unsigned char define uint unsigned int ...
求
一个
51
单片机延时
1秒的
程序
,用
汇编
!!
答:
DEL1S:MOV R7,#10 D1: MOV R6,#200 D2: MOV R5,#250 DJNZ R5,DJNZ R6,D2 DJNZ R7,D1 RET 说明:1、如果不使用R5、R6、R7可以用别的单元替换,比如换成30H、31H、32H等等 2、这个
程序
是12M时钟,如果时钟不同,要修改数值。如6M时钟,要把MOV R7,#10 修改成:MOV R7,#5 ...
用C
语言编写1ms延迟子程序
,不明白for (j=0;j<120;j++),求助大大们_百度...
答:
void delay1ms(int x)//延迟函数开始 { int i,j;for (i=0;i<x;i++) //计数x次,延迟x 1ms for (j=0;j<120;j++); //计数120次,
延迟1ms
} 这是一个for循环嵌套,每执行一次第一个for语句,那么第二个for语句要执行120次 for (j=0;j<120;j++); 就是没执行一次第一个...
单片机
精准
延时汇编语言
答:
如果是用
汇编语言的
话,是可以做到精准
延时的
。当然首先要
有一个
精准的时钟,也即是晶振要准确,比如使用精准的12M晶振12T模式的51
单片机延时
1毫秒,
程序
如下:DELAY
1MS
: MOV R3,#249 ;1 DJNZ R3,$ ;2*249 MOV R3,#249 ;1 DJNZ R3,$ ;2*249 RET ;2延时时间...
单片机
外接12M的晶振,
1ms的
基准
延时
函数用C
语言
怎么写?
答:
void delay1ms(void) //
延时1ms子程序
{ unsigned char i,j;for(i=5;i>0;i--)for(j=98;j>0;j--);} 对应汇编 /*--- 名称:delay1ms 功能:延时1ms 晶振:12MHz 机器周期1us 时间计算:t=2+1+995+2=1000us =1.000ms ---*/ LCALL DELAY1MS ;2us DELAY1MS:MOV R6,#5 ...
设51
单片机
晶振频率为12MHZ,
延时1m的子程序
答:
下面为你写出
1ms的程序
:用的是11.0592M的,你如果真的需要是12M的,那自己直接修改成12M就可以了。调用的时候直接把uinsigned int ms改成1就是1ms.void ConfigTimer0(unsigned int ms){ unsigned long tmp;tmp = 11059200/12;tmp = (tmp * ms)/1000;tmp = 65536 - tmp;tmp = tmp + 18;...
大家正在搜
编写一个延时1ms的子程序
汇编延时1ms的延时子程序
延时1ms的延时子程序
编写延时4ms的子程序
延时1ms的子程序怎么编
汇编语言延迟10秒子程序
汇编语言子程序汇总
汇编语言使用子程序实现排序
汇编语言子程序调用流程图
相关问题
用汇编语言编写一个延时1S的子程序
51单片机,求用汇编语言编写延时1小时的子程序,要精确到秒级...
单片机编写一个能延时1秒的子程序
关于一个单片机汇编语言的延时程序问题
求单片机汇编6ms延时程序和1ms延时程序,谢谢!
求一个1ms的单片机C语言延时程序
单片机中的延时程序怎么定义,如写个1ms的程序,
单片机。用汇编语言编程。 设计一软件延时1s的子程序。设晶振...