标题:
小白白,求详细单片机代码注释
[打印本页]
作者:
chenyuanyi
时间:
2020-4-30 18:56
标题:
小白白,求详细单片机代码注释
#include "std_for_wym.h"
//bit bTime_50Ms = 0;
bit bTime_500Ms = 0;
bit time_1000ms = 0;
//定时器初始化函数
void InitTimer(void)
{
TMOD&=0X0F;
TMOD|=0X10; //定时器0工作于方式1
TH1=0X4C;
TL1=0X00; //50MS
ET1=1; //打开定时器0
TR1=1; //启动定时器0
EA=1; //开总中断
}
unsigned char time_when=0,time_points=0,time_seconds=0;
void Time1(void) interrupt 3
{
static char num1;
TH1=0X4C;
TL1=0X00; //50MS 11.0592MHz
if(++num1 >= 20)
{
num1 = 0;
time_1000ms=1;
time_seconds++;
if (time_seconds==60)
{
time_seconds=0;
time_points++;
if (time_points==60)
{
time_points=0;
time_when++;
if (time_when==23)
{
//TR0 = 0;
}
}
}
}
}
作者:
lzw1997
时间:
2020-4-30 18:56
#include "std_for_wym.h"//头文件
//bit bTime_50Ms = 0;
bit bTime_500Ms = 0;
bit time_1000ms = 0;
//定时器初始化函数
void InitTimer(void)
{
TMOD&=0X0F;//保留T1原先设置,T2不动
TMOD|=0X10; //定时器0工作于方式1
TH1=0X4C;
TL1=0X00; //50MS
ET1=1; //打开定时器0
TR1=1; //启动定时器0
EA=1; //开总中断
}
unsigned char time_when=0,time_points=0,time_seconds=0;//when时钟,points分钟,second是秒钟
void Time1(void) interrupt 3 //T0是定时器/计算器中断 在51里优先级是3
{
static char num1; //num1设置静态,只有第一次进来调用,之后不再调用,根据后面的操作而改变
TH1=0X4C;
TL1=0X00; //50MS 11.0592MHz//初始值还原,从头计时
if(++num1 >= 20) //num1自加,中断进来直到当加到20时进入,否则退出等待下次中断进入
{
num1 = 0;//num1还原
time_1000ms=1;
time_seconds++; //秒钟加
if (time_seconds==60) //中断进来直到当加到加到60进去
{
time_seconds=0;//秒钟归0
time_points++; //分钟加
if (time_points==60) //中断进来直到当加到分钟加到60进去
{
time_points=0;//分钟归0
time_when++; //时钟加
if (time_when==23) //时钟加到23进去
{
//TR0 = 0;//时钟归0
}
}
}
}
}
作者:
kmsj
时间:
2020-4-30 21:45
好像是用中断完成的一个0-24小时0分0秒的计时程序,程序好像不太完整,这么简单的程序有什么好注释的?自己编一个也比这个强,慢慢学会自己编吧。
作者:
chenyuanyi
时间:
2020-4-30 22:03
lzw1997 发表于 2020-4-30 21:34
#include "std_for_wym.h"//头文件
//bit bTime_50Ms = 0;
谢谢大佬
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1