中断方式输出0.1ms方波.c

来自「AT89S52单片机程序50例(00-50)」· C语言 代码 · 共 28 行

C
28
字号
//输出0.1ms方波
//使用中断方式,fosc=12MHz,要求P1.0输出T=0.1ms的方波

#include<reg52.h>

sbit WAVE=P1^0;

void timer0() interrupt 1 using 1
{
	WAVE=!WAVE;
    TH0=0xff;
    TL0=0xce;
}

void main()
{
	TMOD=0X01;  //定时计数器T0工作在定时器方式1,16位计数器
    TH0=0xff;  //计数初值为0FFCEH,即
    TL0=0xce;
    WAVE=0;
    EA=1;  //CPU开总中断
    ET0=1;  //T0开溢出中断
    TR0=1;  //启动T0
    do
    {
    }
    while(1);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?