新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 使用定時(shí)器實(shí)現(xiàn)長(zhǎng)時(shí)間的延時(shí)

使用定時(shí)器實(shí)現(xiàn)長(zhǎng)時(shí)間的延時(shí)

作者: 時(shí)間:2011-02-25 來(lái)源:網(wǎng)絡(luò) 收藏

;知識(shí)要點(diǎn):計(jì)數(shù)器的應(yīng)用

;把定時(shí)器設(shè)置為50ms, 另外設(shè)置兩個(gè)軟件計(jì)數(shù)器20,60 總時(shí)間

;為50ms*20*60=60000ms=1分鐘

;t1為方式1則m1m0=01h,使用定時(shí)器c/t=0 gate=0 TMOD=10H

;方式1為16位計(jì)數(shù)器,一共65535, 減去50000等于15536則計(jì)數(shù)器初值為3cb0h

ORG 0000H;程序開始

LJMP MAIN

ORG 030H

MAIN: MOV 30H,#20;30h,31h分別置常數(shù)20,60

MOV 31H,#60;

MOV TMOD,#10H;定時(shí)器方式1

MOV TH1,#03CH;置定時(shí)器初值

MOV TL1,#0B0H

MOV IE,#00H;禁止中斷

SETB TR1;起動(dòng)定時(shí)器

LOOP: JBC TF1,LOOP1;查詢定時(shí)器時(shí)間到轉(zhuǎn)loop1

AJMP LOOP

LOOP1: MOV TH1,#03CH;重置定時(shí)器

MOV TL1,#0B0H

DJNZ 30H,LOOP;定時(shí)是否到了20次

MOV 30H,#20

DJNZ 31H,LOOP;定時(shí)是否到了60次

MOV 31H,#60

CPL P1.0;取反p1.0

AJMP LOOP

END

程序在倚天版運(yùn)行的狀態(tài):程序運(yùn)行后全滅

程序在倚天版運(yùn)行的狀態(tài):1分鐘后p10點(diǎn)亮, 實(shí)現(xiàn)長(zhǎng)時(shí)間的延時(shí)

51單片機(jī)相關(guān)文章:51單片機(jī)教程


塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