单片机2秒延时子程序

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

跪求单片机c51用汇编语言写的程序,功能为:8只发光二极管依次点亮,从...
DELAY: MOV R5,#250 ; 延时子程序 6.000 M 晶振 约 0.5 秒D1: MOV R6,#250D2: DJNZ R6,$ DJNZ R5,D1 RET 本回答由提问者推荐 举报| 答案纠错 | 评论 0 6 GUEL86 采纳率:60% 来自:芝麻团 擅长: 系统软件 汇编语言 家电 生活常识 其他社会话题 ...

用单片机对步进电机进行控制
MOV P1,A INC R1 LCALL DELAY DJNZ R0,LOOP AJMP LOOP1DELAY: MOV R7,#1EH ;延时子程序LOOP2: MOV R6,#0F9H DJNZ R6,$ DJNZ R7,LOOP2 RETTABLE: DB 10H DB 20H DB 40H DB 80H END 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 更多回答(1) 其他...

用单片机设计一个时钟,可显示时和分,可以调时间,也要有闹钟功能,要有设...
include<reg51.h> 主函数 unsigned char tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};定义0-9数组 unsigned int tmp;定义变量 void delay(unsigned int xms)定义延时函数 {unsigned int j,i;for(i=0;i<xms;i++)for(j=0;j<100;j++);} void disp()定义子...

求PIC 8位单片机 汇编指令比较全的,详细点的
11 子程序调用指令(Subroutine Call) 指令格式:CALL k;k为立即地址 说明:子程序调用,不同型号芯片的实现方法不尽相同,其共同点是首先将返回地址((PC)+1)压栈保护,再转入所调用的子程序入口地址执行(与MCS-51指令功能相似)。 指令格式模式:HERE    CALL     DELAY;调用延时子程序 … DEL...

单片机指令
6.已知fosc=6MHZ,求下面延时子程序的延时时间。DELAY: MOV R6,#10 ;MOV R7,#250H ;D2: DJNZ R7,D2 ; 250*2机周*1US=0.5MS D1: DJNZ R6,D1 ; 0.5*10=5MS RET ;实际延时周期为【(500+2+1)*10+2+1】机周*1us\/机周=5033us 四、程序设计题 1.使累加...

单片机求编写程序,C51
编制1秒延时子程序,由主程序调用。a、T0工作在定时方式1时,控制字TMOD配置: M1M0=01,GATE=0,C\/ =0,可取方式控制字为01H;b、计算计数初值X:晶振为12 MHz,所以机器周期Tcy为1 。N=t\/ Tcy =20×10-3\/1×10-6=20000X=216-N=65536-20000=45536=4E20H 即应将4EH送入TH1中,20H送入TL1中。 c、...

