我是靠谱客的博主 光亮天空,最近开发中收集的这篇文章主要介绍启动定时器t0的工作指令是_如何利用单片机定时器T0产生定时脉冲,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

利用定时器T0产生定时脉冲。每隔2ms产生宽度为2个机器周期的正脉冲,由P1.0输出此定时序列脉冲信号(设时钟频率为6MHZ)。

答:首先求出定时器T0初值。由于时钟频率为6MHZ,所以,机器周期为2μs。

因为:t=(213-T0初值)′机器周期

所以,当t=2ms时,则:(213-T0初值)′2′10-6=2′10-3

解得:T0初值=7096=11011101 11000B,其中将高8位11011101 B=DDH赋给TH0,低5位11000B=18H赋给TL0。

方法一:

采用查询工作方式,编程如下:

ORG0000H

AJMPMAIN

ORG0100H

MAIN:CLRP1.0

MOVTMOD , #00H;设定T0的工作方式

MOVTH0 , #0DDH;给定时器T0送初值

MOVTL0 , #18H

SETBTR0;启动T0工作

LOOP:JNBTF0 , $;$为当前指令指针地址

CLRTF0

SETBP1.0;产生2μs正脉冲

CLRP1.0

MOVTH0 , #0DDH;重装载TH0和TL0

MOVTL0 , #18H

SJMPLOOP

END

方法二:

采用中断工作方式,编程如下:

ORG0000H

AJMPMAIN

ORG000BH

AJMPT0INT

ORG0100H

MAIN:CLRP1.0

MOVTH0 , #0DDH;给定时器T0送初值

MOVTL0 , #18H

MOVIE , #82H;允许T0中断

SETBTR0;启动T0

SJMP$

中断服务程序:

ORG0300H

T0INT: SETBP1.0

CLRP1.0

MOVTH0 , #0DDH;重装载TH0和TL0

MOVTL0 , #18H

RETI

最后

以上就是光亮天空为你收集整理的启动定时器t0的工作指令是_如何利用单片机定时器T0产生定时脉冲的全部内容,希望文章能够帮你解决启动定时器t0的工作指令是_如何利用单片机定时器T0产生定时脉冲所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部