如何使用定时器延时1s

@方钟1671:求助:STC 单片机使用定时器 定时1S -
人忠18026534198…… STC 单片机就是51单片机,现在的单片机教材,几乎都讲51单片机的,定时器更是必讲的.只不过,教材上讲的是MCS51单片机,而STC单片机的定时器使用完全一样的. 不论哪个单片机,都不能直接定时1S,可以定时50ms,然后设置中断,对中断计数20次就是1秒了.这种程序,在里,到处都是,随便搜索下,就可能搜索到无数个.

@方钟1671:AT89S52怎么实现用定时器2定时一秒钟来实现功能? -
人忠18026534198…… AT89S52跟AT89S51一样,12MHz晶振条件下,定时器的一次最长定时时间大概是65ms,因此无法一次完成1s的定时,必须加上循环控制. 你现在用T2定时器定时1s,程序写法与使用T0,T1类似.定时周期可以设置成50ms(初值,3CB0),然后进行20个循环. 只是T2定时器有自动重装载功能,你在定时器中断服务程序里不需要把初值重新送TH2和TL2,但定时器的中断标志必须手动清零,启动也需要手动控制.相比T0,T1,可以节约1个机器周期的样子,如果不做补偿T2定时的精度会比T0、T1稍微高一点.

@方钟1671:利用定时器T0的工作方式1实现1秒钟延时程序(单片机) -
人忠18026534198…… #include <reg51.h> #define uchar unsigned char sbit LED=P1^0; uchar time; void initT0( ) { TMOD = 0x01; //定时器0,工作方式1 TH0 = (65536-50000)/256; TL0 = (65536-50000)%256; //50ms中断一次 EA = 1; ET0 = 1; TR0 = 1; } void main(...

@方钟1671:单片机流水灯实验.用定时器0,方式0实现前五个灯的1s延时.怎么弄,谢谢 -
人忠18026534198…… void timer0() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; aa++; if(aa==20) { aa=0; P0=0x07; } }

@方钟1671:怎么样才能实现一秒的延迟,怎么才能用计时器实现一秒计时中断? -
人忠18026534198…… #define uchar unsigned char //定义一下方便使用#define uint unsigned int#define ulong unsigned long#include <reg52.h> //包括一个52标准内核的头文件,我常用这种单片机 char code dx516[3] _at_ 0x003b;//这是为了仿真设置的//精确定时1秒...

@方钟1671:AT89C51单片机延时1秒程序怎么写??? -
人忠18026534198…… void DELAY(int z)//延时zms { int x,y; for(x = z;x > 0;x--) for(y = 110;y > 0;y--); }DELAY(1000); 就可以延时1S 但是有很小的误差 精确的只能用定时器了

@方钟1671:如何设置1秒钟的延时子程序 -
人忠18026534198…… 用定时器中断,50MS一中断,20次就是1秒.

@方钟1671:1S延时子程序设计思路 -
人忠18026534198…… 用定时器做,同时在定时器中计数,比如10ms中断一次,那么计数达到100次就行了.思路:1S的延时比较长了,单片机还要干其他的工作,那么就不能用循环等待方式,定时器是个比较好的选择,定时器的一个中断没有那么长的时间,就需要定时累加的办法.

@方钟1671:单片机51软件延时1s 晶振6M的编程 -
人忠18026534198…… 通过调用这个子程序就可以实现 DEL1S: MOV R1,#10 DEL1: MOV R2,#100 DEL2: MOV R3,#250 DEL3: DJNZ R3,DEL3 ;2*2*250*100*10=1000000us DJNZ R2,DEL2 DJNZ R1,DEL1 RET 没有做具体计算,要准确的定时1s的话可以稍微改动一下R1R2R3的值.6M晶振则机器周期为2us,一条指令执行为2个机器周期,由此得出其延时时间 最好的方式是使用定时器中断来做延时,更精确

@方钟1671:MCS - 51单片机的编程题:已知系统晶振频率为12MHZ,采用定时器T0的方式1,请编程实现1s的延时. -
人忠18026534198…… void timer0() interrupt 1 { uchar count; TH0 = (65536-50000)/256; TL0 = (65536-50000)%256; count++; if(count == 20) { count = 0; sec++; if(sec == 100) { sec = 0; } } }

相关推荐

  • 电源定时器怎么调
  • 单片机延时1s方法
  • 延时1ms的延时子程序
  • 10秒的延时需要拍多久
  • 延时器怎么设置延时
  • 万能定时器使用教程
  • 软件延时和定时器延时
  • 保持型延时接通定时器
  • 延时开关正确接线图
  • 51单片机定时器1s延时
  • 接通延时定时器怎么用
  • 如何用555做5秒定时器
  • 51单片机精确延时1秒
  • 定时器开关设置步骤
  • 舒服家定时器使用说明
  • 长延时和短延时设定
  • 瞬时闭合延时断开图示
  • 汇编定时器延时1秒程序
  • delay延时1s程序
  • 保持型接通延时定时器
  • 用定时器实现1s的延时
  • 延时5秒启动电路图
  • c51利用定时器延时c代码
  • 延时一秒的延时程序怎么写
  • 51单片机delay延时1秒
  • 1s延时函数怎么写
  • 本文由网友投稿,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
    若有什么问题请联系我们
    2024© 客安网