導航:首頁 > 編程語言 > 定時編程

定時編程

發布時間: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固件下載完了怎麼解壓 瀏覽:1005
命令zpa 瀏覽:288
python編譯器小程序 瀏覽:946
在app上看視頻怎麼光線調暗 瀏覽:542
可以中文解壓的解壓軟體 瀏覽:595
安卓卸載組件應用怎麼安裝 瀏覽:915
使用面向對象編程的方式 瀏覽:342
程序員項目經理的年終總結範文 瀏覽:932
內衣的加密設計用來幹嘛的 瀏覽:435
淮安數據加密 瀏覽:295
魔高一丈指標源碼 瀏覽:984
松下php研究所 瀏覽:171
c回調java 瀏覽:403
夢幻端游長安地圖互通源碼 瀏覽:747
電腦本地文件如何上傳伺服器 瀏覽:315