- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
99秒表程序--基于单片机at89c51
/******99 秒表*******/、
/**---------------------------------必威体育精装版文件信息---------------------------------------------------
功能:99 秒表
作 者:
单 位:
时 间:
描 述:晶振11.0952MHz;数码管采用共阴;
**-------------------------------------------------------------------------------------------------
******************************************************************************/
#includereg52.h
#define uint unsigned int
#define uchar unsigned char
uchar code table_duanma[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//数码管显示0~9;
/******单片机接口***********/
sbit key=P3^5;//按键
#define duanma P0//段码
#define weima P2//位码
/******全局变量************/
uchar miao=0;//秒
uchar flag=0;//秒中间变量
uchar keynum=0;//按键次数
bit key_flag=0;//按键标志
/*****中断初始化**********/
void InitTimer0()
{
TMOD = 0x01;//工作方式
TH0 = 0x4C;//高8 位
TL0 = 0x00;//低8 位
EA = 1;//总中断
ET0 = 1;//允许定时器0 中断
TR0 = 0;//启动定时器0
}
/**********延时函数**********
功能:延时若干ms
入口参数:t
出口参数:无
*****************************/
void delay_ms(uint t)
{
uint a,b,c;
for(c=t;c0;c--)
{
for(b=102;b0;b--)
for(a=3;a0;a--);
}
}
/********秒显示函数***
功能:实现秒的显示
入口参数:无
出口参数:无
*****************************/
void miao_display()
{
if(flag=20)
{
flag=0;//清零
miao++;//秒累加
if(miao99) miao=0;//秒大于99 清零
}
weima=0xfe;//选择第1 位
duanma=table_duanma[miao%10];
delay_ms(1);//延时1ms
weima=0xfd;//选择第2 位
duanma=table_duanma[miao/10];
delay_ms(1);//延时1ms
}
/**********按键扫描及处理函数**********
功能:实现按键输入及处理
入口参数:无
出口参数:无
*****************************/
void scankey()
{
if((key==0)(key_flag==0))//判断是否有按键按键且按键标志是否为0
{
key_flag=1;//按键标志为1
}
if((key==1)(key_flag==1))//等待按键释放
{
key_flag=0;//按键标志清零
keynum++;//按键次数累加
if(keynum3)keynum=1;//按键次数大于3 置1
switch(keynum)
{
case 1: TR0 = 1;//启动定时器0
break;
case 2: TR0 = 0;//关闭定时器0
break;
case 3: miao=0;//秒清零
break;
default:break;//不满足条件返回
}
}
}
/*******主函数**************
功能:
入口参数:无
出口参数:无
*****************************/
void main(void)
{
InitTimer0();//定时器初始化
while(1)
{
scankey();//按键扫描
miao_display();//秒显示
}
}
/**********定时器0 中断函数********
功能:实现秒中间变量flag 的累加
入口参数:无
出口参数:无
***************
您可能关注的文档
- 沟通技巧-liukejun.doc
- 牛津初中英语高一unit3welcome.ppt
- 代数式化简与求值.doc
- 2009年“师德师风建设活动月”总结.doc
- 高考圆锥曲线专题.doc
- 基于VB的上位机程序设计说明.doc
- 工程软件实习说明书.doc
- 扎实推进代表小组活动应创新五种方式.doc
- 新目标8BUnit4-4.doc
- 2.2三相可控整流电路.doc
- 2021年辽宁省朝阳市公开招聘综合应急救援人员冲刺三卷含答案.docx
- 2024年陕西省靖边县《一级注册建筑师之建筑物理与建筑设备》考试通关秘籍题库答案下载.docx
- 2024年陕西省靖边县《一级注册建筑师之建筑物理与建筑设备》考试必背100题题库(网校专用).docx
- 2024年陕西省靖边县《执业药师之西药学专业一》资格考试题库带答案.docx
- 2021年辽宁省辽阳市公开招聘综合应急救援人员测试二卷含答案.docx
- 2024年陕西省靖边县《一级注册建筑师之建筑物理与建筑设备》考试必背100题真题(含答案).docx
- 矿山开采转让协议5篇.docx
- 2024年陕西省靖边县《一级注册建筑师之建筑物理与建筑设备》资格考试必背100题完整题库【夺冠】.docx
- 2022年贵州省黔西南自治州公开招聘综合应急救援人员精选提分卷二含答案.docx
- 2024年陕西省靖边县《一级注册建筑师之建筑物理与建筑设备》考试必背100题内部题库【巩固】.docx
文档评论(0)