导航:首页 > 编程语言 > 定时编程

定时编程

发布时间:2022-02-25 16:37:32

A. 如何对定时器编程

引入时间函数,设定触发条件,循环归零,if then,,你是才学编程吧?Vb还是C系列

B. 可编程定时器

按 start->help and support-> ask for asst.

那里有

C. 定时器编程

#include<reg52.h>
sbit light=P2^0;
unsigned char flag;
void main()
{
EA=1;
ET0=1;
TMOD=0x01;//定时器工作在1方式
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
TR0=1;
while(1)
{
if(flag==1)
{
light=0;
}
}
}
void timer() interrupt 0
{
unsigned char i,j;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
i++;
if(i==20)
{
i=0;
j++;
if(j==99) flag=1;
}

}

D. 定时与计数器编程实验

将计数值按二进制数在P1口驱动发光二极管显示出来,到15秒后,计数值清零再从0开始计。
--这些发光二极管,是低电平发光,还是高电平发光?

下面的程序,适合于低电平发光:

ORG 0000H
LJMP START
ORG 000BH
DEC A
MOV P1, A
RETI
ORG 0030H
START:
MOV TMOD, #16H
MOV TH0, #255
MOV TL0, #255
SETB TR0
SETB TR1
MOV IE, #82H
LOOP:
MOV A, #255
MOV P1, A
MOV R2, #240
WAIT:
MOV TH1, #HIGH(65536-62500)
MOV TL1, #LOW(65536-62500)
JNB TF1, $
CLR TF1
DJNZ R2, WAIT
SJMP LOOP

END

如果是高电平发光,可以使用下面的程序:
ORG 0000H
LJMP START
ORG 000BH
INC A
MOV P1, A
RETI
ORG 0030H
START:
MOV TMOD, #16H
MOV TH0, #255
MOV TL0, #255
SETB TR0
SETB TR1
MOV IE, #82H
LOOP:
CLR A
MOV P1, A
MOV R2, #240
WAIT:
MOV TH1, #HIGH(65536-62500)
MOV TL1, #LOW(65536-62500)
JNB TF1, $
CLR TF1
DJNZ R2, WAIT
SJMP LOOP

END
希望能解决您的问题。

E. 单片机 定时器编程

应该比较简单吧。比如用at89s52,晶振频率12m
其程序如下:
#include<stdio.h>
#include<reg51.h>

void timer0_init()
{
TMOD=0x01;//方式1
TL0=0xb0;
TH0=0x3c;
TR0=1;
ET0=1;

}

void timer0_ISR(void) interrupt 1
{
TL0=0xb0;
TH0=0x3c;//50ms中断一次
single++;
if(single==20)
{ kk++;
single=0;
}
}
void main()
{
int kk=0;//计数器
int single=0;
timer0_init();

}

显示器用个八位口连接七段led就行了。

F. plc的定时较长时怎样编程

1、定时器串联
2、时钟脉冲配合计数器
3、定时中断配合计数器
4、定时器与计数器配合
5、系统如果带有实时时钟的话,采用读取实时时钟比较。

G. 定时器编程问题

第一题:用查询时间做不到很精确,我仿真过了,每秒钟差0.3s
ORG 0000
AJMP MAIN
ORG 0100
MAIN: MOV SP,#67H ;初始化堆栈指针
CLR P1.0 ;初始化P1.0
ANL TMOD,#0FH ;定时器初始化
ORL TMOD,#10H
AGAIN: MOV R7,#20 ;计数器标志初始化
MOV TH1,#3CH ;定时初始值设置
MOV TL1,#0B0H
SETB TR1 ;启动T1
WAIT: JNB TF1,$ ;判断是否到50MS,没到等待
CLR TF1 ;到了50MS,清溢出位
CJNE R7,#01H,SP1 ;计数器标志为1时,表示到了1S
AJMP OUT1
SP1: DEC R7 ;没到1S,计数器标志自减1
AJMP WAIT
OUT1: CPL P1.0 ;到1S,输出口反向
AJMP AGAIN

