55问答网
所有问题
当前搜索:
单片机C语言延时程序
用
c语言
编写,
单片机
LED灯并用定时器
延时
,每隔0.5秒使LED依次点亮_百度知...
答:
include "reg51.h" sfr AUXR = 0x8e; //如果是用的AT89C51,把这句删了sbit led=P1^0; //定义LED为P10,可以改为其他IOunsigned char jishi; void Timer0Init(void)//50毫秒@12.000MHz{ AUXR &= 0x7F;//定时器时钟12T模式 TMOD &= 0xF0;//设置定时器模式 TL0 ...
单片机C语言延时程序
怎么停止?
答:
在循环里判断是否满足跳出的条件,满足则跳出循环,不满足就继续
延时
直到延时结束。具体的条件要有
程序
的要求来,比如说某个IO口的电平的状态。sbit state=P1^7;delay(uint){ uint x,y;for(x=1000;x>0;x--)for(y=1200;y>0;y--){ if(state==1)return ;//当p1.7口为高时跳出循环 } ...
用
C语言
怎么在
单片机
AT89C51上编写一个
延时
10秒的
程序
?
答:
1、十秒对于
单片机
来说是很长很长的时间了,单片机十秒的时间什么事都不能做,只在跑这
延时程序
,那是什么概念,用中断的话,单片机正常运行其他程序,只是时间到了才过来处理延时以后的程序,效率不知道高了多少 。2、例程://假设晶振12MHZ include "reg51.h"unsigned int YSJS=0;void main(void...
单片机C语言延时
需要注意的问题
答:
标准的
C语言
中没有空语句。但在
单片机
的C语言编程中,经常需要用几个空指令产生短
延时
的效果。这在汇编语言中很容易实现,写几个nop就行了。在keil C51中,直接调用库函数:include // 声明了void _nop_(void);_nop_(); // 产生一条NOP指令 作用:对于延时很短的,要求在us级的,采用“_nop_...
单片机
中延迟10s
C语言程序
可以这样写吗,如果不可以哪儿错了?_百度知 ...
答:
这样倒是也行啊。。一个是你要按照你的时钟周期算好循环次数,在一个for循环嵌套也可以 不过你
单片机
就不用干别的了。。光在这循环进行
延时
了。。很浪费MCU的说 一般超过10ms都建议用定时器中断。开个定时器中断设置比如设定定时器0,计数方式1,即16位定时器。如果是12MHZ外部晶振的话,1个时钟是...
51
单片机c语言延时
函数 Void delay 1ms(unsigned int ms){un
答:
C程序
中可使用不同类型的变量来进行
延时
设计。经实验测试,使用unsigned char类型具有比unsigned int更优化的代码,在使用时应该使用unsigned char作为延时变量。 以某晶振为12MHz的
单片机
为例,晶振为12MHz即一个机器周期为1us。void delay_ms(unsigned int ms_number) // ms延时函数 (AT89C51 @ 11....
请教51
单片机C语言
的步进电机
延时程序
答:
延时
函数很常见:Delay1mS(unsigned int tt) //延时1ms { unsigned char i;while(tt--) for(i = 113; i > 0; i--);} 反复多次调用即可。但是,用软件延时,观察起来,就像死机一样,经常会误事的。
51
单片机
求10微秒的
延时
函数
C语言
(晶振11.0592MHz)
答:
MOV TH0,#3CH DJNZ R7,HERE CLR TR0 ;定时器要软件清零 SETB EX0 RET 3、
C语言延时程序
:10ms延时子程序(12MHZ)void delay10ms(void){ unsigned char i,j,k;for(i=5;i>0;i--)for(j=4;j>0;j--)for(k=248;k>0;k--);} 1s延时子程序(12MHZ)void delay1s(void)...
单片机C语言
编程中,编一个
延时
约1s的语句
答:
双重循环,共有循环 1000 × 1000 = 一百万遍。每一遍,如果是1us,才能是
延时
约1s。但是,晶振是12MHz,一条汇编的指令就至少是1us,
C语言
的语句,就要更多。在编写延时函数之前,首先确认一下系统对晶振的分频系数,从而确定每个单周期指令执行所需的时间,一般的
单片机
都将指令执行周期设置为1us,...
89C51
单片机
,假定单片机晶振频率6MHz,试编写
延时
2ms的
程序
答:
单片机
晶振频率6MHz的时钟周期是0.166uS,89C51的指令周期是12个时钟周期,约等于2uS。以下是例程:汇编 DELAY: MOV Rn,#200 循环200次 *10uS = 2mS LOOP: NOP 一个指令周期 NOP NOP DJNZ Rn,LOOP 二个指令周期,一次循环总共5个指令周期耗时10uS RET
C语言
#define NOP _nop_()...
<涓婁竴椤
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