高精度的恒温控制PID程序,8位MCU用C语言
延时子程序,延时时间以12M晶振为准,延时时间为30us×time ***\/ void delay(unsigned char time) { unsigned char m,n; for(n=0;n<time;n++) for(m=0;m<2;m++){} } \/*** 写一位数据子程序 ***

三菱PLC CALL调用子程序的使用方法
连接时使用呼叫。调用P1后跳过主程序,先执行P1子程序,调用后返回主程序。P1作为指针存在。如果调用未接通,则不执行调用,直接执行主程序。调用程序可以嵌套,见下图。一个子例程可以调用另一个子例程。如图所示:

80c51编程,用mcs-51指令实现
DJNZ data, rel ; (Rn)-1→(Rn),(Rn)≠0,(PC)+ 2 + rel→(PC)直接地址单元中的内容减1不等于0,则转移到偏移量所指向的地址,否则程序往下执行 [3]. 子程序调用指令(1条) 子程序是为了便于程序编写,减少那些需反复执行的程序占用多余的地址空间而引入的程序分支,从而有了主程序和子程序的概念,需要...

利用51单片机,4个数码管设计一个计时器,要求在数码管上显示的数据从0开...
共阳数码管中断程序:include<reg52.h> define uint unsigned int define uchar unsigned char uchar code table[]= { 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x83,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};uint num,a;uchar bai,shi,ge;void init();void delay(uint);void ...

欧阳通13021558603问: 单片机延时0,2秒汇编程序, -
临邑县维康回答: R2 倍数 12mhz MOV R2,#20 ; 0.2sDELAY10MS: ;10ms START: MOV R7,#01HDL1: MOV R6,#0DEHDL0: MOV R5,#15H DJNZ R5,$ DJNZ R6,DL0 DJNZ R7,DL1 DJNZ R2,START

欧阳通13021558603问: 任意型号单片机,延迟1或2秒怎么写?12M,24M怎么算?for后面怎么写.要过程不要结果.
临邑县维康回答: 一般先写一个延时几个毫秒的子程序,很简单.void delay( int ms ) { while( ms-- ) { int i = 延时常数; do { _nop_(); } while( --i ); } } 要延时一秒钟,就是1000ms,delay( 1000 ); 几个注意事项,1、延时程序没有关中断,所以中断程序会影响定时精度.2、延时常数可以用软仿真程序实验确定,需要根据不同的单片机、晶振频率调整延时常数.3、想要适用任意型号单片机,内层循环最好加一句空操作,通常这可以阻止编译时优化程序.

欧阳通13021558603问: 单片机原理与应用 编写延时2min的延时子程序 -
临邑县维康回答: 编个子程序(函数)延时1秒,然后调用它120次.1秒的延时,看你使用的晶振,计算每条指令的时间,反复执行空操作.

欧阳通13021558603问: 单片机如何编写延时2min的延时子程序??帮帮忙吧!我是初学者,急需此答案.谢谢了 -
临邑县维康回答: 2min?为什么这几天这么多都在问这么久的延时,不知道你为什么要这么长延时,如果只是单纯的2min延时别的什么都不做的话那一般的延时函数是这样的(单片机晶振12M情况下,12T周期): void Delay_100MS(unsigned int x) {unsigned int a,b;for(a = x; a > 0; a--)for(b = 11000; b > 0;b--); } 你只需要用Delay_MS(1200);就可以,但是这么久的延时是很不科学的,这个思路也很不可取.要2min的时间可以用定时器,这样既准确又不会影响主程序的运行.祝成功~

欧阳通13021558603问: 单片机程序问题 写了个单片机UART控制继电器的程序,现在想要在判断前先延时2秒,之后再执行判断, -
临邑县维康回答: 既然你都说了判断前先延时2S,那么在判断前加一个延时2S的子程序就可以了.

欧阳通13021558603问: 帮忙看看 右移延时两秒 单片机程序 -
临邑县维康回答: int i重复定义了.把#define下面一行的int i;去掉.然后把main前面加void,delayms前面加void.

欧阳通13021558603问: 51单片机中的汇编代码延时有点搞不清楚,请详细解释下子这个延时子程序,谢谢啦~ -
临邑县维康回答: 程序在执行指令的时候是要占用时间的,DJNZ为双字节指令,晶振为12MHZ的单片机执行这一条指令为24个震荡周期,也就是2微秒,通过不断让它循环来达到延时的目的.

欧阳通13021558603问: 单片机延时程序的延时时间怎么算的? -
临邑县维康回答: 单片机的延时程序通过执行指令来达到延时效果,这个时间等于执行的指令需要的时间,而一个指令需要的时间叫做指令周期,这个时间等于若干个机器周期. 扩展资料: 1丶指令周期,是每种运算需要的时间,如加法、逻辑等,是每一步进行这种指令运算需要的时间,是机器周期的整数倍,这种周期不定. 2丶51单片机12M晶振,晶振周期1/12微妙,一个机器周期包含12个晶振周期,所以12M晶振时机器周期=12x(1/12)微妙=1微妙. 3丶1个毫秒延时子程序如下: void delay1ms(uint ms) { uint i,j; for(i=0;i<ms;i++) { for(j=0;j<110;j++); } }

欧阳通13021558603问: 单片机的朋友请进!请问,最简单的延时程序是怎么计算的? -
临邑县维康回答: 精确计算如下:DELAY: MOV R5,#20 ---1T D1: MOV R6,#20--1T D2: MOV R7,#248 -1T DJNZ R7,$ ----2T,(2) * 248 = 496 DJNZ R6,D2----2T,(1 + 496 + 2) * 20 = 9980 DJNZ R5,D1----2T,(1 + 9980 + 2) * 20 = 199660 RET-------2T, 1 + 199660 + 2 = 1996603 总共,耗用199660 T.时间,关键是要取决于晶振频率.当晶振频率=12MHz,则有 T = 1us.

欧阳通13021558603问: 找一个单片机汇编语言编写的延时1ms的子程序 -
临邑县维康回答: 多简单的小程序呀: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的定时,当然这当中不算主程序调用此延时程序时现场保护的时间,即压栈和出栈的时间


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