第二题:用定时器中断时间精确。低电平,灯亮。左环移
ORG 0000H
AJMP MAIN
ORG 000BH
AJMP TIMER0
ORG 0010H
MAIN: MOV SP,#67 ;初始化堆栈指针
MOV P1,#0FEH ;初始化P1口,低电平灯亮
MOV R7,#20 ;初始化计数器标志
ANL TMOD,#0F0H ;初始化T0控制字
ORL TMOD,#01H
MOV TH0,#3CH ;初始化T0初始值
MOV TL0,#0B0H
SETB EA ;开CPU中断
SETB ET0 ;开T0中断
SETB TR0 ;启动T0
SJMP $ ;等待

TIMER0: MOV TH0,#3CH ;对T0重新赋初值
MOV TL0,#0B0H
CJNE R7,#01H,SP1 ;是否到1S
MOV A,P1 ;到1S,P1口左移
RL A
MOV P1,A
MOV R7,#20 ;计数标志位复位
AJMP OVER
SP1: DEC R7 ;没到1S,计数标志自减1
OVER: RETI ;跳出中断

第三种,程序简单,我就不注释了。对于短程序,定时比较精确;如果程序稍微长点,就不理想了。
ORG 0100H
MAIN: MOV SP,#67
AGAIN: MOV P1,#00H
ACALL DELAY1S
MOV P1,#0FFH
ACALL DELAY1S
AJMP AGAIN

DELAY1S:MOV R7,#10 ;1S子程序
DL2: MOV R6,#200
DL3: MOV R5,#248
NOP
DJNZ R5,$
DJNZ R6,DL3
DJNZ R7,DL2
RET

这上面三个程序是我刚刚编的,有不足之处,还请提出来。
不过,你要真想学单片机,还是要自己去试着编。我帮你编,对你没有什么好处。

H. 定时器/计时器在编程中要(_)(_)(_)等三个步骤。

采纳答案,是瞎扯。

本题是填空题。怎么可能写那么多字!

1.设定方式;
2.设定初始值;
3.启动。

I. 怎么利用单片机定时器实现定时的编程过程

定时器其实就是单片机的一个内部自身时钟的计数器,每一个周期计数器加1,所以使用定时器功能时候先要给定时器付初值,就是先写TH0TL0的值(如下),写完初值后就等着定时器功能的那个计数器记满了数后也就是到了65536后就溢出了,所以一次定时的过程就是65536-初值 之间的数 所代表的时钟周期,计数满了溢出要产生中断就要写一个中断服务子程序,子程序如下void timer0() interrrupt X 中断服务子程序中还要给定时器计数器的TH TL付初值 进行下一次的计数,明白了吧。。楼上的那个没写interrupt 选择定时器工作方式。哎呀,妈呀 累死我了
void main()
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;//定时器0初值,定时50ms 定时多少MS就多少*1000
EA=1;//开启总中断
ET0=1;//定时器0中断允许
TR0=1;//开启定时器0
while(1)
{

}
}
void timer0() interrrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
}

J. 定时器的编程包括什么的设置

如果你说的是51的话 那么就是1、设置计数模式。2、设置计数器初值。3、开计数器。4、开计数器中断。5、开总中断。

阅读全文

与定时编程相关的资料

热点内容
优信二手车解压后过户 浏览:63
Windows常用c编译器 浏览:780
关于改善国家网络安全的行政命令 浏览:835
安卓如何下载网易荒野pc服 浏览:656
javainetaddress 浏览:106
苹果4s固件下载完了怎么解压 浏览:1006
命令zpa 浏览:288
python编译器小程序 浏览:946
在app上看视频怎么光线调暗 浏览:542
可以中文解压的解压软件 浏览:595
安卓卸载组件应用怎么安装 浏览:915
使用面向对象编程的方式 浏览:342
程序员项目经理的年终总结范文 浏览:932
内衣的加密设计用来干嘛的 浏览:435
淮安数据加密 浏览:295
魔高一丈指标源码 浏览:984
松下php研究所 浏览:171
c回调java 浏览:403
梦幻端游长安地图互通源码 浏览:747
电脑本地文件如何上传服务器 浏览:315