📄 dishiqi1.c
字号:
/******************************************************************************************
*文件: MOD1.C
*功能: 定时器0 工作在模式1 状态演示实验。
*******************************************************************************************/
#include "reg931.h"
sbit led1 = P2^4; //定义LED 控制端口
sbit led2 = P2^6;
sbit led3 = P2^7;
unsigned int counter; //存放定时时钟计数值
unsigned int data1;
unsigned int data2;
void main (void)
{
SP=0x60;
P2M1=0x00; //端口设置
P2M2=0x00;
counter=6200; //定时时钟计数值赋初值
data1= 1000;
data2= 100;
TAMOD=0x00;
TMOD=0x01; //定时器0 设置为模式1
TH0=0x6f; //赋定时初值,定时10ms
TL0=0xff;
TR0=1; //打开定时器0
while(1)
{
if(TF0) //定时器溢出,标志位置位
{
TF0=0; //清除标志
TR0=0;
TH0=0x6f; //重新赋定时值
TL0=0xff;
counter--; //计数值减1
data1--;
data2--;
if(!data2)
{
data2=100;
led3=~led3;
}
if(!data1)
{
data1=1000;
led2=~led2;
}
if(!counter) //时间到了60s
{
counter=6200; //再次给定时时钟计数值赋初值
led1=~led1; //取反LED1 指示灯的状态
}
TR0=1; //打开定时器0
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -