📄 1secondtiming.txt
字号:
/******************************************************************
****/
#include <reg52.h> //头文件
#include <intrins.h> //头文件
#define uint unsigned int //宏定义
#define uchar unsigned char //宏定义
uchar temp,tt; //定义变量temp,定义变量tt
void main()//进入主程序
{
temp=0xfe; //赋值
P0=temp; //赋值
tt=0; //赋值
EA=1; //开主中断
TMOD=0x01;//设置定时器0为工作方式1
TH0=(65536-50000)/256; //高8位装入65536-50000对256求莫的数值
TL0=(65536-50000)%256; //低8位装入65536-50000对256求余的数值
ET0=1;//开中断0
TR0=1;//运行控制位,为1时T0开始工作,为0时T0停止工作
while (1)
{
if(tt==20)//如果tt=20也就是进入了20次中断,那么temp左移一位。
{
tt=0; //赋值
temp=_crol_(temp,1); /*_crol_是循环左移,_cror_是循环右移,
括号内第一个参数temp是要移动的变量。,后面是要移动几位*/
P0=temp; //赋值
}
}
}
//中断服务程序//定时器服务程序
void exter0() interrupt 1 //和中断写法一样,最后的标号不同。1和3是计数器/定时器;0和2是外部中断。
{
TH0=(65536-50000)/256;//高8位装入65536-50000对256求莫的数值
TL0=(65536-50000)%256;//低8位装入65536-50000对256求余的数值
tt++;//定时器计时到了就给tt+1
}
/****************当TH0和TL0送入
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -