/*------------------------------------------
功能:使用51单片机内部定时器0,从P1^0口输出
周期位2ms的方波
Author: Zhang Kaizhou
Date: 2019-5-14 22:44:19
------------------------------------------*/
#include <reg52.h>
sbit state = P1^0;
void main()
{
TMOD = 0x01; // 设置定时器工作方式寄存器,使用定时器0,非门控方式启动,工作于方式1(16位定时器)
TR0 = 1; // 启动定时器0
while(1)
{
TH0 = (65536 - 1000) / 256; // 设置定时器初值
TL0 = (65536 - 1000) % 256;
while(!TF0); // 当定时器0定时时间到时,由硬件自动将TF0置位,并由此标志向CPU请求中断,CPU响应中断后,TF0自动清零
state = !state; // P1^0口状态翻转
TF0 = 0; // 将定时器0溢出中断
}
}
51单片机内部定时器的使用
最新推荐文章于 2023-11-30 01:27:58 发布